Release Notes: v4.11
过滤器与动态配置
在这个版本中,我们首先支持了使用 minato 的表达式语法作为 $filter
过滤会话上下文。在此基础上我们又提供了 Schema.computed()
类型,它可用于定义根据会话动态取值的配置项。这两个特性意味着用户真正获得了根据会话细粒度控制插件的能力。
指令管理器
发布了全新的 @koishijs/plugin-commands 插件,它提供了一个控制台页面,允许用户在线管理指令的各项配置和层级关系。得益于过滤器机制,现在指令也可以在不同的平台和群组内拥有不同的行为了。
插件市场优化
这个版本中我们对 @koishijs/plugin-market 的功能做了全面的优化:
- 现在能显示
peerDependencies
是否可选了 - 当打开插件选择对话框时自动聚焦输入框
- 支持了导出
usage
以提供插件的配置说明 - 优化了搜索框下方插件数量的显示
- 支持了更多标识和搜索语法,包括不安全、预览版本和近期新增
- 插件配置界面顶部增加了了链接导航栏
- 当更新插件主版本时将显示兼容性提示
- 不再显示「所有插件」分组,优化了插件配置体验
- 当移除插件或插件组时将弹窗进行确认,同时禁止停用部分核心插件
- 当检测到新的连接时,根据上一次刷新的时间自动刷新插件市场
- 新增了左侧栏用于过滤和排序功能,并全面完善了分类系统
- 优化了插件卡片的悬浮和点击效果
- 修复了十余个 bug,这里就不一一介绍了
状态栏更新
此外,我们还将 status 插件拆分为 status 和 analytics 两个插件,后者承担了数据统计和图标渲染的功能。对于前者,我们还引入了 envinfo 插件的功能:在控制台的左下角显示环境信息和版本号。在 status 插件之外,我们还内置了前端插件加载的进度条,已获得更好的初始加载体验。