update to use new hugo theme

This commit is contained in:
Daniel Alejandro Gallegos 2023-06-20 20:49:21 -04:00
parent 8e2b93da27
commit 58d0fdde12
No known key found for this signature in database
GPG key ID: 28F1CF39B0DE3E64
55 changed files with 3041 additions and 166 deletions

131
.gitignore vendored
View file

@ -1,3 +1,134 @@
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
lerna-debug.log*
.pnpm-debug.log*
# Diagnostic reports (https://nodejs.org/api/report.html)
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
# Runtime data
pids
*.pid
*.seed
*.pid.lock
# Directory for instrumented libs generated by jscoverage/JSCover
lib-cov
# Coverage directory used by tools like istanbul
coverage
*.lcov
# nyc test coverage
.nyc_output
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
.grunt
# Bower dependency directory (https://bower.io/)
bower_components
# node-waf configuration
.lock-wscript
# Compiled binary addons (https://nodejs.org/api/addons.html)
build/Release
# Dependency directories
node_modules/
jspm_packages/
# Snowpack dependency directory (https://snowpack.dev/)
web_modules/
# TypeScript cache
*.tsbuildinfo
# Optional npm cache directory
.npm
# Optional eslint cache
.eslintcache
# Optional stylelint cache
.stylelintcache
# Microbundle cache
.rpt2_cache/
.rts2_cache_cjs/
.rts2_cache_es/
.rts2_cache_umd/
# Optional REPL history
.node_repl_history
# Output of 'npm pack'
*.tgz
# Yarn Integrity file
.yarn-integrity
# dotenv environment variable files
.env
.env.development.local
.env.test.local
.env.production.local
.env.local
# parcel-bundler cache (https://parceljs.org/)
.cache
.parcel-cache
# Next.js build output
.next
out
# Nuxt.js build / generate output
.nuxt
dist
# Gatsby files
.cache/
# Comment in the public line in if your project uses Gatsby and not Next.js
# https://nextjs.org/blog/next-9-1#public-directory-support
# public
# vuepress build output
.vuepress/dist
# vuepress v2.x temp and cache directory
.temp
.cache
# Docusaurus cache and generated files
.docusaurus
# Serverless directories
.serverless/
# FuseBox cache
.fusebox/
# DynamoDB Local files
.dynamodb/
# TernJS port file
.tern-port
# Stores VSCode versions used for testing VSCode extensions
.vscode-test
# yarn v2
.yarn/cache
.yarn/unplugged
.yarn/build-state.yml
.yarn/install-state.gz
.pnp.*
# Generated files by hugo # Generated files by hugo
/public/ /public/
/resources/_gen/ /resources/_gen/

View file

View file

@ -1,23 +0,0 @@
$black: #121212
$black-alt: #5d5d5d
$red: #d74c4c
$red-alt: #f086aa
$green: #82e64e
$green-alt: #4d7936
$yellow: #fcf36e
$yellow-alt: #b0aa4d
$blue: #4faaf4
$blue-alt: #2f6692
$magenta: #b87ac2
$magenta-alt: #9575cd
$cyan: #4bb5c1
$cyan-alt: #4bb5c1
$white: #eeeeee
$white-alt: #e2e2e5

View file

@ -1,7 +0,0 @@
.crumbs
li
display: inline
footer
text-align: center
margin: 2vh auto auto auto

View file

@ -1,6 +0,0 @@
@import "base"
@import "layout"
@import "module"
@import "state"
@import "colors"
@import "theme"

View file

View file

@ -1,12 +0,0 @@
body
background: $black
color: $white
a
color: $green
text-decoration: none
&:visited
color: $green
&:hover
color: $green-alt
li
list-style-type: none

View file

@ -1,4 +1,69 @@
baseURL = 'https://bird.tacowolf.net' baseURL = 'https://bird.tacowolf.net'
languageCode = 'en-us' languageCode = 'en-us'
title = 'bird dot 🌮🐺 dot net' title = '🦜 - 🌮🐺 dot 🌐 [🔞]'
enableEmoji = true theme = 'avian'
[markup]
defaultMarkdownHandler = 'goldmark'
[markup.asciidocExt]
backend = 'html5'
extensions = []
failureLevel = 'fatal'
noHeaderOrFooter = true
preserveTOC = false
safeMode = 'unsafe'
sectionNumbers = false
trace = false
verbose = false
workingFolderCurrent = false
[markup.asciidocExt.attributes]
[markup.goldmark]
[markup.goldmark.extensions]
definitionList = true
footnote = true
linkify = true
linkifyProtocol = 'https'
strikethrough = true
table = true
taskList = true
[markup.goldmark.extensions.typographer]
apostrophe = '’'
disable = false
ellipsis = '…'
emDash = '—'
enDash = '–'
leftAngleQuote = '«'
leftDoubleQuote = '“'
leftSingleQuote = '‘'
rightAngleQuote = '»'
rightDoubleQuote = '”'
rightSingleQuote = '’'
[markup.goldmark.parser]
autoHeadingID = true
autoHeadingIDType = 'github'
wrapStandAloneImageWithinParagraph = true
[markup.goldmark.parser.attribute]
block = true
title = true
[markup.goldmark.renderer]
hardWraps = false
unsafe = false
xhtml = false
[markup.highlight]
anchorLineNos = false
codeFences = true
guessSyntax = false
hl_Lines = ''
hl_inline = false
lineAnchors = ''
lineNoStart = 1
lineNos = false
lineNumbersInTable = true
noClasses = true
noHl = false
style = 'monokai'
tabWidth = 4
[markup.tableOfContents]
endLevel = 3
ordered = false
startLevel = 2

View file

@ -1,14 +1,19 @@
--- ---
title: "home" title: 🚨 hold up 🚨
description: "taco's furry trash receptable" description: taco's furry trash receptable [18+]
--- ---
i'm busy setting everything up still. sorry for the mess. ![](/img/aeolus.sippy.rumwik.png)
trust me, it'll look better soon.
## things you can look at for now:
* [characters](characters)
( ' v ' ) ## there's some weird stuff in here.
### you should be an adult if you want to read this.
# are you _sure_ you want to continue?
```
🚨 content warning: furry, nsfw, adult themes, 18+ 🚨
```
[yes, i am an adult](home) | [no, i am a child](https://www.bluey.tv/)

View file

@ -1,4 +0,0 @@
---
title: about
description: so what is this, anyway?
---

View file

@ -1,4 +1,24 @@
--- ---
title: characters title: characters
description: aka all of the voices in taco's head
--- ---
# characters
{.text-5xl}
|Forename |Surname |Pronouns|Gender presentation|Genetic ancestry |Primary feature|Secondary feature |Hair style |Hair color |Age |Natural Height (cm)|Current Height (cm)|Has A Penis|Has A Vulva|Has Breasts|
|---------|---------|--------|-------------------|------------------|---------------|---------------------------------------|---------------------|-----------|---------|-------------------|-------------------|-----------|-----------|-----------|
|Aeolus |Viridis |he/they |bird |Monk parakeet/lion|Green fur |Wings, white belly |N/A |N/A |🦜|21 |21 |N |N |N |
|Akino |Wikifoo |he/they |Non-binary |Wolf/Husky |Orange fur |White belly |N/A |N/A |20s |175 |5 |Y |N |N |
|Blanca |Grato |she/her |Feminine |Snow leopard |Gray fur |Black ringed spots |Long, flowing hair |Gray |40s |169 |13 |N |Y |Y |
|Esperanza|Cainama |she/they|Feminine |Golden retriever |Auburn fur |Floppy ears |N/A |Brown |50s |171 |171 |Y |N |Y |
|Gabriela |Kansai |she/her |Feminine |Husky |Black fur |White belly |Short |Depends! :3|20s |165 |12 |N |Y |Y |
|Jen |Shanxiu |he/him |Masculine |Lion |Orange fur | |Flowing, uncut hair |Grey black |50s |180 |180 |Y |N |N |
|Maricelle|Prestaria|she/her |Feminine |Mouse |Brown fur | |Wavy, shoulder length|Brown |30s |16 |168 |N |Y |Y |
|Sestra |Hitsu |she/they|Non-binary |Skaga |White wool |Curled ram horns |N/A |N/A |30s |89 |89 |N |Y |Y |
|Suneko |Shinzo |he/him |Masculine |Swan |White feathers |Orange beak |N/A |N/A |30s |168 |168 |N |Y |N |
|Terra |Viridis |he/him |Masculine |Pegasus |Brown coat |Green extremities (muzzle/hands/hooves)|Feathered short hair |Dark green |40s |178 |178 |Y |N |N |
{.table-auto}
# in-depth articles
{.text-xl}

View file

@ -7,7 +7,6 @@ description: An orange wolf-husky hybrid with a white belly and dark brown paws.
height: 12cm (varies) height: 12cm (varies)
--- ---
# early life and education # early life and education
[to be added] [to be added]
@ -17,9 +16,6 @@ height: 12cm (varies)
# personal life # personal life
[to be added] [to be added]
# legacy
[to be added]
# notes and references # notes and references
[to be added] [to be added]

View file

@ -21,9 +21,6 @@ She stands at 162cm (5'4") tall. Her tail is 30 inches long.
# personal life # personal life
[to be added] [to be added]
# legacy
[to be added]
# notes and references # notes and references
[to be added] [to be added]

View file

@ -24,9 +24,6 @@ a larger stature to attend the desk at the library she works and lives in.
# personal life # personal life
[to be added] [to be added]
# legacy
[to be added]
# notes and references # notes and references
[to be added] [to be added]

View file

@ -22,9 +22,6 @@ He stands at 1.67m (5'6") tall. His wingspan reaches to 10m (~32') on a good day
# personal life # personal life
[to be added] [to be added]
# legacy
[to be added]
# notes and references # notes and references
[to be added] [to be added]

14
content/home.md Normal file
View file

@ -0,0 +1,14 @@
---
title: home
description: taco's furry trash receptable
---
i'm busy setting everything up still. sorry for the mess.
trust me, it'll look better soon.
## things you can look at for now:
* [characters](../characters)
![](/img/aeolus.pixelbird.stardew.png)
{.place-content-center}

View file

View file

@ -1,11 +0,0 @@
<!DOCTYPE html>
<html>
{{- partial "head.html" . -}}
<body>
{{- partial "header.html" . -}}
<div id="content">
{{- block "main" . }}{{- end }}
</div>
{{- partial "footer.html" . -}}
</body>
</html>

View file

@ -1,17 +0,0 @@
{{ define "main" }}
<main>
<article>
<header>
<h1>{{.Title}}</h1>
</header>
{{.Content}}
</article>
<ul>
{{ range .Pages }}
<li>
<a href="{{.Permalink}}">{{.Title}}</a>
</li>
{{ end }}
</ul>
</main>
{{ end }}

View file

@ -1,10 +0,0 @@
{{ define "main" }}
<section id="main">
<h1 id="title">{{ .Title }}</h1>
<div>
<article id="content">
{{ .Content }}
</article>
</div>
</section>
{{ end }}

View file

@ -1,11 +0,0 @@
{{ define "main" }}
<main>
<ul>
{{ range .Pages }}
<li>
<a href="{{.Permalink}}">
<h3>{{.Name}}</h3></a>
<p>{{.Description}}</p>
</li>{{ end }}
</ul>
</main>{{ end }}

View file

@ -1,8 +0,0 @@
{{ define "main" }}
<section id="main">
<div>
<article id="content">
{{ .Content }}
</article>
</div>
</section>{{ end }}

View file

@ -1,7 +0,0 @@
{{ define "main" }}
<main aria-role="main">
<div class="homepage-content">
{{.Content}}
</div>
</main>
{{ end }}

View file

@ -1,9 +0,0 @@
<ol class="crumbs">
~{{ template "breadcrumbnav" (dict "p1" . "p2" .) }}
</ol>{{ define "breadcrumbnav" }}{{ if .p1.Parent }} {{ template
"breadcrumbnav" (dict "p1" .p1.Parent "p2" .p2 ) }} {{ else if not
.p1.IsHome }}{{ template "breadcrumbnav" (dict "p1" .p1.Site.Home
"p2" .p2 ) }}{{ end }}
<li if="" eq="" class="active" end="">/<a href=
"{{.p1.Permalink}}">{{ lower .p1.Title }}</a>
</li>{{ end }}

View file

@ -1,7 +0,0 @@
<footer>
content © 2022 <a href=
"https://twitter.com/chirpbirb">@chirpbirb</a><a href=
"http://gitlab.com/takouhai/bird" target="_blank">source</a>
<a href="https://bird.tacowolf.net" target="_blank">made by
taco 🌮</a>
</footer>

View file

@ -1,7 +0,0 @@
{{ template "_internal/opengraph.html" . }} {{ template
"_internal/twitter_cards.html" . }} {{ $style := resources.Get
"/sass/main.sass" | toCSS }}
<link href="{{ $style.RelPermalink }}" rel="stylesheet">{{ $title
:= print .Title " | " .Site.Title }} {{ if .IsHome }}{{ $title =
.Site.Title }}{{ end }}
<title>{{ lower $title }}</title>

View file

@ -1,4 +0,0 @@
<h1>{{lower .Title}}</h1>
<div class="subtitle">
{{lower .Description}}
</div>{{- partial "crumbs.html" . -}}

919
package-lock.json generated Normal file
View file

@ -0,0 +1,919 @@
{
"name": "bird",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"dependencies": {
"autoprefixer": "^10.4.14",
"postcss-cli": "^10.1.0"
}
},
"node_modules/@nodelib/fs.scandir": {
"version": "2.1.5",
"resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
"integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
"dependencies": {
"@nodelib/fs.stat": "2.0.5",
"run-parallel": "^1.1.9"
},
"engines": {
"node": ">= 8"
}
},
"node_modules/@nodelib/fs.stat": {
"version": "2.0.5",
"resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
"integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
"engines": {
"node": ">= 8"
}
},
"node_modules/@nodelib/fs.walk": {
"version": "1.2.8",
"resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
"integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
"dependencies": {
"@nodelib/fs.scandir": "2.1.5",
"fastq": "^1.6.0"
},
"engines": {
"node": ">= 8"
}
},
"node_modules/ansi-regex": {
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
"integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
"engines": {
"node": ">=8"
}
},
"node_modules/ansi-styles": {
"version": "4.3.0",
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
"integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
"dependencies": {
"color-convert": "^2.0.1"
},
"engines": {
"node": ">=8"
},
"funding": {
"url": "https://github.com/chalk/ansi-styles?sponsor=1"
}
},
"node_modules/anymatch": {
"version": "3.1.3",
"resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz",
"integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==",
"dependencies": {
"normalize-path": "^3.0.0",
"picomatch": "^2.0.4"
},
"engines": {
"node": ">= 8"
}
},
"node_modules/autoprefixer": {
"version": "10.4.14",
"resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.14.tgz",
"integrity": "sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==",
"funding": [
{
"type": "opencollective",
"url": "https://opencollective.com/postcss/"
},
{
"type": "tidelift",
"url": "https://tidelift.com/funding/github/npm/autoprefixer"
}
],
"dependencies": {
"browserslist": "^4.21.5",
"caniuse-lite": "^1.0.30001464",
"fraction.js": "^4.2.0",
"normalize-range": "^0.1.2",
"picocolors": "^1.0.0",
"postcss-value-parser": "^4.2.0"
},
"bin": {
"autoprefixer": "bin/autoprefixer"
},
"engines": {
"node": "^10 || ^12 || >=14"
},
"peerDependencies": {
"postcss": "^8.1.0"
}
},
"node_modules/binary-extensions": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz",
"integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==",
"engines": {
"node": ">=8"
}
},
"node_modules/braces": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
"integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
"dependencies": {
"fill-range": "^7.0.1"
},
"engines": {
"node": ">=8"
}
},
"node_modules/browserslist": {
"version": "4.21.9",
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.9.tgz",
"integrity": "sha512-M0MFoZzbUrRU4KNfCrDLnvyE7gub+peetoTid3TBIqtunaDJyXlwhakT+/VkvSXcfIzFfK/nkCs4nmyTmxdNSg==",
"funding": [
{
"type": "opencollective",
"url": "https://opencollective.com/browserslist"
},
{
"type": "tidelift",
"url": "https://tidelift.com/funding/github/npm/browserslist"
},
{
"type": "github",
"url": "https://github.com/sponsors/ai"
}
],
"dependencies": {
"caniuse-lite": "^1.0.30001503",
"electron-to-chromium": "^1.4.431",
"node-releases": "^2.0.12",
"update-browserslist-db": "^1.0.11"
},
"bin": {
"browserslist": "cli.js"
},
"engines": {
"node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
}
},
"node_modules/caniuse-lite": {
"version": "1.0.30001505",
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001505.tgz",
"integrity": "sha512-jaAOR5zVtxHfL0NjZyflVTtXm3D3J9P15zSJ7HmQF8dSKGA6tqzQq+0ZI3xkjyQj46I4/M0K2GbMpcAFOcbr3A==",
"funding": [
{
"type": "opencollective",
"url": "https://opencollective.com/browserslist"
},
{
"type": "tidelift",
"url": "https://tidelift.com/funding/github/npm/caniuse-lite"
},
{
"type": "github",
"url": "https://github.com/sponsors/ai"
}
]
},
"node_modules/chokidar": {
"version": "3.5.3",
"resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
"integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
"funding": [
{
"type": "individual",
"url": "https://paulmillr.com/funding/"
}
],
"dependencies": {
"anymatch": "~3.1.2",
"braces": "~3.0.2",
"glob-parent": "~5.1.2",
"is-binary-path": "~2.1.0",
"is-glob": "~4.0.1",
"normalize-path": "~3.0.0",
"readdirp": "~3.6.0"
},
"engines": {
"node": ">= 8.10.0"
},
"optionalDependencies": {
"fsevents": "~2.3.2"
}
},
"node_modules/cliui": {
"version": "8.0.1",
"resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz",
"integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==",
"dependencies": {
"string-width": "^4.2.0",
"strip-ansi": "^6.0.1",
"wrap-ansi": "^7.0.0"
},
"engines": {
"node": ">=12"
}
},
"node_modules/color-convert": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
"integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
"dependencies": {
"color-name": "~1.1.4"
},
"engines": {
"node": ">=7.0.0"
}
},
"node_modules/color-name": {
"version": "1.1.4",
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
},
"node_modules/dependency-graph": {
"version": "0.11.0",
"resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.11.0.tgz",
"integrity": "sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg==",
"engines": {
"node": ">= 0.6.0"
}
},
"node_modules/dir-glob": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz",
"integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==",
"dependencies": {
"path-type": "^4.0.0"
},
"engines": {
"node": ">=8"
}
},
"node_modules/electron-to-chromium": {
"version": "1.4.435",
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.435.tgz",
"integrity": "sha512-B0CBWVFhvoQCW/XtjRzgrmqcgVWg6RXOEM/dK59+wFV93BFGR6AeNKc4OyhM+T3IhJaOOG8o/V+33Y2mwJWtzw=="
},
"node_modules/emoji-regex": {
"version": "8.0.0",
"resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
"integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="
},
"node_modules/escalade": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
"integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
"engines": {
"node": ">=6"
}
},
"node_modules/fast-glob": {
"version": "3.2.12",
"resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz",
"integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==",
"dependencies": {
"@nodelib/fs.stat": "^2.0.2",
"@nodelib/fs.walk": "^1.2.3",
"glob-parent": "^5.1.2",
"merge2": "^1.3.0",
"micromatch": "^4.0.4"
},
"engines": {
"node": ">=8.6.0"
}
},
"node_modules/fastq": {
"version": "1.15.0",
"resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz",
"integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==",
"dependencies": {
"reusify": "^1.0.4"
}
},
"node_modules/fill-range": {
"version": "7.0.1",
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
"integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
"dependencies": {
"to-regex-range": "^5.0.1"
},
"engines": {
"node": ">=8"
}
},
"node_modules/fraction.js": {
"version": "4.2.0",
"resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz",
"integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==",
"engines": {
"node": "*"
},
"funding": {
"type": "patreon",
"url": "https://www.patreon.com/infusion"
}
},
"node_modules/fs-extra": {
"version": "11.1.1",
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.1.1.tgz",
"integrity": "sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ==",
"dependencies": {
"graceful-fs": "^4.2.0",
"jsonfile": "^6.0.1",
"universalify": "^2.0.0"
},
"engines": {
"node": ">=14.14"
}
},
"node_modules/fsevents": {
"version": "2.3.2",
"resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
"integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
"hasInstallScript": true,
"optional": true,
"os": [
"darwin"
],
"engines": {
"node": "^8.16.0 || ^10.6.0 || >=11.0.0"
}
},
"node_modules/get-caller-file": {
"version": "2.0.5",
"resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
"integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
"engines": {
"node": "6.* || 8.* || >= 10.*"
}
},
"node_modules/get-stdin": {
"version": "9.0.0",
"resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-9.0.0.tgz",
"integrity": "sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA==",
"engines": {
"node": ">=12"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/glob-parent": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
"integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
"dependencies": {
"is-glob": "^4.0.1"
},
"engines": {
"node": ">= 6"
}
},
"node_modules/globby": {
"version": "13.2.0",
"resolved": "https://registry.npmjs.org/globby/-/globby-13.2.0.tgz",
"integrity": "sha512-jWsQfayf13NvqKUIL3Ta+CIqMnvlaIDFveWE/dpOZ9+3AMEJozsxDvKA02zync9UuvOM8rOXzsD5GqKP4OnWPQ==",
"dependencies": {
"dir-glob": "^3.0.1",
"fast-glob": "^3.2.11",
"ignore": "^5.2.0",
"merge2": "^1.4.1",
"slash": "^4.0.0"
},
"engines": {
"node": "^12.20.0 || ^14.13.1 || >=16.0.0"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/globby/node_modules/slash": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz",
"integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==",
"engines": {
"node": ">=12"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/graceful-fs": {
"version": "4.2.11",
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz",
"integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ=="
},
"node_modules/ignore": {
"version": "5.2.4",
"resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz",
"integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==",
"engines": {
"node": ">= 4"
}
},
"node_modules/is-binary-path": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
"integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
"dependencies": {
"binary-extensions": "^2.0.0"
},
"engines": {
"node": ">=8"
}
},
"node_modules/is-extglob": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
"integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/is-fullwidth-code-point": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
"integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
"engines": {
"node": ">=8"
}
},
"node_modules/is-glob": {
"version": "4.0.3",
"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
"integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
"dependencies": {
"is-extglob": "^2.1.1"
},
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/is-number": {
"version": "7.0.0",
"resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
"integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
"engines": {
"node": ">=0.12.0"
}
},
"node_modules/jsonfile": {
"version": "6.1.0",
"resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz",
"integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==",
"dependencies": {
"universalify": "^2.0.0"
},
"optionalDependencies": {
"graceful-fs": "^4.1.6"
}
},
"node_modules/lilconfig": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz",
"integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==",
"engines": {
"node": ">=10"
}
},
"node_modules/merge2": {
"version": "1.4.1",
"resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
"integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==",
"engines": {
"node": ">= 8"
}
},
"node_modules/micromatch": {
"version": "4.0.5",
"resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz",
"integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==",
"dependencies": {
"braces": "^3.0.2",
"picomatch": "^2.3.1"
},
"engines": {
"node": ">=8.6"
}
},
"node_modules/nanoid": {
"version": "3.3.6",
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz",
"integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==",
"funding": [
{
"type": "github",
"url": "https://github.com/sponsors/ai"
}
],
"peer": true,
"bin": {
"nanoid": "bin/nanoid.cjs"
},
"engines": {
"node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
}
},
"node_modules/node-releases": {
"version": "2.0.12",
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.12.tgz",
"integrity": "sha512-QzsYKWhXTWx8h1kIvqfnC++o0pEmpRQA/aenALsL2F4pqNVr7YzcdMlDij5WBnwftRbJCNJL/O7zdKaxKPHqgQ=="
},
"node_modules/normalize-path": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
"integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/normalize-range": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz",
"integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==",
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/path-type": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
"integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==",
"engines": {
"node": ">=8"
}
},
"node_modules/picocolors": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
"integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ=="
},
"node_modules/picomatch": {
"version": "2.3.1",
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
"integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
"engines": {
"node": ">=8.6"
},
"funding": {
"url": "https://github.com/sponsors/jonschlinkert"
}
},
"node_modules/pify": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
"integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==",
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/postcss": {
"version": "8.4.24",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.24.tgz",
"integrity": "sha512-M0RzbcI0sO/XJNucsGjvWU9ERWxb/ytp1w6dKtxTKgixdtQDq4rmx/g8W1hnaheq9jgwL/oyEdH5Bc4WwJKMqg==",
"funding": [
{
"type": "opencollective",
"url": "https://opencollective.com/postcss/"
},
{
"type": "tidelift",
"url": "https://tidelift.com/funding/github/npm/postcss"
},
{
"type": "github",
"url": "https://github.com/sponsors/ai"
}
],
"peer": true,
"dependencies": {
"nanoid": "^3.3.6",
"picocolors": "^1.0.0",
"source-map-js": "^1.0.2"
},
"engines": {
"node": "^10 || ^12 || >=14"
}
},
"node_modules/postcss-cli": {
"version": "10.1.0",
"resolved": "https://registry.npmjs.org/postcss-cli/-/postcss-cli-10.1.0.tgz",
"integrity": "sha512-Zu7PLORkE9YwNdvOeOVKPmWghprOtjFQU3srMUGbdz3pHJiFh7yZ4geiZFMkjMfB0mtTFR3h8RemR62rPkbOPA==",
"dependencies": {
"chokidar": "^3.3.0",
"dependency-graph": "^0.11.0",
"fs-extra": "^11.0.0",
"get-stdin": "^9.0.0",
"globby": "^13.0.0",
"picocolors": "^1.0.0",
"postcss-load-config": "^4.0.0",
"postcss-reporter": "^7.0.0",
"pretty-hrtime": "^1.0.3",
"read-cache": "^1.0.0",
"slash": "^5.0.0",
"yargs": "^17.0.0"
},
"bin": {
"postcss": "index.js"
},
"engines": {
"node": ">=14"
},
"peerDependencies": {
"postcss": "^8.0.0"
}
},
"node_modules/postcss-load-config": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.1.tgz",
"integrity": "sha512-vEJIc8RdiBRu3oRAI0ymerOn+7rPuMvRXslTvZUKZonDHFIczxztIyJ1urxM1x9JXEikvpWWTUUqal5j/8QgvA==",
"dependencies": {
"lilconfig": "^2.0.5",
"yaml": "^2.1.1"
},
"engines": {
"node": ">= 14"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/postcss/"
},
"peerDependencies": {
"postcss": ">=8.0.9",
"ts-node": ">=9.0.0"
},
"peerDependenciesMeta": {
"postcss": {
"optional": true
},
"ts-node": {
"optional": true
}
}
},
"node_modules/postcss-reporter": {
"version": "7.0.5",
"resolved": "https://registry.npmjs.org/postcss-reporter/-/postcss-reporter-7.0.5.tgz",
"integrity": "sha512-glWg7VZBilooZGOFPhN9msJ3FQs19Hie7l5a/eE6WglzYqVeH3ong3ShFcp9kDWJT1g2Y/wd59cocf9XxBtkWA==",
"dependencies": {
"picocolors": "^1.0.0",
"thenby": "^1.3.4"
},
"engines": {
"node": ">=10"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/postcss/"
},
"peerDependencies": {
"postcss": "^8.1.0"
}
},
"node_modules/postcss-value-parser": {
"version": "4.2.0",
"resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz",
"integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ=="
},
"node_modules/pretty-hrtime": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz",
"integrity": "sha512-66hKPCr+72mlfiSjlEB1+45IjXSqvVAIy6mocupoww4tBFE9R9IhwwUGoI4G++Tc9Aq+2rxOt0RFU6gPcrte0A==",
"engines": {
"node": ">= 0.8"
}
},
"node_modules/queue-microtask": {
"version": "1.2.3",
"resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
"integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
"funding": [
{
"type": "github",
"url": "https://github.com/sponsors/feross"
},
{
"type": "patreon",
"url": "https://www.patreon.com/feross"
},
{
"type": "consulting",
"url": "https://feross.org/support"
}
]
},
"node_modules/read-cache": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz",
"integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==",
"dependencies": {
"pify": "^2.3.0"
}
},
"node_modules/readdirp": {
"version": "3.6.0",
"resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
"integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
"dependencies": {
"picomatch": "^2.2.1"
},
"engines": {
"node": ">=8.10.0"
}
},
"node_modules/require-directory": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
"integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==",
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/reusify": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
"integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==",
"engines": {
"iojs": ">=1.0.0",
"node": ">=0.10.0"
}
},
"node_modules/run-parallel": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
"integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
"funding": [
{
"type": "github",
"url": "https://github.com/sponsors/feross"
},
{
"type": "patreon",
"url": "https://www.patreon.com/feross"
},
{
"type": "consulting",
"url": "https://feross.org/support"
}
],
"dependencies": {
"queue-microtask": "^1.2.2"
}
},
"node_modules/slash": {
"version": "5.1.0",
"resolved": "https://registry.npmjs.org/slash/-/slash-5.1.0.tgz",
"integrity": "sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==",
"engines": {
"node": ">=14.16"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/source-map-js": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
"integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
"peer": true,
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/string-width": {
"version": "4.2.3",
"resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
"integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
"dependencies": {
"emoji-regex": "^8.0.0",
"is-fullwidth-code-point": "^3.0.0",
"strip-ansi": "^6.0.1"
},
"engines": {
"node": ">=8"
}
},
"node_modules/strip-ansi": {
"version": "6.0.1",
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
"integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
"dependencies": {
"ansi-regex": "^5.0.1"
},
"engines": {
"node": ">=8"
}
},
"node_modules/thenby": {
"version": "1.3.4",
"resolved": "https://registry.npmjs.org/thenby/-/thenby-1.3.4.tgz",
"integrity": "sha512-89Gi5raiWA3QZ4b2ePcEwswC3me9JIg+ToSgtE0JWeCynLnLxNr/f9G+xfo9K+Oj4AFdom8YNJjibIARTJmapQ=="
},
"node_modules/to-regex-range": {
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
"integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
"dependencies": {
"is-number": "^7.0.0"
},
"engines": {
"node": ">=8.0"
}
},
"node_modules/universalify": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz",
"integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==",
"engines": {
"node": ">= 10.0.0"
}
},
"node_modules/update-browserslist-db": {
"version": "1.0.11",
"resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz",
"integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==",
"funding": [
{
"type": "opencollective",
"url": "https://opencollective.com/browserslist"
},
{
"type": "tidelift",
"url": "https://tidelift.com/funding/github/npm/browserslist"
},
{
"type": "github",
"url": "https://github.com/sponsors/ai"
}
],
"dependencies": {
"escalade": "^3.1.1",
"picocolors": "^1.0.0"
},
"bin": {
"update-browserslist-db": "cli.js"
},
"peerDependencies": {
"browserslist": ">= 4.21.0"
}
},
"node_modules/wrap-ansi": {
"version": "7.0.0",
"resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
"integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
"dependencies": {
"ansi-styles": "^4.0.0",
"string-width": "^4.1.0",
"strip-ansi": "^6.0.0"
},
"engines": {
"node": ">=10"
},
"funding": {
"url": "https://github.com/chalk/wrap-ansi?sponsor=1"
}
},
"node_modules/y18n": {
"version": "5.0.8",
"resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz",
"integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==",
"engines": {
"node": ">=10"
}
},
"node_modules/yaml": {
"version": "2.3.1",
"resolved": "https://registry.npmjs.org/yaml/-/yaml-2.3.1.tgz",
"integrity": "sha512-2eHWfjaoXgTBC2jNM1LRef62VQa0umtvRiDSk6HSzW7RvS5YtkabJrwYLLEKWBc8a5U2PTSCs+dJjUTJdlHsWQ==",
"engines": {
"node": ">= 14"
}
},
"node_modules/yargs": {
"version": "17.7.2",
"resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz",
"integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==",
"dependencies": {
"cliui": "^8.0.1",
"escalade": "^3.1.1",
"get-caller-file": "^2.0.5",
"require-directory": "^2.1.1",
"string-width": "^4.2.3",
"y18n": "^5.0.5",
"yargs-parser": "^21.1.1"
},
"engines": {
"node": ">=12"
}
},
"node_modules/yargs-parser": {
"version": "21.1.1",
"resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz",
"integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==",
"engines": {
"node": ">=12"
}
}
}
}

6
package.json Normal file
View file

@ -0,0 +1,6 @@
{
"dependencies": {
"autoprefixer": "^10.4.14",
"postcss-cli": "^10.1.0"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 469 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 76 KiB

3
themes/avian/.gitignore vendored Normal file
View file

@ -0,0 +1,3 @@
/node_modules
/exampleSite/public
/exampleSite/hugo_stats.json

20
themes/avian/LICENSE Normal file
View file

@ -0,0 +1,20 @@
The MIT License (MIT)
Copyright (c) 2018 Dirk Olbrich
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

View file

@ -0,0 +1,5 @@
---
author:
title: {{ replace .Name "-" " " | title }}
date: {{ .Date }}
---

View file

@ -0,0 +1,10 @@
const themeDir = __dirname + '/../../';
module.exports = {
plugins: [
require('tailwindcss')(themeDir + 'assets/css/tailwind.config.js'),
require('autoprefixer')({
path: [themeDir]
})
]
}

View file

@ -0,0 +1,15 @@
/* TailwindCSS base styles */
/* see https://tailwindcss.com/docs/functions-and-directives#tailwind */
@tailwind base;
@tailwind components;
@tailwind utilities;
@tailwind variants;
/* Site Specific */
/* put site specific css styles here using the @layer directive */
/* see https://tailwindcss.com/docs/functions-and-directives#layer */
@layer components {
.welcome-headline {
@apply text-sky-600;
}
}

View file

@ -0,0 +1,18 @@
module.exports = {
darkMode: 'class',
content: [
"./themes/**/layouts/**/*.html",
"./content/**/layouts/**/*.html",
"./layouts/**/*.html",
"./content/**/*.html"
],
theme: {
extend: {},
},
plugins: [
require('@tailwindcss/aspect-ratio'),
require('@tailwindcss/forms'),
require('@tailwindcss/line-clamp'),
require('@tailwindcss/typography'),
]
}

View file

@ -0,0 +1,3 @@
{{ define "main" }}
<p>404 - page not found</p>
{{ end }}

View file

@ -0,0 +1,14 @@
<!DOCTYPE html>
<html lang='{{ .Site.LanguageCode }}'>
{{ partial "head.html" . }}
<body class="flex flex-col min-h-screen bg-neutral-50 dark:bg-neutral-900 text-neutral-600 dark:text-neutral-400">
{{- partial "dev/dev-tools.html" . -}}
{{- partial "header.html" . -}}
<main class="flex-1 grow mx-auto w-screen max-w-screen-2xl px-6 sm:px-7 xl:px-8 2xl:px-10 pt-4 sm:pt-16">
{{- block "main" . }}{{- end }}
</main>
{{- partial "footer.html" . -}}
</body>
</html>

View file

@ -0,0 +1,10 @@
{{ define "main" }}
{{ .Content }}
<ul>
{{ range .Pages }}
<li class="list-disc text-xl">
<a href="{{ .Permalink }}">{{ .Title }}</a>
</li>
{{ end }}
</ul>
{{ end }}

View file

@ -0,0 +1,7 @@
{{ define "main" }}
<article
class="justify-self-center mx-auto px-6 mb-16 sm:px-4 md:px-0 prose dark:prose-invert prose-slate lg:prose-lg hover:prose-a:text-sky-500">
<h1>{{ .Title }}</h1>
{{ .Content }}
</article>
{{ end }}

View file

@ -0,0 +1,6 @@
{{ define "main" }}
<article class="justify-self-center mx-auto text-center prose dark:prose-invert prose-slate lg:prose-lg">
<h1 class="font-serif font-extralight text-5xl welcome-headline">{{ .Title }}</h1>
{{ .Content }}
</article>
{{ end }}

View file

@ -0,0 +1,7 @@
{{- $styles := resources.Get "css/styles.css" | postCSS (dict "config" "./assets/css/postcss.config.js") -}}
{{- if .Site.IsServer }}
{{ $styles = $styles | resources.ExecuteAsTemplate (printf "css/styles.dev.%v.css" now.UnixMilli) .}}
{{ else }}
{{- $styles := $styles| minify | fingerprint | resources.PostProcess -}}
{{ end -}}
<link rel="stylesheet" href="{{ $styles.RelPermalink }}">

View file

@ -0,0 +1,37 @@
{{ if .Site.IsServer }}
<button id="container-menu" onclick="changeContainerVisibility()"
class="w-8 h-8 mb-2 block rounded-full text-slate-600 text-sm bg-slate-200 uppercase pointer-events-auto">
<span>C</span>
</button>
<div id="container-area"
class="fixed inset-0 top-0 -z-50 container mx-auto h-full bg-red-200 bg-opacity-25 pointer-events-none hidden">
<p></p>
</div>
<script>
function setContainerVisibility(data) {
var showContainer = data;
var e = document.querySelector("#container-area");
if (e.classList.contains("hidden") == showContainer) {
e.classList.toggle("hidden");
}
sessionStorage.setItem("showContainer", showContainer);
}
function changeContainerVisibility() {
var e = document.querySelector("#container-area");
var showContainer = e.classList.contains("hidden") ? true : false;
setContainerVisibility(showContainer);
}
function setupContainerIndicator() {
/* load variables from session storage */
var showContainer = sessionStorage.getItem("showContainer") === "true";
setContainerVisibility(showContainer);
}
window.onload = setupContainerIndicator();
</script>
{{ end }}

View file

@ -0,0 +1,7 @@
{{ if .Site.IsServer }}
<div class="fixed top-0 right-0 mt-12 mr-8 z-50">
{{- partial "dev/size-indicator.html" . -}}
{{- partial "dev/container-indicator.html" . -}}
{{- partial "dev/parameters.html" . -}}
</div>
{{ end }}

View file

@ -0,0 +1,47 @@
{{ if .Site.IsServer }}
<button id="grid-menu" onclick="changeGridVisibility()"
class="w-8 h-8 mb-2 block rounded-full text-gray-700 text-sm bg-gray-200 uppercase pointer-events-auto">
<span>G</span>
</button>
<div id="grid-area" class="container w-screen h-screen mx-auto px-8 grid grid-cols-12 gap-4">
<div class="bg-blue-200 bg-opacity-25"></div>
</div>
<script>
const padOptions = ["0", "1", "2", "3", "4", "5", "6", "8", "10", "12", "16", "20", "24", "32", "40", "48", "56", "64"];
const colOptions = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12"];
const gapOptions = ["0", "1", "2", "3", "4", "5", "6", "8", "10", "12", "16"];
/* helper function to remove a class attribute from an element */
function removeClassWith(e, part) {
var regx = new RegExp('(^|\\s)\\S*' + part + '\\S*', 'g');
e.className = e.className.replace(regx, '');
}
function setGridVisibility(data) {
var showGrid = data;
var e = document.querySelector("#grid-area");
if (e.classList.contains("hidden") == showGrid) {
e.classList.toggle("hidden");
}
sessionStorage.setItem("showGrid", showGrid);
}
function changeGridVisibility() {
var e = document.querySelector("#grid-area");
var showGrid = e.classList.contains("hidden") ? true : false;
setGridVisibility(showGrid);
}
function setupGridIndicator() {
/* load variables from local storage */
var showGrid = sessionStorage.getItem("showGrid") === "true";
setGridVisibility(showGrid);
}
window.onload = setupGridIndicator();
</script>
{{ end }}

View file

@ -0,0 +1,126 @@
{{ if .Site.IsServer }}
<button id="parameter-menu" onclick="changeParameterVisibility()"
class="w-8 h-8 mb-2 rounded-full text-slate-600 text-sm bg-slate-200 uppercase pointer-events-auto">
<span>P</span>
</button>
<div id="parameter-area"
class="fixed w-full z-50 right-0 bottom-0 h-1/3 p-4 overflow-y-auto scroll-auto scroll-py-4 touch-auto text-slate-600 bg-white/[.95] border-y-8 border-white/50 hidden">
<table class="w-full text-left table-auto table-collapse border-slate-200">
<caption class="text-left pb-2">Hugo Variables for the current page.</caption>
<thead>
<tr class="p-2 font-semibold bg-slate-200 border-t ">
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr class="p-2 border-t">
<td>.Name</td>
<td>{{ printf "%#v" .Name }}</td>
</tr>
<tr class="p-2 border-t">
<td>.Title</td>
<td>{{ printf "%#v" .Title }}</td>
</tr>
<tr class="p-2 border-t">
<td>.Kind</td>
<td>{{ printf "%#v" .Kind }}</td>
</tr>
<tr class="p-2 border-t">
<td>.Type</td>
<td>{{ printf "%#v" .Type }}</td>
</tr>
<tr class="p-2 border-t">
<td>.IsPage</td>
<td>{{ printf "%#v" .IsPage }}</td>
</tr>
<tr class="p-2 border-t">
<td>.IsHome</td>
<td>{{ printf "%#v" .IsHome }}</td>
</tr>
<tr class="p-2 border-t">
<td>.Next</td>
<td>{{ printf "%v" .Next }}</td>
</tr>
<tr class="p-2 border-t">
<td>.Prev</td>
<td>{{ printf "%v" .Prev }}</td>
</tr>
<tr class="p-2 border-t">
<td>.Params</td>
<td>
<table>
{{ range $k,$v := .Params }}
<tr>
<td class="text-right italic pr-2">{{ printf "%#v:" $k }}</td>
<td>{{ printf "%#v" $v }}</td>
</tr>
{{ end }}
</table>
</td>
</tr>
<tr class="p-2 border-t">
<td>.Section</td>
<td>{{ printf "%#v" .Section }}</td>
</tr>
<tr class="p-2 border-t">
<td>.CurrentSection</td>
<td>{{ printf "%v" .CurrentSection }}</td>
</tr>
<tr class="p-2 border-t">
<td>.Pages</td>
<td>
{{ printf "%v" .Pages }}
<table>
{{- range $k,$v := .Pages }}
<tr>
<td class="text-right italic pr-2">{{ printf "%#v:" $k }}</td>
<td>{{ printf "%v" $v }}</td>
</tr>
{{ end -}}
</table>
</td>
</tr>
<tr class="p-2 border-t">
<td>.Resources</td>
<td>{{ printf "%v" .Resources }}</td>
</tr>
<tr class="p-2 border-t">
<td>.File</td>
<td>{{ if .File }}{{ printf "%v" .File }}{{ else}}""{{ end }}</td>
</tr>
<tr class="p-2 border-t">
<td>.File.Dir</td>
<td>{{ if .File }}{{ printf "%#v" .File.Dir }}{{ else}}""{{ end }}</td>
</tr>
</tbody>
</table>
</div>
<script>
function setParameterVisibility(data) {
var showParameter = data;
var e = document.querySelector("#parameter-area");
if (e.classList.contains("hidden") == showParameter) {
e.classList.toggle("hidden");
}
sessionStorage.setItem("showParameter", showParameter);
}
function changeParameterVisibility() {
var e = document.querySelector("#parameter-area");
var showParameter = e.classList.contains("hidden") ? true : false;
setParameterVisibility(showParameter);
}
function setupParameterIndicator() {
/* load variables from session storage */
var showParameter = sessionStorage.getItem("showParameter") === "true";
setParameterVisibility(showParameter);
}
window.onload = setupParameterIndicator();
</script>
{{ end }}

View file

@ -0,0 +1,11 @@
{{ if .Site.IsServer }}
<div id="size-indicator"
class="flex items-center justify-center w-8 h-8 mb-2 text-sm text-slate-600 uppercase bg-slate-200 rounded-full sm:bg-red-200 md:bg-yellow-200 lg:bg-green-200 xl:bg-blue-200 2xl:bg-pink-200">
<span class="block sm:hidden">all</span>
<span class="hidden sm:block md:hidden">sm</span>
<span class="hidden md:block lg:hidden">md</span>
<span class="hidden lg:block xl:hidden">lg</span>
<span class="hidden xl:block 2xl:hidden">xl</span>
<span class="hidden 2xl:block">2xl</span>
</div>
{{ end }}

View file

@ -0,0 +1,3 @@
<footer class="bottom-0 w-full p-4 text-xs text-center text-slate-500 border-t border-slate-200 dark:border-slate-700">
<p><a href="https://tacowolf.net">made by taco</a></p>
</footer>

View file

@ -0,0 +1,28 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>{{ block "title" . }}
{{- .Title }} - {{ .Site.Title -}}
{{ end }}</title>
{{- if .Description }}
<meta name="description" content="{{ .Description }}" />
{{ end -}}
{{- if .Keywords }}
<meta name="keywords" content="{{ delimit .Keywords " ," }}" />
{{ end -}}
{{- if .Params.Author }}
<meta name="author" content="{{ .Params.Author}}" />
{{ end -}}
{{ hugo.Generator }}
{{ partialCached "css.html" . }}
<script>
// On page load or when changing themes, best to add inline in `head` to avoid FOUC
if (localStorage.getItem('color-theme') === 'dark' || (!('color-theme' in localStorage) && window.matchMedia('(prefers-color-scheme: dark)').matches)) {
document.documentElement.classList.add('dark')
} else {
document.documentElement.classList.remove('dark')
}
</script>
</head>

View file

@ -0,0 +1,137 @@
<header class="mx-auto w-screen max-w-screen-2xl px-6 sm:px-7 xl:px-8 2xl:px-10 py-6">
{{/* CSS functionality for menu toggle */}}
<style type="text/css">
input#nav-toggle:checked~label#show-button {
display: none;
}
input#nav-toggle:checked~label#hide-button {
display: flex;
}
input#nav-toggle:checked~#nav-menu {
display: block;
}
</style>
<nav class="flex items-center justify-between flex-wrap">
<a href="{{ .Site.Home.Permalink }}" class="flex items-center text-slate-800 dark:text-slate-200 font-bold">
{{ .Site.Title }}
</a>
<input id="nav-toggle" type=checkbox class="hidden">
<label id="show-button" for="nav-toggle"
class="flex items-center sm:hidden text-slate-600 dark:text-slate-400 hover:text-sky-500">
<svg class="fill-current h-4 w-4" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg">
<title>Menu Open</title>
<path d="M0 3h20v2H0V3z m0 6h20v2H0V9z m0 6h20v2H0V0z" />
</svg>
</label>
<label id="hide-button" for="nav-toggle" class="items-center hidden text-gray-700 hover:text-blue-500">
<svg class="fill-current h-4 w-4" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg">
<title>Menu Close</title>
<polygon points="11 9 22 9 22 11 11 11 11 22 9 22 9 11 -2 11 -2 9 9 9 9 -2 11 -2"
transform="rotate(45 10 10)" />
</svg>
</label>
<ul id="nav-menu" class="sm:flex w-full sm:w-auto hidden mt-2 sm:mt-0 sm:space-x-2">
{{ with .Site.GetPage "/about" }}
<li>
<a href="{{ .Permalink }}" class="hover:text-sky-500 dark:hover:text-sky-500">{{ .Title }}</a>
</li>
{{ end }}
{{ range .Site.Sections }}
<li>
<a href="{{ .Permalink }}" class="hover:text-sky-500 dark:hover:text-sky-500">{{ .Title }}</a>
</li>
{{ end }}
<li>
<label class="sr-only">Theme</label>
<button type="button" id="theme-toogle" onclick="changeTheme()"
class="py-1 hover:text-sky-500 dark:hover:text-sky-500">
<svg id="theme-toggle-dark" class="w-4 h-4 hidden" fill="currentColor" viewBox="0 0 32 32"
xmlns="http://www.w3.org/2000/svg">
<circle cx="16" cy="16" r="15" />
</svg>
<svg id="theme-toggle-light" class="w-4 h-4 hidden" fill="currentColor" viewBox="0 0 32 32"
xmlns="http://www.w3.org/2000/svg">
<path
d="M16,1C24.279,1 31,7.721 31,16C31,24.279 24.279,31 16,31C7.721,31 1,24.279 1,16C1,7.721 7.721,1 16,1ZM16,5C9.929,5 5,9.929 5,16C5,22.071 9.929,27 16,27C22.071,27 27,22.071 27,16C27,9.929 22.071,5 16,5Z" />
</svg>
<svg id="theme-toggle-system" class="w-4 h-4 hidden" fill="currentColor" viewBox="0 0 32 32"
xmlns="http://www.w3.org/2000/svg">
<g>
<path
d="M16,1C24.279,1 31,7.721 31,16C31,24.279 24.279,31 16,31C7.721,31 1,24.279 1,16C1,7.721 7.721,1 16,1ZM16,5C9.929,5 5,9.929 5,16C5,22.071 9.929,27 16,27C22.071,27 27,22.071 27,16C27,9.929 22.071,5 16,5Z" />
<path d="M16,31C7.721,31 1,24.279 1,16C1,7.721 7.721,1 16,1L16,31Z" />
</g>
</svg>
</button>
</li>
</ul>
</nav>
<script>
var themeDarkIcon = document.getElementById("theme-toggle-dark");
var themeLightIcon = document.getElementById("theme-toggle-light");
var themeSystemIcon = document.getElementById("theme-toggle-system");
function setThemeVisibility(themeParameter) {
switch (themeParameter) {
case "system":
themeSystemIcon.classList.toggle("hidden");
break;
case "light":
themeLightIcon.classList.toggle("hidden");
break;
case "dark": themeDarkIcon.classList.toggle("hidden");
}
}
function changeTheme() {
if (themeSystemIcon.classList.contains("hidden") == false) {
themeSystemIcon.classList.toggle("hidden");
themeLightIcon.classList.toggle("hidden");
localStorage.setItem("color-theme", "light");
document.documentElement.classList.remove('dark');
} else if (themeLightIcon.classList.contains("hidden") == false) {
themeLightIcon.classList.toggle("hidden");
themeDarkIcon.classList.toggle("hidden");
localStorage.setItem("color-theme", "dark");
document.documentElement.classList.add('dark');
} else if (themeDarkIcon.classList.contains("hidden") == false) {
themeDarkIcon.classList.toggle("hidden");
themeSystemIcon.classList.toggle("hidden");
localStorage.removeItem("color-theme");
if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
document.documentElement.classList.add('dark');
}
} else {
/* default fallback to system preference */
themeSystemIcon.classList.remove("hidden");
themeLightIcon.classList.add("hidden");
themeDarkIcon.classList.add("hidden");
localStorage.removeItem("color-theme");
if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
document.documentElement.classList.add('dark');
}
}
}
function setupThemeIndicator() {
/* load theme variable from local storage */
if (localStorage.getItem("color-theme") === "dark") {
var themeParameter = "dark";
} else if (localStorage.getItem("color-theme") === "light") {
var themeParameter = "light";
} else {
var themeParameter = "system";
}
setThemeVisibility(themeParameter);
}
window.onload = setupThemeIndicator;
</script>
</header>

1317
themes/avian/package-lock.json generated Normal file

File diff suppressed because it is too large Load diff

28
themes/avian/package.json Normal file
View file

@ -0,0 +1,28 @@
{
"name": "hugo-theme-tailwindcss-starter",
"version": "0.4.0",
"description": "Starter files for a Hugo theme with Tailwindcss",
"main": "index.js",
"repository": "https://github.com/dirkolbrich/hugo-theme-tailwindcss-starter",
"author": "dirkolbrich <github@dirkolbrich.de>",
"license": "MIT",
"browserslist": [
"last 1 version",
"> 1%",
"maintained node versions",
"not dead"
],
"dependencies": {
"@tailwindcss/aspect-ratio": "^0.x",
"@tailwindcss/forms": "^0.x",
"@tailwindcss/line-clamp": "^0.x",
"@tailwindcss/typography": "^0.5.x",
"autoprefixer": "^10.x",
"postcss": "^8.x",
"postcss-cli": "^10.1.0",
"tailwindcss": "^3.x"
},
"volta": {
"node": "18.16.1"
}
}

12
themes/avian/theme.toml Normal file
View file

@ -0,0 +1,12 @@
name = "avian"
license = "MIT"
licenselink = "https://github.com/dirkolbrich/hugo-tailwindcss-starter-theme/blob/main/LICENSE"
description = "A boilerplate starter theme using Tailwind CSS."
homepage = "https://github.com/dirkolbrich/hugo-tailwindcss-starter-theme"
tags = ["Hugo", "Tailwind CSS", "theme", "starter", "boilerplate"]
features = []
min_version = "0.88.0"
[author]
name = "Dirk Olbrich"
homepage = "https://github.com/dirkolbrich/"