chore: bump docusaurus version to 3.x (#395)

升级 Docusaurus 版本至 3.x

参照 https://docusaurus.io/zh-CN/docs/migration/v3 升级指南。

Fixes #394 

/kind improvement

```release-note
None
```
This commit is contained in:
Ryan Wang
2024-08-09 22:12:40 +08:00
committed by GitHub
parent 4a53db88f4
commit 250c0180d7
537 changed files with 9282 additions and 7911 deletions

View File

@@ -117,6 +117,6 @@ halo:
```
6. 最终提供以下访问地址:
1. 网站首页:<http://localhost:8090>
2. Console 控制台:<http://localhost:8090/console>
3. UC 个人中心:<http://localhost:8090/uc>
1. 网站首页:[http://localhost:8090](http://localhost:8090)
2. Console 控制台:[http://localhost:8090/console](http://localhost:8090/console)
3. UC 个人中心:[http://localhost:8090/uc](http://localhost:8090/uc)

View File

@@ -8,8 +8,8 @@ title: 表单定义
FormKit 相关文档:
- Form Schema: <https://formkit.com/essentials/schema>
- FormKit Inputs: <https://formkit.com/inputs>
- Form Schema: [https://formkit.com/essentials/schema](https://formkit.com/essentials/schema)
- FormKit Inputs: [https://formkit.com/inputs](https://formkit.com/inputs)
:::tip
目前不支持 FormKit Pro 中的输入组件,但 Halo 额外提供了部分输入组件,将在下面文档列出。

View File

@@ -52,4 +52,4 @@ function handleSubmit () {
|---------|------------------------------------|---------|-----------------------------------------|
| `group` | string | 无,必填 | 定义组件所属的分组。 |
| `kind` | string | 无,必填 | 定义组件的种类。 |
| `value` | { [key: string]: string; } \| null | null | 可选,包含键值对的对象或空值,用于存储数据。 |
| `value` | \{ [key: string]: string; \} \| null \| null | 可选,包含键值对的对象或空值,用于存储数据。 |

View File

@@ -37,7 +37,7 @@ const items = [
| 属性名 | 类型 | 默认值 | 描述 |
|--------------|-----------------------------------------------------------|-----------|--------------------------------------------------|
| `items` | { label: string; value?: string \| boolean \| number; }[] | 无,必填 | 包含 `label` 和可选 `value` 的对象数组。 |
| `items` | \{ label: string; value?: string \| boolean \| number; \}[] | 无,必填 | 包含 `label` 和可选 `value` 的对象数组。 |
| `label` | string | 无,必填 | 组件的标签文本。 |
| `modelValue` | string \| boolean \| number | undefined | 可选,用于绑定到组件的值,可以是字符串、布尔值或数字。 |

View File

@@ -27,7 +27,7 @@ import { VButton } from "@halo-dev/components";
</template>
```
所有可用的基础组件以及文档可查阅:<https://halo-ui-components.pages.dev>
所有可用的基础组件以及文档可查阅:[https://halo-ui-components.pages.dev](https://halo-ui-components.pages.dev)
## 业务组件和指令

View File

@@ -27,7 +27,7 @@ const groupName = ref('my-test-group')
| 属性名 | 类型 | 默认值 | 描述 |
|---------------------|----------------------------------------------------------------|-----------|------------------------------|
| `restrictions` | Restrictions | undefined | 可选,指定任何限制。 |
| `meta` | Record<string, unknown> | undefined | 可选,要发送的额外元数据。 |
| `meta` | Record\<string, unknown\> | undefined | 可选,要发送的额外元数据。 |
| `autoProceed` | boolean | false | 可选,在某些操作后自动继续。 |
| `allowedMetaFields` | string[] | undefined | 可选,指定允许的元数据字段。 |
| `endpoint` | string | 无,必填 | 数据发送到的端点URL。 |

View File

@@ -85,7 +85,7 @@ export default definePlugin({
## 实现案例
- <https://github.com/halo-dev/plugin-s3>
- [https://github.com/halo-dev/plugin-s3](https://github.com/halo-dev/plugin-s3)
## 类型定义

View File

@@ -143,4 +143,4 @@ const handleSelect = async (url: string) => {
## 实现案例
- <https://github.com/halo-sigs/plugin-unsplash>
- [https://github.com/halo-sigs/plugin-unsplash](https://github.com/halo-sigs/plugin-unsplash)

View File

@@ -111,4 +111,4 @@ const stripHtmlTags = (str: string) => {
## 实现案例
- <https://github.com/halo-sigs/plugin-moments>
- [https://github.com/halo-sigs/plugin-moments](https://github.com/halo-sigs/plugin-moments)

View File

@@ -18,7 +18,7 @@ export default definePlugin({
```
:::info 提示
AnyExtension 类型来自 [Tiptap](https://github.com/ueberdosis/tiptap),这意味着 Halo 默认编辑器的扩展点返回类型与 Tiptap 的扩展完全一致Tiptap 的扩展文档可参考:<https://tiptap.dev/docs/editor/api/extensions>。此外Halo 也为默认编辑器的扩展提供了一些独有的参数,用于实现工具栏、指令等扩展。
AnyExtension 类型来自 [Tiptap](https://github.com/ueberdosis/tiptap),这意味着 Halo 默认编辑器的扩展点返回类型与 Tiptap 的扩展完全一致Tiptap 的扩展文档可参考:[https://tiptap.dev/docs/editor/api/extensions](https://tiptap.dev/docs/editor/api/extensions)。此外Halo 也为默认编辑器的扩展提供了一些独有的参数,用于实现工具栏、指令等扩展。
:::
### Halo 独有扩展
@@ -60,7 +60,7 @@ export interface ExtensionOptions {
![顶部工具栏扩展](/img/developer-guide/plugin/api-reference/ui/extension-points/default-editor-extension-toolbar.png)
<https://github.com/halo-sigs/richtext-editor/pull/16> 中,我们实现了对顶部工具栏的扩展,如果需要添加额外的功能,只需要在具体的 Tiptap Extension 中的 `addOptions` 中定义 `getToolbarItems` 函数即可,如:
[https://github.com/halo-sigs/richtext-editor/pull/16](https://github.com/halo-sigs/richtext-editor/pull/16) 中,我们实现了对顶部工具栏的扩展,如果需要添加额外的功能,只需要在具体的 Tiptap Extension 中的 `addOptions` 中定义 `getToolbarItems` 函数即可,如:
```ts
{
@@ -130,7 +130,7 @@ addOptions() {
![工具箱扩展](/img/developer-guide/plugin/api-reference/ui/extension-points/default-editor-extension-toolbox.png)
<https://github.com/halo-sigs/richtext-editor/pull/27> 中,我们实现了对编辑器工具箱区域的扩展,如果需要添加额外的功能,只需要在具体的 Tiptap Extension 中的 `addOptions` 中定义 `getToolboxItems` 函数即可,如:
[https://github.com/halo-sigs/richtext-editor/pull/27](https://github.com/halo-sigs/richtext-editor/pull/27) 中,我们实现了对编辑器工具箱区域的扩展,如果需要添加额外的功能,只需要在具体的 Tiptap Extension 中的 `addOptions` 中定义 `getToolboxItems` 函数即可,如:
```ts
{
@@ -201,7 +201,7 @@ Slash Command (斜杠命令)的扩展,可用于在当前行快捷执行功
![Slash Command 扩展](/img/developer-guide/plugin/api-reference/ui/extension-points/default-editor-extension-slash-command.png)
<https://github.com/halo-sigs/richtext-editor/pull/16> 中,我们实现了对 Slash Command 指令的扩展,如果需要添加额外的功能,只需要在具体的 Tiptap Extension 中的 `addOptions` 中定义 `getCommandMenuItems` 函数即可,如:
[https://github.com/halo-sigs/richtext-editor/pull/16](https://github.com/halo-sigs/richtext-editor/pull/16) 中,我们实现了对 Slash Command 指令的扩展,如果需要添加额外的功能,只需要在具体的 Tiptap Extension 中的 `addOptions` 中定义 `getCommandMenuItems` 函数即可,如:
```ts
{
@@ -263,7 +263,7 @@ addOptions() {
![悬浮菜单扩展](/img/developer-guide/plugin/api-reference/ui/extension-points/default-editor-extension-bubble-menu.png)
<https://github.com/halo-sigs/richtext-editor/pull/38> 中,我们重构了对编辑器悬浮区域的扩展,如果需要对某个块进行支持,只需要在具体的 Tiptap Extension 中的 `addOptions` 中定义 `getBubbleMenu` 函数即可,如:
[https://github.com/halo-sigs/richtext-editor/pull/38](https://github.com/halo-sigs/richtext-editor/pull/38) 中,我们重构了对编辑器悬浮区域的扩展,如果需要对某个块进行支持,只需要在具体的 Tiptap Extension 中的 `addOptions` 中定义 `getBubbleMenu` 函数即可,如:
```ts
{
@@ -296,7 +296,7 @@ interface BubbleMenuProps {
from?: number;
to?: number;
}) => boolean;
tippyOptions?: Record<string, unknown>; // 可自由定制悬浮菜单所用的 tippy 组件的选项
tippyOptions?: Record\<string, unknown\>; // 可自由定制悬浮菜单所用的 tippy 组件的选项
getRenderContainer?: (node: HTMLElement) => HTMLElement; // 悬浮菜单所基准的 DOM
defaultAnimation?: boolean; // 是否启用默认动画。默认为 true
}
@@ -373,7 +373,7 @@ addOptions() {
![拖拽功能扩展](/img/developer-guide/plugin/api-reference/ui/extension-points/default-editor-extension-drag.png)
<https://github.com/halo-sigs/richtext-editor/pull/48> 中,我们实现了对所有元素的拖拽功能,如果需要让当前扩展支持拖拽,只需要在具体的 Tiptap Extension 中的 `addOptions` 中定义 `getDraggable` 函数,并让其返回 true 即可。如:
[https://github.com/halo-sigs/richtext-editor/pull/48](https://github.com/halo-sigs/richtext-editor/pull/48) 中,我们实现了对所有元素的拖拽功能,如果需要让当前扩展支持拖拽,只需要在具体的 Tiptap Extension 中的 `addOptions` 中定义 `getDraggable` 函数,并让其返回 true 即可。如:
```ts
{
@@ -474,6 +474,6 @@ addOptions() {
## 实现案例
- <https://github.com/halo-sigs/plugin-hybrid-edit-block>
- <https://github.com/halo-sigs/plugin-katex>
- <https://github.com/halo-sigs/plugin-text-diagram>
- [https://github.com/halo-sigs/plugin-hybrid-edit-block](https://github.com/halo-sigs/plugin-hybrid-edit-block)
- [https://github.com/halo-sigs/plugin-katex](https://github.com/halo-sigs/plugin-katex)
- [https://github.com/halo-sigs/plugin-text-diagram](https://github.com/halo-sigs/plugin-text-diagram)

View File

@@ -179,10 +179,10 @@ code {
</style>
```
> 来源:<https://vuejs.org/examples/#markdown>
> 来源:[https://vuejs.org/examples/#markdown](https://vuejs.org/examples/#markdown)
## 实现案例
- <https://github.com/halo-sigs/plugin-stackedit>
- <https://github.com/halo-sigs/plugin-bytemd>
- <https://github.com/justice2001/halo-plugin-vditor>
- [https://github.com/halo-sigs/plugin-stackedit](https://github.com/halo-sigs/plugin-stackedit)
- [https://github.com/halo-sigs/plugin-bytemd](https://github.com/halo-sigs/plugin-bytemd)
- [https://github.com/justice2001/halo-plugin-vditor](https://github.com/justice2001/halo-plugin-vditor)

View File

@@ -2,7 +2,7 @@
export interface OperationItem<T> {
priority: number; // 排序优先级
component: Raw<Component>; // 菜单项组件
props?: Record<string, unknown>; // 菜单项组件属性
props?: Record\<string, unknown\>; // 菜单项组件属性
action?: (item?: T) => void; // 菜单项点击事件
label?: string; // 菜单项标题
hidden?: boolean; // 菜单项是否隐藏

View File

@@ -33,7 +33,7 @@ export interface PluginInstallationTab {
id: string; // 选项卡 ID
label: string; // 选项卡标题
component: Raw<Component>; // 选项卡面板组件
props?: Record<string, unknown>; // 选项卡面板组件属性
props?: Record\<string, unknown\>; // 选项卡面板组件属性
permissions?: string[]; // 选项卡 UI 权限
priority: number; // 选项卡排序优先级
}
@@ -41,4 +41,4 @@ export interface PluginInstallationTab {
## 实现案例
- <https://github.com/halo-dev/plugin-app-store>
- [https://github.com/halo-dev/plugin-app-store](https://github.com/halo-dev/plugin-app-store)

View File

@@ -33,7 +33,7 @@ export interface EntityFieldItem {
priority: number;
position: "start" | "end";
component: Raw<Component>;
props?: Record<string, unknown>;
props?: Record\<string, unknown\>;
permissions?: string[];
hidden?: boolean;
}
@@ -71,7 +71,7 @@ export default definePlugin({
## 实现案例
- <https://github.com/halo-dev/plugin-app-store>
- [https://github.com/halo-dev/plugin-app-store](https://github.com/halo-dev/plugin-app-store)
## 类型定义

View File

@@ -42,7 +42,7 @@ import OperationItem from "./interface/OperationItem.md";
## 实现案例
- <https://github.com/halo-dev/plugin-app-store>
- [https://github.com/halo-dev/plugin-app-store](https://github.com/halo-dev/plugin-app-store)
## 类型定义

View File

@@ -37,7 +37,7 @@ export interface PluginTab {
其中,`component` 组件可以注入inject以下属性
- `plugin`:当前插件对象,类型为 Ref<[Plugin](#plugin)>。
- `plugin`:当前插件对象,类型为 Ref\<[Plugin](#plugin)\>。
## 示例
@@ -77,7 +77,7 @@ const plugin = inject<Ref<Plugin | undefined>>("plugin");
## 实现案例
- <https://github.com/halo-dev/plugin-app-store>
- [https://github.com/halo-dev/plugin-app-store](https://github.com/halo-dev/plugin-app-store)
## 类型定义

View File

@@ -33,7 +33,7 @@ export interface EntityFieldItem {
priority: number;
position: "start" | "end";
component: Raw<Component>;
props?: Record<string, unknown>;
props?: Record\<string, unknown\>;
permissions?: string[];
hidden?: boolean;
}

View File

@@ -78,7 +78,7 @@ export default definePlugin({
## 实现案例
- <https://github.com/halo-dev/plugin-app-store>
- [https://github.com/halo-dev/plugin-app-store](https://github.com/halo-dev/plugin-app-store)
## 类型定义

View File

@@ -33,7 +33,7 @@ export interface ThemeListTab {
id: string; // 选项卡 ID
label: string; // 选项卡标题
component: Raw<Component>; // 选项卡面板组件
props?: Record<string, unknown>; // 选项卡面板组件属性
props?: Record\<string, unknown\>; // 选项卡面板组件属性
permissions?: string[]; // 选项卡 UI 权限
priority: number; // 选项卡排序优先级
}
@@ -41,4 +41,4 @@ export interface ThemeListTab {
## 实现案例
- <https://github.com/halo-dev/plugin-app-store>
- [https://github.com/halo-dev/plugin-app-store](https://github.com/halo-dev/plugin-app-store)

View File

@@ -56,7 +56,7 @@ spec:
- `spec.issues`:插件问题反馈地址,如果你的插件是开源在 GitHub 上,可以直接配置为 GitHub Issues 地址。
- `spec.displayName`:插件的显示名称,它通常是以少数几个字来概括插件的用途。
- `spec.description`:插件描述,用一段简短的说明来介绍插件的用途。
- `spec.license`:插件使用的软件协议,参考:<https://en.wikipedia.org/wiki/Software_license>
- `spec.license`:插件使用的软件协议,参考:[https://en.wikipedia.org/wiki/Software_license](https://en.wikipedia.org/wiki/Software_license)
Halo 的插件可以在两种模式下运行:`development``deployment`
`deployment`(默认)模式是插件创建的标准工作流程:为每个插件创建一个新的 Gradle 项目,编码插件(声明新的扩展点和/或添加新的扩展),将插件打包成一个 JAR 文件,部署 JAR 文件到 Halo。

View File

@@ -53,7 +53,7 @@ description: 了解插件项目的文件结构
- `resources` 下的 `plugin.yaml` 为插件的资源描述文件,它是必须的,它描述了插件的基本信息,包括插件的名称、版本、作者、描述、依赖等。
- `resources/console` 下的两个文件 `main.js``style.css` 是前端插件部分打包时输出的产物。一个插件可以没有前端部分,因此 `resources/console` 同样可以不存在。
:::caution 注意
:::warning 注意
从 2.11 开始Halo 支持了 UC 个人中心,且个人中心和 Console 的插件机制共享,所以为了避免歧义,`resources/console` 在后续版本会被重命名为 `resources/ui`,但同时也会兼容 `resources/console`
:::

View File

@@ -11,24 +11,24 @@ description: 这个例子展示了如何开发 Todo List 插件
1. 修改 `build.gradle` 中的 `group` 为你自己的,如:
```groovy
group = 'run.halo.tutorial'
```
```groovy
group = 'run.halo.tutorial'
```
2. 修改 `settings.gradle` 中的 `rootProject.name`
```groovy
rootProject.name = 'halo-plugin-todolist'
```
```groovy
rootProject.name = 'halo-plugin-todolist'
```
3. 修改插件的描述文件 `plugin.yaml`,它位于 `src/main/resources/plugin.yaml`。示例:
```yaml
apiVersion: plugin.halo.run/v1alpha1
kind: Plugin
metadata:
```yaml
apiVersion: plugin.halo.run/v1alpha1
kind: Plugin
metadata:
name: todolist
spec:
spec:
enabled: true
requires: ">=2.0.0"
author:
@@ -43,7 +43,7 @@ description: 这个例子展示了如何开发 Todo List 插件
license:
- name: "GPL-3.0"
url: "https://github.com/halo-dev/plugin-starter/blob/main/LICENSE"
```
```
参考链接:
@@ -85,9 +85,9 @@ description: 这个例子展示了如何开发 Todo List 插件
2. 然后在项目目录执行命令
```shell
./gradlew build
```
```shell
./gradlew build
```
3. 使用 `IntelliJ IDEA` 打开 Halo参考 [Halo 开发环境运行](../../core/run.md) 及 [插件入门](../hello-world.md) 配置插件的运行模式和路径:

View File

@@ -9,12 +9,12 @@ description: 了解如何构建你的第一个插件并在 Halo 中使用它。
1. 打开 [halo-dev/plugin-starter](https://github.com/halo-dev/plugin-starter)。
> 这是一个插件的初始模板,你可以基于它来开发自己的插件。
> 这是一个插件的初始模板,你可以基于它来开发自己的插件。
2. 点击 `Use this template` -> `Create a new repository`
3. 如图所示填写仓库名后点击 `Create repository from template`
![create-repository-for-hello-world-plugin](/img/create-repository-for-hello-world-plugin.png)
![create-repository-for-hello-world-plugin](/img/create-repository-for-hello-world-plugin.png)
你现在已经基于 Halo 插件模板创建了自己的存储库。接下来,你需要将它克隆到你的计算机上。

View File

@@ -79,7 +79,7 @@ spec:
为了方便主题开发者从 1.x 迁移,我们提供了工具用于迁移配置文件。
工具仓库地址:<https://github.com/halo-sigs/convert-theme-config-to-next>
工具仓库地址:[https://github.com/halo-sigs/convert-theme-config-to-next](https://github.com/halo-sigs/convert-theme-config-to-next)
```bash
# 1.x 版本主题

View File

@@ -48,7 +48,7 @@ categoryFinder.getByNames(names)
### 返回值
List<[#CategoryVo](#categoryvo)>
List\<[#CategoryVo](#categoryvo)\>
### 示例
@@ -75,7 +75,7 @@ categoryFinder.list(page,size)
### 返回值
[#ListResult<CategoryVo\>](#listresultcategoryvo)
[#ListResult\<CategoryVo\>](#listresultcategoryvo)
### 示例
@@ -103,7 +103,7 @@ categoryFinder.listAll()
### 返回值
List<[#CategoryVo](#categoryvo)>
List\<[#CategoryVo](#categoryvo)\>
### 示例
@@ -131,7 +131,7 @@ categoryFinder.listAsTree()
### 返回值
List<[#CategoryTreeVo](#categorytreevo)>
List\<[#CategoryTreeVo](#categorytreevo)\>
### 示例
@@ -172,7 +172,7 @@ categoryFinder.getBreadcrumbs('category-foo')
### 返回值
List<[#CategoryVo](#categoryvo)>
List\<[#CategoryVo](#categoryvo)\>
### 示例
@@ -191,7 +191,7 @@ List<[#CategoryVo](#categoryvo)>
<CategoryVo />
### ListResult<CategoryVo\>
### ListResult\<CategoryVo\>
```json title="ListResult<CategoryVo>"
{

View File

@@ -53,7 +53,7 @@ commentFinder.list(ref,page,size)
### 返回值
[#ListResult<CommentVo\>](#listresultcommentvo)
[#ListResult\<CommentVo\>](#listresultcommentvo)
### 示例
@@ -84,7 +84,7 @@ commentFinder.listReply(commentName,page,size)
### 返回值
[#ListResult<ReplyVo\>](#listresultreplyvo)
[#ListResult\<ReplyVo\>](#listresultreplyvo)
### 示例
@@ -103,7 +103,7 @@ commentFinder.listReply(commentName,page,size)
<CommentVo />
### ListResult<CommentVo\>
### ListResult\<CommentVo\>
```json title="ListResult<CommentVo>"
{
@@ -125,7 +125,7 @@ commentFinder.listReply(commentName,page,size)
<ReplyVo />
### ListResult<ReplyVo\>
### ListResult\<ReplyVo\>
```json title="ListResult<ReplyVo>"
{

View File

@@ -47,7 +47,7 @@ contributorFinder.getContributors(names)
### 返回值
List<[#ContributorVo](#contributorvo)>
List\<[#ContributorVo](#contributorvo)\>
### 示例

View File

@@ -115,7 +115,7 @@ postFinder.listAll();
### 返回值
List<[#ListedPostVo](#listedpostvo)>
List\<[#ListedPostVo](#listedpostvo)\>
### 示例
@@ -144,7 +144,7 @@ postFinder.list(page, size);
### 返回值
[#ListResult<ListedPostVo\>](#listresultlistedpostvo)
[#ListResult\<ListedPostVo\>](#listresultlistedpostvo)
### 示例
@@ -174,7 +174,7 @@ postFinder.listByCategory(page, size, categoryName);
### 返回值
[#ListResult<ListedPostVo\>](#listresultlistedpostvo)
[#ListResult\<ListedPostVo\>](#listresultlistedpostvo)
### 示例
@@ -204,7 +204,7 @@ postFinder.listByTag(page, size, tag);
### 返回值
[#ListResult<ListedPostVo\>](#listresultlistedpostvo)
[#ListResult\<ListedPostVo\>](#listresultlistedpostvo)
### 示例
@@ -234,7 +234,7 @@ postFinder.listByOwner(page, size, owner);
### 返回值
[#ListResult<ListedPostVo\>](#listresultlistedpostvo)
[#ListResult\<ListedPostVo\>](#listresultlistedpostvo)
### 示例
@@ -263,7 +263,7 @@ postFinder.archives(page, size);
### 返回值
[#ListResult<PostArchiveVo\>](#listresultpostarchivevo)
[#ListResult\<PostArchiveVo\>](#listresultpostarchivevo)
### 示例
@@ -301,7 +301,7 @@ postFinder.archives(page, size, year);
### 返回值
[#ListResult<PostArchiveVo\>](#listresultpostarchivevo)
[#ListResult\<PostArchiveVo\>](#listresultpostarchivevo)
### 示例
@@ -340,7 +340,7 @@ postFinder.archives(page, size, year, month);
### 返回值
[#ListResult<PostArchiveVo\>](#listresultpostarchivevo)
[#ListResult\<PostArchiveVo\>](#listresultpostarchivevo)
### 示例
@@ -401,13 +401,13 @@ postFinder.archives(page, size, year, month);
### ListedPostVo
<ListedPostVo />
\<ListedPostVo \/\>
- [#CategoryVo](#categoryvo)
- [#TagVo](#tagvo)
- [#ContributorVo](#contributorvo)
### ListResult<ListedPostVo\>
### ListResult\<ListedPostVo\>
```json title="ListResult<ListedPostVo>"
{
@@ -441,7 +441,7 @@ postFinder.archives(page, size, year, month);
- [#ListedPostVo](#listedpostvo)
### ListResult<PostArchiveVo\>
### ListResult\<PostArchiveVo\>
```json title="ListResult<PostArchiveVo>"
{

View File

@@ -77,7 +77,7 @@ singlePageFinder.list(page,size)
### 返回值
[#ListResult<ListedSinglePageVo\>](#listresultlistedsinglepagevo)
[#ListResult\<ListedSinglePageVo\>](#listresultlistedsinglepagevo)
### 示例
@@ -104,7 +104,7 @@ singlePageFinder.list(page,size)
<ListedSinglePageVo />
### ListResult<ListedSinglePageVo\>
### ListResult\<ListedSinglePageVo\>
```json title="ListResult<ListedSinglePageVo>"
{

View File

@@ -47,7 +47,7 @@ tagFinder.getByNames(names)
### 返回值
List<[#TagVo](#tagvo)>
List\<[#TagVo](#tagvo)\>
### 示例
@@ -74,7 +74,7 @@ tagFinder.list(page,size)
### 返回值
[#ListResult<TagVo\>](#listresulttagvo)
[#ListResult\<TagVo\>](#listresulttagvo)
### 示例
@@ -102,7 +102,7 @@ tagFinder.listAll()
### 返回值
List<[#TagVo](#tagvo)>
List\<[#TagVo](#tagvo)\>
### 示例
@@ -120,7 +120,7 @@ List<[#TagVo](#tagvo)>
<TagVo />
### ListResult<TagVo\>
### ListResult\<TagVo\>
```json title="ListResult<TagVo>"
{

View File

@@ -123,7 +123,7 @@ Setting 资源的 `metadata.name` 必须和 `theme.yaml` 中的 `spec.settingNam
为了方便主题开发者从 1.x 迁移,我们提供了工具用于迁移设置表单配置文件。
工具仓库地址:<https://github.com/halo-sigs/convert-theme-config-to-next>
工具仓库地址:[https://github.com/halo-sigs/convert-theme-config-to-next](https://github.com/halo-sigs/convert-theme-config-to-next)
```bash
# 1.x 版本主题

View File

@@ -22,7 +22,7 @@ import ListedPostVo from "../vo/_ListedPostVo.md";
#### 变量类型
[#UrlContextListResult<PostArchiveVo\>](#urlcontextlistresultpostarchivevo)
[#UrlContextListResult\<PostArchiveVo\>](#urlcontextlistresultpostarchivevo)
#### 示例
@@ -65,7 +65,7 @@ import ListedPostVo from "../vo/_ListedPostVo.md";
### ListedPostVo
<ListedPostVo />
\<ListedPostVo \/\>
- [#CategoryVo](#categoryvo)
- [#TagVo](#tagvo)
@@ -87,7 +87,7 @@ import ListedPostVo from "../vo/_ListedPostVo.md";
- [#ListedPostVo](#listedpostvo)
### UrlContextListResult<PostArchiveVo\>
### UrlContextListResult\<PostArchiveVo\>
```json title="UrlContextListResult<PostArchiveVo>"
{

View File

@@ -26,7 +26,7 @@ import ListedPostVo from "../vo/_ListedPostVo.md"
#### 变量类型
[#UrlContextListResult<ListedPostVo\>](#urlcontextlistresultlistedpostvo)
[#UrlContextListResult\<ListedPostVo\>](#urlcontextlistresultlistedpostvo)
#### 示例
@@ -77,13 +77,13 @@ import ListedPostVo from "../vo/_ListedPostVo.md"
### ListedPostVo
<ListedPostVo />
\<ListedPostVo \/\>
- [#CategoryVo](#categoryvo)
- [#TagVo](#tagvo)
- [#ContributorVo](#contributorvo)
### UrlContextListResult<ListedPostVo\>
### UrlContextListResult\<ListedPostVo\>
```json title="UrlContextListResult<ListedPostVo>"
{

View File

@@ -16,7 +16,7 @@ import CategoryTreeVo from "../vo/_CategoryTreeVo.md"
#### 变量类型
List<[#CategoryTreeVo](#categorytreevo)>
List\<[#CategoryTreeVo](#categorytreevo)\>
#### 示例

View File

@@ -25,7 +25,7 @@ import ListedPostVo from "../vo/_ListedPostVo.md"
#### 变量类型
[#UrlContextListResult<ListedPostVo\>](#urlcontextlistresultlistedpostvo)
[#UrlContextListResult\<ListedPostVo\>](#urlcontextlistresultlistedpostvo)
#### 示例
@@ -78,13 +78,13 @@ import ListedPostVo from "../vo/_ListedPostVo.md"
### ListedPostVo
<ListedPostVo />
\<ListedPostVo \/\>
- [#CategoryVo](#categoryvo)
- [#TagVo](#tagvo)
- [#ContributorVo](#contributorvo)
### UrlContextListResult<ListedPostVo\>
### UrlContextListResult\<ListedPostVo\>
```json title="UrlContextListResult<ListedPostVo>"
{

View File

@@ -19,7 +19,7 @@ import ListedPostVo from "../vo/_ListedPostVo.md"
#### 变量类型
[#UrlContextListResult<ListedPostVo\>](#urlcontextlistresultlistedpostvo)
[#UrlContextListResult\<ListedPostVo\>](#urlcontextlistresultlistedpostvo)
#### 示例
@@ -71,13 +71,13 @@ import ListedPostVo from "../vo/_ListedPostVo.md"
### ListedPostVo
<ListedPostVo />
\<ListedPostVo \/\>
- [#CategoryVo](#categoryvo)
- [#TagVo](#tagvo)
- [#ContributorVo](#contributorvo)
### UrlContextListResult<ListedPostVo\>
### UrlContextListResult\<ListedPostVo\>
```json title="UrlContextListResult<ListedPostVo>"
{

View File

@@ -25,7 +25,7 @@ import ListedPostVo from "../vo/_ListedPostVo.md"
#### 变量类型
[#UrlContextListResult<ListedPostVo\>](#urlcontextlistresultlistedpostvo)
[#UrlContextListResult\<ListedPostVo\>](#urlcontextlistresultlistedpostvo)
#### 示例
@@ -78,13 +78,13 @@ import ListedPostVo from "../vo/_ListedPostVo.md"
### ListedPostVo
<ListedPostVo />
\<ListedPostVo \/\>
- [#CategoryVo](#categoryvo)
- [#TagVo](#tagvo)
- [#ContributorVo](#contributorvo)
### UrlContextListResult<ListedPostVo\>
### UrlContextListResult\<ListedPostVo\>
```json title="UrlContextListResult<ListedPostVo>"
{

View File

@@ -16,7 +16,7 @@ import TagVo from '../vo/_TagVo.md'
#### 变量类型
List<[#TagVo](#tagvo)>
List\<[#TagVo](#tagvo)\>
#### 示例