diff --git a/.vitepress/constants.ts b/.vitepress/constants.ts
index ff8eeaf6e..bec4e3597 100644
--- a/.vitepress/constants.ts
+++ b/.vitepress/constants.ts
@@ -14,7 +14,7 @@ export const commitRef = process.env.CF_PAGES
}">${process.env.CF_PAGES_COMMIT_SHA.slice(0, 8)}`
: 'dev'
-export const feedback = ``
+export const feedback = ``
export const search: DefaultTheme.Config['search'] = {
options: {
@@ -22,6 +22,7 @@ export const search: DefaultTheme.Config['search'] = {
options: {
tokenize: (text) => text.split(/[\n\r #%*,=/:;?[\]{}()&]+/u), // simplified charset: removed [-_.@] and non-english chars (diacritics etc.)
processTerm: (term, fieldName) => {
+ // biome-ignore lint/style/noParameterAssign: h
term = term
.trim()
.toLowerCase()
diff --git a/.vitepress/hooks/rss.ts b/.vitepress/hooks/rss.ts
index ad98b006d..81e4ca9f5 100644
--- a/.vitepress/hooks/rss.ts
+++ b/.vitepress/hooks/rss.ts
@@ -13,12 +13,12 @@ export async function generateFeed(config: SiteConfig): Promise {
const feed: Feed = new Feed({
id: meta.hostname,
link: meta.hostname,
- title: `FMHY blog`,
+ title: 'FMHY blog',
description: meta.description,
language: 'en-US',
image: 'https://github.com/fmhy.png',
favicon: `${meta.hostname}/favicon.ico`,
- copyright: `Copyright (c) 2023-present FMHY`
+ copyright: 'Copyright (c) 2023-present FMHY'
})
const posts: ContentData[] = await createContentLoader('posts/*.md', {
diff --git a/.vitepress/markdown/base64.ts b/.vitepress/markdown/base64.ts
index e7106c7c4..5fb9b66f8 100644
--- a/.vitepress/markdown/base64.ts
+++ b/.vitepress/markdown/base64.ts
@@ -1,4 +1,4 @@
-import { type MarkdownRenderer } from 'vitepress'
+import type { MarkdownRenderer } from 'vitepress'
// FIXME: tasky: possibly write less horror jank?
export function base64DecodePlugin(md: MarkdownRenderer) {
@@ -7,7 +7,7 @@ export function base64DecodePlugin(md: MarkdownRenderer) {
// Save the original rule for backticks
const defaultRender =
md.renderer.rules.code_inline ||
- function (tokens, idx, options, env, self) {
+ function (tokens, idx, options, _env, self) {
return self.renderToken(tokens, idx, options)
}
diff --git a/.vitepress/markdown/toggleStarred.ts b/.vitepress/markdown/toggleStarred.ts
index bef8e1655..7f2945cbb 100644
--- a/.vitepress/markdown/toggleStarred.ts
+++ b/.vitepress/markdown/toggleStarred.ts
@@ -11,8 +11,7 @@ export function toggleStarredPlugin(md: MarkdownRenderer) {
contentToken.content.startsWith(':star:')
) {
return ``
- } else {
- return self.renderToken(tokens, index, options)
}
+ return self.renderToken(tokens, index, options)
}
}
diff --git a/.vitepress/middleware/cors.ts b/.vitepress/middleware/cors.ts
index ff667ab18..4e8af9dd1 100644
--- a/.vitepress/middleware/cors.ts
+++ b/.vitepress/middleware/cors.ts
@@ -1,6 +1,11 @@
import { corsEventHandler } from 'nitro-cors'
-export default corsEventHandler((_event) => {}, {
- origin: '*',
- methods: '*'
-})
+export default corsEventHandler(
+ (_event) => {
+ /** no-op */
+ },
+ {
+ origin: '*',
+ methods: '*'
+ }
+)
diff --git a/.vitepress/theme/index.ts b/.vitepress/theme/index.ts
index f3760e891..00c6798b9 100644
--- a/.vitepress/theme/index.ts
+++ b/.vitepress/theme/index.ts
@@ -1,4 +1,4 @@
-import { type Theme } from 'vitepress'
+import type { Theme } from 'vitepress'
import DefaultTheme from 'vitepress/theme'
import Layout from './Layout.vue'
import Post from './PostLayout.vue'
diff --git a/.vitepress/utils.ts b/.vitepress/utils.ts
index dc8a2a788..37799b4b6 100644
--- a/.vitepress/utils.ts
+++ b/.vitepress/utils.ts
@@ -4,6 +4,7 @@ export function groupBy(
): Record {
return arr.reduce(
(groups, item) => {
+ // biome-ignore lint/suspicious/noAssignInExpressions:
;(groups[key(item)] ||= []).push(item)
return groups
},
diff --git a/biome.json b/biome.json
index 6e5283568..d2f27848a 100644
--- a/biome.json
+++ b/biome.json
@@ -1,51 +1,31 @@
{
"$schema": "https://biomejs.dev/schemas/1.8.3/schema.json",
"extends": ["@taskylizard/biome-config"],
+ "files": {
+ "ignore": [".vitepress/**/*.vue", ".vitepress/vue-shim.d.ts"]
+ },
"formatter": {
"enabled": false
},
+ "javascript": {
+ "globals": [
+ "defineNitroConfig",
+ "eventHandler",
+ "useRuntimeConfig",
+ "readValidatedBody",
+ "defineEventHandler"
+ ]
+ },
"linter": {
"rules": {
"style": {
- "noDefaultExport": "off",
- "useNamingConvention": {
- "level": "error",
+ "useFilenamingConvention": {
+ "level": "info",
"options": {
- "strictCase": false,
- "conventions": [
- {
- "selector": {
- "kind": "typeParameter"
- },
- "formats": ["PascalCase"]
- },
- {
- "selector": {
- "kind": "any"
- },
- "match": "[ab_]|(.{2,})"
- },
- {
- "selector": {
- "kind": "objectLiteralMember"
- },
- "match": ".*"
- },
- {
- "selector": {
- "kind": "typeMember"
- },
- "match": ".*"
- },
- {
- "selector": {
- "kind": "variable"
- },
- "match": ".*"
- }
- ]
+ "filenameCases": ["camelCase", "PascalCase"]
}
- }
+ },
+ "noDefaultExport": "off"
}
}
}