@pypto/native-layout
v0.0.1
Published
Synchronous OGDF graph layout for normalized ELK graphs
Readme
@pypto/native-layout
@pypto/native-layout 为受支持的 ELK 图模型提供同步的原生 OGDF 布局能力。
该软件包包含一个 CommonJS 实现、共享同一模块单例的 ESM 入口、TypeScript
类型声明,以及打包时本地可用的所有平台二进制文件。
使用方法
CommonJS:
const { graphLayout } = require('@pypto/native-layout');
const result = graphLayout(elkGraph, { includeDiagnostics: true });ESM:
import { graphLayout } from '@pypto/native-layout';graphLayout(input, options?) 会同步返回标准化的 ELK 结果。传入
includeDiagnostics: true 可在结果中添加 stats 和摘要形式的 timing。
无效的参数类型会抛出带软件包前缀的 TypeError;原生模块加载错误会通过
cause 保留原始错误。
高级诊断和测试场景还可以使用 createNativeLayout(modulePath?)、
nativeModuleName(platform?, arch?) 和 nativeModulePath(platform?, arch?)。
构建与打包
请先构建 OGDF 和 cpp/ogdf_cli/graphLayout.<platform>.node,然后执行:
cd native-layout-npm
npm ci
npm test
npm pack --dry-run --json
npm pack如果没有可用的原生 addon,prepack 会失败。打包过程会包含本地存在的所有平台
构建;对于 Windows 构建,还会包含所需的运行时 DLL、完整的 OGDF 许可声明、
GPL v2/v3 以及 COIN-OR/EPL 声明。分发 tarball 前,请阅读
THIRD_PARTY_NOTICES.md,了解源码提供义务及其他许可要求。
