@_linked/shape-ui

中文文档
2.9.5发布于 2026/11/02MITTypeScriptES Module构建来源已验证近 30 天下载 2444

由形状驱动的 UI : 编辑器,任意形状实例上的表格,从它的属性衍生出来的窗体,只读视图和关系拾取器——外加通过链接查询DSL的读写路径.

中文使用文档
文档目录4 节
  1. 其所坐处
  2. 东道主
  3. 测试
  4. 为什么名字变了

@_linked/shape-ui

由形状驱动的UI.

每个组成部分都有一个 Shape 和属性形状, 并对此进行控制—— 文本 字段、选取器、取枣机、相机。 有用吗 任意 形状,不是已知的,这就是 整个点: 添加属性的应用程序会为此获得一个编辑器而不写入 一个.

<TextfieldEditor of={person} property={givenName} />

其所坐处

层软件包已经知道
设计符号@_linked/css无
无头组件@_linked/primitivesdOM 和标志
数据绑定@_linked/react形状和查询; 无部件的船舶
形状驱动 UI@_linked/shape-ui如何制造任意形状
产品表面应用程序一个产品的域名词汇

这里的一切都使 @_linked/primitives 控制并添加形状绑定。 没什么 这里知道一个特定的产品.

保持这一层而不是重建. 需要形状驱动的产品 字段延伸这里的内容; 应用程序内第二个执行是 同一成分最终存在了三次,然后漂移.

东道主

桌子、表格和拾取者问 DataManagerHost 对于什么取决于应用程序 在他们周围,供给一次 <DataManagerHostProvider host={host}> 并阅读 useDataManagerHost()。主机名称没有工程、分支或数据集:查询由 LinkedStorage。 。 。 .

成员需求它是为了什么
resolveShape(iri)对一个形状的线元数据,用于显示和一个字段或窗体使用的形状
resolveCatalog()没有每个形状的线元数据; sh:class- 只有他们之间的关系才能解决
resolveShapeCatalog()没有页:1 ShapeCatalog 每个查询都建在( 下面)
dataRoot用于创建以 IRI 为底点的新实例
searchInstances, (中文(简体) ), createInstance, (中文(简体) ), updateInstance没有缺席时从 DSL 中填入
readInstance, (中文(简体) ), inlineCreate, (中文(简体) ), navigate, (中文(简体) ), picking没有特定主机读取和流量

哪个形状的查询解决了. 无 resolveShapeCatalog默认值 搜索、创建和更新他们在核心全球登记册中解析的形状 (单位:千美元)registerRuntimeShapes),它适合一个具有一组形状的应用程序. 一个服务于 返回 a ShapeCatalog (单位:千美元)@_linked/core(中文(简体) ) 改为:

import {ShapeCatalog} from '@_linked/core/utils/ShapeCatalog';

const host: DataManagerHost = {
  dataRoot,
  resolveShape: async (iri) => wires[iri],
  resolveCatalog: async () => wires,
  resolveShapeCatalog: async () => ShapeCatalog.from(wires, {name: `${project}#${branch}`}),
};

提供者每个主机对象要求一次( 重试一个拒绝, 如 resolveCatalog) (中文(简体) ). 每一个默认值然后在内部构建查询 withShapeCatalog(catalog, …) 并且没有注册。 在目录装入时打个电话等待它;在它之后 失败时, 电话会拒绝, 而不是退回登记。 另一个范围的主机 必须是新对象. useHostShapeCatalog() 返回已装入目录,用于查询 一个主机自称: selectInstances, (中文(简体) ), selectInstance, (中文(简体) ), searchInstancesWithDsl, (中文(简体) ), createInstanceWithDsl 财务报告和审定财务报表 updateInstanceWithDsl 每一个 {catalog} 作为他们最后的 参数.

所传田地. 一个主机的电线列出一个形状 继承的财产形状旁边的 自己可以标记每个继承的 inheritedFrom: {id},其形状为宣布 这个. AddInstanceForms 财务报告和审定财务报表 EditInstanceForms 然后在字段标签下命名形状 在“添加可选字段”菜单(“从动作”中)中,按其标签排列 allShapes 否则,最后 (b) 其IRI部分内容. inheritedFromName(property, shapes) 给与同一个名字.

测试

npm test

贾斯特,完毕 src/**/*.test.ts 财务报告和审定财务报表 src/**/*.test.tsxCI在每一个公关上运行.

为什么名字变了

这个包裹是 @_linked/ui。这个名字只说“不是后端”——信息最少 为最需要说明合同的层提供的标签. shape-ui 说 何为.

版本与发布记录

@_linked/shape-ui 共发布 25 个版本,首次发布于 2026/09/11;过去 12 个月发布了 25 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
2.9.5latest2026/11/025 天前
2.9.42026/10/2810 天前
2.9.32026/10/2513 天前
2.9.22026/10/2513 天前
2.9.12026/10/2414 天前
2.9.02026/10/2414 天前

关于 @_linked/shape-ui 的常见问题

@_linked/shape-ui 是什么?

由形状驱动的 UI : 编辑器,任意形状实例上的表格,从它的属性衍生出来的窗体,只读视图和关系拾取器——外加通过链接查询DSL的读写路径.

如何安装 @_linked/shape-ui?

在项目目录运行 npm install @_linked/shape-ui,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:react(^18 || ^19)、@_linked/css(^0.3.0)、framer-motion(>=11)、@_linked/icons(^1.0.0)、@_linked/primitives(^1.2.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@_linked/shape-ui 支持 TypeScript 吗?

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

@_linked/shape-ui 支持 ESM 还是 CommonJS?

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

@_linked/shape-ui 可以商用吗?

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

@_linked/shape-ui 的下载量有多少?

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

@_linked/shape-ui 还在维护吗?

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