@coding-flow/flow-pc-approval

中文文档
0.2.17发布于 2026/11/07Apache-2.0TypeScriptES Module近 30 天下载 1828

流程引擎 pc 格式批准组件

中文使用文档
文档目录17 节
  1. 简介
  2. 依赖关系
  3. Setup
  4. 开发
  5. 核心功能
  6. 待办列表
  7. 已办列表
  8. 我发起的
  9. 审批处理
  10. 流程详情
  11. 审批记录
  12. 模块结构
  13. 使用示例
  14. 待办页面
  15. 审批操作
  16. 审批动作
  17. Learn more

@coding-flow/flow-pc-approval

Flow Engine PC 端审批组件库,提供待办/已办/审批处理等功能。

简介

flow-pc-approval 是 Flow Engine PC 端的审批页面组件库,提供:

  • 待办列表(我的待办)
  • 已办列表(我的已办)
  • 我发起的(我的申请)
  • 审批处理(审批操作)
  • 流程详情查看
  • 审批记录展示

依赖关系

  • 依赖: @coding-flow/flow-core、@coding-flow/flow-types、@coding-flow/flow-icons、@coding-flow/flow-approval-presenter、@coding-flow/flow-pc-ui、@coding-flow/flow-pc-form

Setup

安装依赖:

pnpm install

开发

构建组件库:

pnpm run build

监听模式构建:

pnpm run dev

核心功能

待办列表

我的待办任务列表:

  • 任务筛选(按状态、类型、时间等)
  • 任务搜索
  • 批量操作
  • 分页加载
import { TodoList } from '@coding-flow/flow-pc-approval';

<TodoList
  filters={filters}
  onTaskClick={handleTaskClick}
  onBatchApprove={handleBatchApprove}
/>

已办列表

我的已办任务列表:

  • 历史记录查询
  • 筛选和搜索
  • 查看审批详情
import { DoneList } from '@coding-flow/flow-pc-approval';

<DoneList
  filters={filters}
  onTaskClick={handleTaskClick}
/>

我发起的

我发起的流程列表:

  • 流程状态查看
  • 流程跟踪
  • 撤回/取消操作
import { MyRequestsList } from '@coding-flow/flow-pc-approval';

<MyRequestsList
  filters={filters}
  onFlowClick={handleFlowClick}
  onWithdraw={handleWithdraw}
/>

审批处理

审批操作组件:

  • 表单展示(只读/编辑)
  • 审批意见填写
  • 审批操作(通过/拒绝/保存/转交/退回/委托)
  • 附件上传
import { ApprovalForm } from '@coding-flow/flow-pc-approval';

<ApprovalForm
  taskId={taskId}
  formSchema={formSchema}
  formValues={formValues}
  permissions={fieldPermissions}
  onApprove={handleApprove}
  onReject={handleReject}
  onSave={handleSave}
  onTransfer={handleTransfer}
  onReturn={handleReturn}
  onDelegate={handleDelegate}
/>

流程详情

流程详情查看:

  • 流程基本信息
  • 节点状态展示
  • 审批记录时间轴
  • 表单数据展示
import { FlowDetail } from '@coding-flow/flow-pc-approval';

<FlowDetail
  workflowId={workflowId}
  instanceId={instanceId}
  onBack={handleBack}
/>

审批记录

审批记录展示:

  • 时间轴展示
  • 审批人信息
  • 审批意见
  • 审批时间
  • 操作记录
import { ApprovalTimeline } from '@coding-flow/flow-pc-approval';

<ApprovalTimeline
  records={approvalRecords}
  currentNodeId={currentNodeId}
/>

模块结构

flow-pc-approval/
├── src/
│   ├── todo/           # 待办列表
│   ├── done/           # 已办列表
│   ├── my-requests/    # 我发起的
│   ├── approval-form/  # 审批表单
│   ├── flow-detail/    # 流程详情
│   ├── timeline/       # 审批记录时间轴
│   ├── components/     # 公共组件
│   └── index.ts        # 统一导出
└── README.md

使用示例

待办页面

import { TodoList, ApprovalModal } from '@coding-flow/flow-pc-approval';

const TodoPage = () => {
  const [selectedTask, setSelectedTask] = useState(null);
  const [showApprovalModal, setShowApprovalModal] = useState(false);

  const handleTaskClick = async (task) => {
    setSelectedTask(task);
    setShowApprovalModal(true);
  };

  return (
    <>
      <TodoList
        filters={filters}
        onTaskClick={handleTaskClick}
      />
      {showApprovalModal && (
        <ApprovalModal
          taskId={selectedTask.id}
          onClose={() => setShowApprovalModal(false)}
          onApproved={handleRefresh}
        />
      )}
    </>
  );
};

审批操作

import { ApprovalForm } from '@coding-flow/flow-pc-approval';

const MyApprovalForm = () => {
  const handleSubmit = async (action, opinion) => {
    await approvalApi.submit({
      taskId,
      action,
      opinion,
      formData
    });
  };

  return (
    <ApprovalForm
      taskId={taskId}
      formSchema={formSchema}
      formValues={formValues}
      permissions={permissions}
      onApprove={(opinion) => handleSubmit('PASS', opinion)}
      onReject={(opinion) => handleSubmit('REJECT', opinion)}
      onSave={(data) => handleSubmit('SAVE', data)}
      onTransfer={(userId) => handleSubmit('TRANSFER', { userId })}
      onReturn={(nodeId) => handleSubmit('RETURN', { nodeId })}
      onDelegate={(userId) => handleSubmit('DELEGATE', { userId })}
    />
  );
};

审批动作

支持以下审批动作:

  • PASS - 通过
  • REJECT - 拒绝
  • SAVE - 保存
  • ADD_AUDIT - 加签
  • DELEGATE - 委托
  • RETURN - 退回
  • TRANSFER - 转交
  • CUSTOM - 自定义动作

Learn more

版本与发布记录

@coding-flow/flow-pc-approval 共发布 82 个版本,首次发布于 2026/03/17;过去 12 个月发布了 82 个版本。

版本发布日期距今
0.2.17latest2026/11/073 天前
0.2.162026/11/055 天前
0.2.152026/11/037 天前
0.2.142026/11/027 天前
0.2.132026/10/3011 天前
0.2.112026/10/2318 天前

关于 @coding-flow/flow-pc-approval 的常见问题

@coding-flow/flow-pc-approval 是什么?

流程引擎 pc 格式批准组件

如何安装 @coding-flow/flow-pc-approval?

在项目目录运行 npm install @coding-flow/flow-pc-approval,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:react(>=18)、react-dom(>=18)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@coding-flow/flow-pc-approval 支持 TypeScript 吗?

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

@coding-flow/flow-pc-approval 支持 ESM 还是 CommonJS?

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

@coding-flow/flow-pc-approval 可以商用吗?

@coding-flow/flow-pc-approval 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。

@coding-flow/flow-pc-approval 的下载量有多少?

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

@coding-flow/flow-pc-approval 还在维护吗?

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