@faiber/faiber-flow

中文文档
2.7.0发布于 2026/11/05TypeScriptES Module近 30 天下载 3816

被键入的"流"定义,图表验证,事件执行,目录同步,活性触发发现,运行细节和集成元数据.

中文使用文档

@faiber/faiber-流量

被键入的"流"定义,图表验证,事件执行,目录同步,活性触发发现,运行细节和集成元数据.

npm install @faiber/faiber-flow
import { FaiberClient, MemoryTokenProvider } from '@faiber/sdk-core';
import { FlowApi } from '@faiber/faiber-flow';

const client = new FaiberClient('flow', {
  domains: { flow: process.env.FAIBER_FLOW_URL! },
  tokenProvider: new MemoryTokenProvider(),
  axios: { withCredentials: true, timeout: 15_000 },
});
const api = new FlowApi(client);
const created = await api.flows.create({
  name: 'Checkout completed',
  trigger_key: 'event.checkout.completed',
  enabled: false,
});
const validation = await api.validate(created.data.data.id);
const registry = await api.activeTriggers({ service: 'ledger' });
const runs = await api.runs.list({ limit: 20 });
// Run detail includes flattened run fields, nullable context and ordered steps.
if (runs.data.data[0]) {
  const detail = await api.runs.show(runs.data.data[0].id);
  console.log(detail.data.data.status, detail.data.data.steps);
}

所有18个挂载的HTTP操作均可调用 api.operations,并列出出口投入、查询和答复。 方便方法包括: flows, (中文(简体) ), runs, (中文(简体) ), validate, (中文(简体) ), triggers, (中文(简体) ), actions, (中文(简体) ), activeTriggers, (中文(简体) ), syncCatalog, (中文(简体) ), importFlows, (中文(简体) ), emitEvent 财务报告和审定财务报表 integration。所有电话保留完整的 Axios 响应、状态、信头和请求ID。 成功数据被包裹为 {status: 'success', message: 'ok', data}列表是该信封内的数组; Flow不提供页码信封。 运行 limit 默认为 50 且没有应用程序夹.

流程创建用途 name, (中文(简体) ), trigger_key选项 slug, (中文(简体) ), enabled 财务报告和审定财务报表 graph; 启用默认错误,省略的图表创建了单一的触发节点. 一个图有 nodes 财务报告和审定财务报表 edges编辑器位置、节点数据、边缘数据、下游有效载荷和历史执行背景都是故意的JSON值,因为服务存储可扩展的JSON文件。 PUT更新是部分的;无效并省略了字段保留了已存在的值. 图形或触发改变版本的增量。 删除返回一个包含 {deleted: true}。 。 。 .

importFlows 接受流程条目、事件桥和桥群。 使用 dry_run: true 以验证和报告交易回滚后的拟议修改。 正常的进口通过正常的弹片增高;相同的复读报告条目不变. 导入桥启用了真实的默认, 不同于直接创建 . version 财务报告和审定财务报表 source 被接受的元数据,目前被后端忽略.

emitEvent(eventKey, json) 接受任何 JSON 值,包括无效。 事件密钥必须包含1–200个 ASCII 字母,数字,点,下划线或连字符,没有前导/后导/双点. 反应是 HTTP 200 与 {accepted: true, event_id, trigger_key}. 个人流量执行失败仍可产生可接受的反应;检查后进行。 每一次重复的事件呼吁都会产生新的事件并可以重复下游的行动. 登记册通知前的变异持续存在,因此,通知错误可随承诺的变化而发生。 复试前调和相. Catalog 同步返回计数和每次服务失败, 甚至在 HTTP 200 下; 它不返回一个 synced 布尔.

配置 a TokenProvider 用于熊鼠授权,或 withCredentials 用于安全的 Http 只有饼干会话。 偏好饼干或内出类比;持久浏览器存储是一种明确的安全取舍. 每个SDK呼叫都使用共享 FaiberClient。宣布的路由权限为 flow:read/create/update/delete, (中文(简体) ), flow_run:read, (中文(简体) ), catalog:sync,以及 flow:execute; 导入同时声明创建和更新。 事件明确显示检查 flow:execute 或者说 * 内 AuthContext其他操作人员没有当地许可/所有人/租户检查。 流程安装了导入的全球认证提取,外部依赖性被固定在 291c81a67bc302d667fb807da2af3240598bee52 在生产清单 和坚定的锁文件。 检查共享的境内流离失所者源登记许可元数据,并信任网关身份信头,并进行回溯;在网关执行身份和权限。 仅发送证书并不能建立后端授权执行.

Axios 选项、信头、适配器、拦截器、超时和 AbortSignal 取消被接受为最后论据。 应用程序错误使用 {error: string}:验证400,缺失UUID记录404,重复的sults 409,持久性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性活性 保留轴出错 response.status 和原始错误正文。 无效的保存图返回 HTTP 200 与 valid: false 财务报告和审定财务报表 errors。 。 。 .

const controller = new AbortController();
try {
  await api.emitEvent('checkout.completed', { total: 1200 }, { signal: controller.signal });
} catch (error) {
  // Inspect the Axios error response; check current runs before retrying execution.
}

使用 @faiber/faiber-ts-sdk 用于一个客户端配置中的多个 Faiber 服务.

版本与发布记录

@faiber/faiber-flow 共发布 65 个版本,首次发布于 2026/07/18;过去 12 个月发布了 65 个版本。

版本发布日期距今
2.7.0latest2026/11/059 天前
2.6.02026/11/049 天前
2.5.02026/11/049 天前
2.4.02026/11/0310 天前
2.3.02026/11/0211 天前
2.2.02026/11/0212 天前

关于 @faiber/faiber-flow 的常见问题

@faiber/faiber-flow 是什么?

被键入的"流"定义,图表验证,事件执行,目录同步,活性触发发现,运行细节和集成元数据.

如何安装 @faiber/faiber-flow?

在项目目录运行 npm install @faiber/faiber-flow,或使用 pnpm add / yarn add / bun add。

@faiber/faiber-flow 支持 TypeScript 吗?

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

@faiber/faiber-flow 支持 ESM 还是 CommonJS?

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

@faiber/faiber-flow 可以商用吗?

@faiber/faiber-flow 使用 未声明 许可。package.json 没有声明许可证。没有许可证的代码默认保留全部权利,商用前请联系作者或查看仓库中的 LICENSE 文件。以上为概括,不构成法律意见,请以许可原文为准。

@faiber/faiber-flow 的下载量有多少?

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

@faiber/faiber-flow 还在维护吗?

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