From 3fea312906686f2c6d79da9e9f6e9a27c99a7896 Mon Sep 17 00:00:00 2001 From: liujuping Date: Fri, 24 Mar 2023 16:59:27 +0800 Subject: [PATCH] feat: update IPublicTypeComponentMetadata interface --- packages/shell/src/api/material.ts | 2 +- packages/types/src/shell/api/material.ts | 2 +- .../src/shell/type/component-metadata.ts | 21 +++++++++++++++++++ 3 files changed, 23 insertions(+), 2 deletions(-) diff --git a/packages/shell/src/api/material.ts b/packages/shell/src/api/material.ts index fb12ab8c0..e3ebd20ec 100644 --- a/packages/shell/src/api/material.ts +++ b/packages/shell/src/api/material.ts @@ -63,7 +63,7 @@ export class Material implements IPublicApiMaterial { * 获取「资产包」结构 * @returns */ - getAssets() { + getAssets(): IPublicTypeAssetsJson | undefined { return this[editorSymbol].get('assets'); } diff --git a/packages/types/src/shell/api/material.ts b/packages/types/src/shell/api/material.ts index 7771aa6ba..1e9f54996 100644 --- a/packages/types/src/shell/api/material.ts +++ b/packages/types/src/shell/api/material.ts @@ -22,7 +22,7 @@ export interface IPublicApiMaterial { * get AssetsJson data * @returns IPublicTypeAssetsJson */ - getAssets(): IPublicTypeAssetsJson; + getAssets(): IPublicTypeAssetsJson | undefined; /** * 加载增量的「资产包」结构,该增量包会与原有的合并 diff --git a/packages/types/src/shell/type/component-metadata.ts b/packages/types/src/shell/type/component-metadata.ts index 04c4ae0d3..69dc36c30 100644 --- a/packages/types/src/shell/type/component-metadata.ts +++ b/packages/types/src/shell/type/component-metadata.ts @@ -5,74 +5,95 @@ import { IPublicTypeIconType, IPublicTypeNpmInfo, IPublicTypeFieldConfig, IPubli */ export interface IPublicTypeComponentMetadata { + + /** 其他扩展协议 */ + [key: string]: any; + /** * 组件名 */ componentName: string; + /** * unique id */ uri?: string; + /** * title or description */ title?: IPublicTypeTitleContent; + /** * svg icon for component */ icon?: IPublicTypeIconType; + /** * 组件标签 */ tags?: string[]; + /** * 组件描述 */ description?: string; + /** * 组件文档链接 */ docUrl?: string; + /** * 组件快照 */ screenshot?: string; + /** * 组件研发模式 */ devMode?: 'proCode' | 'lowCode'; + /** * npm 源引入完整描述对象 */ npm?: IPublicTypeNpmInfo; + /** * 组件属性信息 */ props?: IPublicTypePropConfig[]; + /** * 编辑体验增强 */ configure?: IPublicTypeFieldConfig[] | IPublicTypeConfigure; + /** * @deprecated, use advanced instead */ experimental?: IPublicTypeAdvanced; + /** * @todo 待补充文档 */ schema?: IPublicTypeComponentSchema; + /** * 可用片段 */ snippets?: IPublicTypeSnippet[]; + /** * 一级分组 */ group?: string | IPublicTypeI18nData; + /** * 二级分组 */ category?: string | IPublicTypeI18nData; + /** * 组件优先级排序 */