@fairmint/open-captable-protocol-daml-js

中文文档
0.5.1发布于 2026/11/06Apache-2.0TypeScriptCommonJS构建来源已验证近 30 天下载 1.8万

Open CapTable 协议(OpenCapTable-v36,带有OpenCapTableApi-v01) DAML 合同并生成了JavaScript绑定. 其他 Fairmint DAML 软件包在 @fairmint/daml-js 中运行 .

中文使用文档
文档目录5 节
  1. 软件包
  2. 安装和使用软件包
  3. 部署
  4. 公开文件
  5. 构建和验证

打开标签表协议 DAML

此寄存器执行 打开 Cap 格式 (OCF) 作为 DAML 州合同。 它还出版生成的JavaScript绑定和已建成的DARs作为 @fairmint/open-captable-protocol-daml-js。 。 。 .

软件包

multi-package.yaml 列出 DAML 软件包 :

软件包它所持有的
OpenCapTable-v36登记册: OcpFactory, (中文(简体) ), IssuerAuthorization,则 CapTable 主播,每张OCF记录一份合同,以及 StockSecurity, (中文(简体) ), StockClassEpoch 财务报告和审定财务报表 OcfIdShard 状态
OpenCapTableApi-v01读者界面 OcfObject 财务报告和审定财务报表 RegisterContract,其观点只包含内置类型(OCF) object_type 字符串),因为一个界面软件包从未升级
TestDaml 脚本测试( 未发布)

打开Captable-v36数据依赖 OpenCapTableApi-v01把它嵌入它的DAR中,没有相片 依赖性。 界面的注释名 OpenCapTable-v35, 他们的运出行; 软件包 永不更改,所以将其读作当前注册行(v36)。 它的设计是 ADR-040 (英语)。 。 。 . v36只部署到了DevNet;MainNet已超出范围. 老年专业留校任教 dars/ 以数字表示 历史.

另有两个目录属于v36:

  • ocf-extension/ 拥有一个费尔明特OCF扩展的JSON计划 手持对 TX_STOCK_HOLD 编号 : TX_STOCK_HOLD_CANCELLATION。 。 。 .
  • test-vectors/v35.json 持有衍生ID、权利要求卡和 daml测试、SDK和APV2必须复制的地表功能向量。 v36 保存身份证 引入了 v35 方案, 因此共享文件保留其名称 . npm run test:vectors 重算它们 并检查生成的 TestVectors.daml。 。 。 .

安装和使用软件包

npm install @fairmint/open-captable-protocol-daml-js

浏览器安全根入点导出生成的 Fairmint.OpenCapTable 财务报告和审定财务报表 Fairmint.OpenCapTableApi 命名空间, 捆绑的 DAML 标准文献类型, 以及条目点 身份证:

import { Fairmint, OCP_INTERFACES, OCP_TEMPLATES } from '@fairmint/open-captable-protocol-daml-js';

OCP_TEMPLATES.capTable; // also ocpFactory, issuerAuthorization, stockSecurity, stockClassEpoch, ocfIdShard
OCP_INTERFACES.ocfObject; // and registerContract: what readers filter by

该软件包还揭露了部署元数据和DARs的稳定子路径:

import factories from '@fairmint/open-captable-protocol-daml-js/ocp-factory-contract-id.json';
import {
  getOpenCapTableDarPaths,
  resolveOpenCapTableDarPath,
} from '@fairmint/open-captable-protocol-daml-js/openCapTableDarPath';

{\fn华文楷体\fs16\1cHE0E0E0}三十六号 OcpFactory 每一个授权消耗,所以 ocp-factory-contract-id.json 记录 每个网络的工厂身份(templateId, (中文(简体) ), system_operator, (中文(简体) ), factory_id),不是合同身份证. 找到现场工厂 并用活合同查询 模板,过滤在这两个字段。 A 类 网络在其工厂建立之前就不存在.

DARs 输出于 ./opencaptable.dar (开卡表-v36)和 ./opencaptable-api.dar· ; getOpenCapTableDarPaths() 按上传顺序列出两者。 检查 package.json 联 合 国 完整导出映射和 scripts/test-imports.ts 可执行文件 包表面合同. resolveOpenCapTableDarPath 检查 OPEN_CAP_TABLE_DAR_PATH,然后是 已打包 DAR, 然后选择本地检查退出路径; 查看其 来源和选项 准确分辨率 行为.

部署

每一次推动 main 发布 npm 软件包(publish.yml和 标记承诺 v<npm version>. 出版没有部署.

分类账提供者只接受允许的列入IP的流量,因此DAR由 在分类账中部署业务程序 fairmint/ Canton 的工作流程, 从其允许的列表脚本框中选择 。 鉴于npm版本,它:

  1. 在那个版本查看这个寄存器 v<version> 标记,或承诺 main 联合国 ocp_daml_ref 输入名称( 用于发布没有标签的版本), 并运行部署 飞行前 npm run check:dar-version-policy 每份《残疾报告》,首先依赖;
  2. 上传并审查在DevNet两个参与者上公布的DAR,并确保OCP工厂 存在;
  3. 将每次部署记录为附加说明的标签 dar-deploy/devnet/<package>/v<version> 关于这个 承诺.

这些标记是DAR版本政策读取的部署证据. record_only 记录 已经部署的DARs。 记录工厂身份 工作流程报告 generated/ocp-factory-contract-id.json。 。 。 .

公开文件

公众 GitHub 维基百科 这是 合同架构、OCF验证、开发、测试、DAR备份和 释放政策。 每个包裹 daml.yaml, (中文(简体) ), multi-package.yaml, (中文(简体) ), package.json,以及 scripts/ 目前仍是真相的来源 版本,依赖,和自动化.

构建和验证

要求节点.js 22+(参见 @fairmint/canton-dev-tools) (中文(简体) ).

npm install
npx canton-dev-tools install-dpm-sdks
npm run build
npm test

npm run build 生成 OpenCapTable-v36/daml/Fairmint/OpenCapTable/OcfRecords.daml (周转基金) 记录发送,从 scripts/codegen/),运行 prepare-build 输入 generated/build/,然后构建 每个软件包都有 dpm。 。 。 .

当生成绑定物或公布的npm表面受到影响时,也会运行:

npm run codegen
npm run verify-package

npm run check:schema-gaps 比较 DAML 类型和被绑定的OCF 计划(通过) --ocf-schema-dir 除非 ../ocp-canton-sdk/libs/Open-Cap-Format-OCF 检查) 扩展 ocf-extension/。 。 。 .

本地网络OCF重放和跨参与的交通脚本驱动分类账通过 ocp-canton-sdk,这还不支持 v36。 在SDK的支持下,他们被带走并返回 上一个版本在 git 历史中, 脚本之前 0a15f5c 编辑 replay-ocf-database 工作流程及其 sdk_ref 输入, 时间 7d693fa。 。 。 .

见 开发和测试 用于生成的文件边界和专门检查.

版本与发布记录

@fairmint/open-captable-protocol-daml-js 共发布 252 个版本,首次发布于 2025/08/07;过去 12 个月发布了 162 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.5.1latest2026/11/068 天前
0.5.02026/10/2916 天前
0.4.32026/10/2816 天前
0.4.22026/10/2817 天前
0.4.12026/10/2817 天前
0.4.02026/10/2222 天前

关于 @fairmint/open-captable-protocol-daml-js 的常见问题

@fairmint/open-captable-protocol-daml-js 是什么?

Open CapTable 协议(OpenCapTable-v36,带有OpenCapTableApi-v01) DAML 合同并生成了JavaScript绑定. 其他 Fairmint DAML 软件包在 @fairmint/daml-js 中运行 .

如何安装 @fairmint/open-captable-protocol-daml-js?

在项目目录运行 npm install @fairmint/open-captable-protocol-daml-js,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:@daml/types(3.5.2)、@daml/ledger(2.10.4)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@fairmint/open-captable-protocol-daml-js 支持 TypeScript 吗?

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

@fairmint/open-captable-protocol-daml-js 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@fairmint/open-captable-protocol-daml-js 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=22。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@fairmint/open-captable-protocol-daml-js 可以商用吗?

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

@fairmint/open-captable-protocol-daml-js 的下载量有多少?

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

@fairmint/open-captable-protocol-daml-js 还在维护吗?

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