@emyrk/chronicle-panel-sdk

中文文档
0.3.2发布于 2026/11/01MITTypeScriptES Module零依赖构建来源已验证近 30 天下载 3520

TypeScript SDK,事件流解码器,以及"纪事"自定义面板的protobuf schemas.

中文使用文档
文档目录5 节
  1. 安装
  2. 主机 API
  3. 事件流和原生出
  4. 浮动分解
  5. 兼容性

@emyrk/chronicle-panel-sdk (英语)

TypeScript 合同和二进制事件流帮助器用于信任的"纪事"自定义面板.

安装

pnpm add @emyrk/chronicle-panel-sdk

主机 API

import type {
  ChroniclePanelPluginV1,
  ChroniclePanelSnapshotV1,
} from "@emyrk/chronicle-panel-sdk/v1";

快照包括实例和相遇时间,日志能力,玩家, 单位、当前选择、同步状态、面板尺寸和主题。 当日志 和盾有关, snapshot.instance.guild 包含其 id 财务报告和审定财务报表 name;没有盾牌的日志没有字段.

事件流和原生出

import { decodeEncounterPayloads } from "@emyrk/chronicle-panel-sdk/v1/events";
import { DamageSchema } from "@emyrk/chronicle-panel-sdk/v1/protobuf";

decodeEncounterPayloads() 解码纪事 chronicle-event-stream-v1 框架和生成的原生取出单项事件解码. 冠状原生出料来源随包在下方发布 proto/chronicle.proto。 。 。 .

自定义面板捆绑必须保持自成一体. 将此包装入 面板的输入或工人的文物,而不是为《纪事》留下 npm 导入 在运行时解决.

浮动分解

纪事拥有浮动 shell 、 拖放、 调整大小、 移动演示文稿以及 生命周期。 小组将其内容变成一个孤立的 " 阴影之旅 " :

const breakout = api.breakouts.open({
  title: "Warlock damage",
  initialPosition: { x: 200, y: 120 },
  initialSize: { width: 420, height: 300 },
  onClose: () => {
    // Drop any plugin state associated with this breakout.
  },
});

breakout.root.append(content);
// Optional; Chronicle also closes it when the panel unmounts.
breakout.close();

面板审判可同时进行8次突围. onClose 运行 在一次突围之后 不管它被《纪事》的外壳关闭过一次, 返回的手柄, closeAll(),或者面板撕毁. closeAll() 只关闭 由那个挂起的面板实例所拥有.

兼容性

  • 主机 API : 1
  • 明确计划: 1
  • 事件设定 : chronicle-event-stream-v1

打破版本主机或流合同的更改需要新版本 进入点。 添加的原生出地仍能与电线相容.

版本与发布记录

@emyrk/chronicle-panel-sdk 共发布 6 个版本,首次发布于 2026/10/07;过去 12 个月发布了 6 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.3.2latest2026/11/0112 天前
0.3.12026/10/081 个月前
0.3.02026/10/071 个月前
0.2.02026/10/071 个月前
0.1.02026/10/071 个月前
0.0.0-stage2026/10/071 个月前

关于 @emyrk/chronicle-panel-sdk 的常见问题

@emyrk/chronicle-panel-sdk 是什么?

TypeScript SDK,事件流解码器,以及"纪事"自定义面板的protobuf schemas.

如何安装 @emyrk/chronicle-panel-sdk?

在项目目录运行 npm install @emyrk/chronicle-panel-sdk,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:@bufbuild/protobuf(^2.11.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@emyrk/chronicle-panel-sdk 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@emyrk/chronicle-panel-sdk 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@emyrk/chronicle-panel-sdk 可以商用吗?

@emyrk/chronicle-panel-sdk 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@emyrk/chronicle-panel-sdk 的下载量有多少?

根据 npm 官方下载统计,@emyrk/chronicle-panel-sdk 在 2026/10/14 – 2026/11/12 这 30 天内被下载 3,520 次,日均约 117 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@emyrk/chronicle-panel-sdk 还在维护吗?

最新版本 0.3.2 发布于 2026/11/01(12 天前);至今共发布 6 个版本,其中过去 12 个月发布了 6 个;首次发布于 2026/10/07。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。