feat: add toc with accordion animation, add optional toc toggle, lower heti css priority

This commit is contained in:
radishzzz 2025-03-28 00:26:32 +00:00
parent ab74c0abdf
commit dc17f304c1
22 changed files with 280 additions and 167 deletions

View file

@ -14,7 +14,7 @@ const postsCollection = defineCollection({
// Advanced
draft: z.boolean().optional().default(false),
pin: z.number().int().min(0).max(99).optional().default(0),
toc: z.boolean().optional().default(false),
toc: z.boolean().optional().default(true),
lang: z.enum(['', ...allLocales]).optional().default(''),
abbrlink: z.string().optional().default('').refine(
abbrlink => !abbrlink || /^[a-z0-9\-]*$/.test(abbrlink),

View file

@ -231,7 +231,7 @@ Pins the article to the top. The higher the number, the higher the priority of t
#### toc
Enables the table of contents. This feature is not yet implemented.
Generate table of contents. Set to false to disable automatic generation. Default is true.
#### lang
@ -243,15 +243,15 @@ Specifies the article language. Only one language can be specified. If not speci
# moreLocales: ['es', 'ru']
# lang: ''
src/content/posts/apple.md -> example.com/posts/apple/
-> example.com/es/posts/apple/
-> example.com/ru/posts/apple/
src/content/posts/apple.md -> example.com/posts/apple/
-> example.com/es/posts/apple/
-> example.com/ru/posts/apple/
# lang: en
src/content/posts/apple.md -> example.com/posts/apple/
src/content/posts/apple.md -> example.com/posts/apple/
# lang: es
src/content/posts/banana.md -> example.com/es/posts/banana/
src/content/posts/apple.md -> example.com/es/posts/apple/
# lang: ru
src/content/posts/orange.md -> example.com/ru/posts/orange/
src/content/posts/apple.md -> example.com/ru/posts/apple/
```
#### abbrlink

View file

@ -231,7 +231,7 @@ Fija el artículo en la parte superior. Cuanto mayor sea el número, mayor será
#### toc
Habilita la tabla de contenidos. Esta función aún no está implementada.
¿Generar índice? Si se establece en false, se desactiva la generación automática. Valor predeterminado: true.
#### lang
@ -243,15 +243,15 @@ Especifica el idioma del artículo. Solo se puede especificar un idioma. Si no s
# moreLocales: ['es', 'ru']
# lang: ''
src/content/posts/apple.md -> example.com/posts/apple/
-> example.com/es/posts/apple/
-> example.com/ru/posts/apple/
src/content/posts/apple.md -> example.com/posts/apple/
-> example.com/es/posts/apple/
-> example.com/ru/posts/apple/
# lang: en
src/content/posts/apple.md -> example.com/posts/apple/
src/content/posts/apple.md -> example.com/posts/apple/
# lang: es
src/content/posts/banana.md -> example.com/es/posts/banana/
src/content/posts/apple.md -> example.com/es/posts/apple/
# lang: ru
src/content/posts/orange.md -> example.com/ru/posts/orange/
src/content/posts/apple.md -> example.com/ru/posts/apple/
```
#### abbrlink

View file

@ -231,7 +231,7 @@ abbrlink: theme-guide
#### toc
目次を有効にします。この機能はまだ実装されていません
目次を自動生成するかどうか。false に設定すると自動生成が無効になり、デフォルトは true
#### lang
@ -243,15 +243,15 @@ abbrlink: theme-guide
# moreLocales: ['es', 'ru']
# lang: ''
src/content/posts/apple.md -> example.com/posts/apple/
-> example.com/es/posts/apple/
-> example.com/ru/posts/apple/
src/content/posts/apple.md -> example.com/posts/apple/
-> example.com/es/posts/apple/
-> example.com/ru/posts/apple/
# lang: en
src/content/posts/apple.md -> example.com/posts/apple/
src/content/posts/apple.md -> example.com/posts/apple/
# lang: es
src/content/posts/banana.md -> example.com/es/posts/banana/
src/content/posts/apple.md -> example.com/es/posts/apple/
# lang: ru
src/content/posts/orange.md -> example.com/ru/posts/orange/
src/content/posts/apple.md -> example.com/ru/posts/apple/
```
#### abbrlink

View file

@ -231,7 +231,7 @@ abbrlink: theme-guide
#### toc
Включает оглавление. Эта функция еще не реализована.
Генерировать оглавление. При значении false автоматическая генерация отключается. По умолчанию: true.
#### lang
@ -243,15 +243,15 @@ abbrlink: theme-guide
# moreLocales: ['es', 'ru']
# lang: ''
src/content/posts/apple.md -> example.com/posts/apple/
-> example.com/es/posts/apple/
-> example.com/ru/posts/apple/
src/content/posts/apple.md -> example.com/posts/apple/
-> example.com/es/posts/apple/
-> example.com/ru/posts/apple/
# lang: en
src/content/posts/apple.md -> example.com/posts/apple/
src/content/posts/apple.md -> example.com/posts/apple/
# lang: es
src/content/posts/banana.md -> example.com/es/posts/banana/
src/content/posts/apple.md -> example.com/es/posts/apple/
# lang: ru
src/content/posts/orange.md -> example.com/ru/posts/orange/
src/content/posts/apple.md -> example.com/ru/posts/apple/
```
#### abbrlink

View file

@ -231,7 +231,7 @@ abbrlink: theme-guide
#### toc
是否開啟目錄。尚未實現該功能
是否生成目錄。設為 false 時停用自動生成,預設為 true
#### lang
@ -243,15 +243,15 @@ abbrlink: theme-guide
# moreLocales: ['es', 'ru']
# lang: ''
src/content/posts/apple.md -> example.com/posts/apple/
-> example.com/es/posts/apple/
-> example.com/ru/posts/apple/
src/content/posts/apple.md -> example.com/posts/apple/
-> example.com/es/posts/apple/
-> example.com/ru/posts/apple/
# lang: en
src/content/posts/apple.md -> example.com/posts/apple/
src/content/posts/apple.md -> example.com/posts/apple/
# lang: es
src/content/posts/banana.md -> example.com/es/posts/banana/
src/content/posts/apple.md -> example.com/es/posts/apple/
# lang: ru
src/content/posts/orange.md -> example.com/ru/posts/orange/
src/content/posts/apple.md -> example.com/ru/posts/apple/
```
#### abbrlink

View file

@ -231,7 +231,7 @@ abbrlink: theme-guide
#### toc
是否开启目录。尚未实现该功能
是否生成目录。设为 false 时关闭自动生成,默认为 true
#### lang
@ -243,15 +243,15 @@ abbrlink: theme-guide
# moreLocales: ['es', 'ru']
# lang: ''
src/content/posts/apple.md -> example.com/posts/apple/
-> example.com/es/posts/apple/
-> example.com/ru/posts/apple/
src/content/posts/apple.md -> example.com/posts/apple/
-> example.com/es/posts/apple/
-> example.com/ru/posts/apple/
# lang: en
src/content/posts/apple.md -> example.com/posts/apple/
src/content/posts/apple.md -> example.com/posts/apple/
# lang: es
src/content/posts/banana.md -> example.com/es/posts/banana/
src/content/posts/apple.md -> example.com/es/posts/apple/
# lang: ru
src/content/posts/orange.md -> example.com/ru/posts/orange/
src/content/posts/apple.md -> example.com/ru/posts/apple/
```
#### abbrlink