Skip to content

Commit

Permalink
feat(skeleton): add skeleton.getPanel api
Browse files Browse the repository at this point in the history
  • Loading branch information
liujuping committed Aug 11, 2023
1 parent 8117b45 commit c106ada
Show file tree
Hide file tree
Showing 5 changed files with 40 additions and 0 deletions.
15 changes: 15 additions & 0 deletions docs/docs/api/skeleton.md
Original file line number Diff line number Diff line change
Expand Up @@ -178,6 +178,21 @@ IWidgetBaseConfig 定义如下:
remove(config: IPublicTypeWidgetBaseConfig): number | undefined;
```

### getPanel

获取面板实例

```typescript
/**
* 获取面板实例
* @param name 面板名称
*/
getPanel(name: string): IPublicModelSkeletonItem | undefined;
```

相关类型:[IPublicModelSkeletonItem](https://github.com/alibaba/lowcode-engine/blob/main/packages/shell/src/model/skeleton-item.ts)

@since v1.1.10

### showPanel

Expand Down
9 changes: 9 additions & 0 deletions packages/shell/src/api/skeleton.ts
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,15 @@ export class Skeleton implements IPublicApiSkeleton {
return this[skeletonSymbol][normalizeArea(areaName)].container.items?.map(d => new SkeletonItem(d));
}

getPanel(name: string) {
const item = this[skeletonSymbol].getPanel(name);
if (!item) {
return;
}

return new SkeletonItem(item);
}

/**
* 显示面板
* @param name
Expand Down
4 changes: 4 additions & 0 deletions packages/shell/src/model/skeleton-item.ts
Original file line number Diff line number Diff line change
Expand Up @@ -32,4 +32,8 @@ export class SkeletonItem implements IPublicModelSkeletonItem {
show() {
this[skeletonItemSymbol].show();
}

toggle() {
this[skeletonItemSymbol].toggle();
}
}
7 changes: 7 additions & 0 deletions packages/types/src/shell/api/skeleton.ts
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,13 @@ export interface IPublicApiSkeleton {
*/
remove(config: IPublicTypeSkeletonConfig): number | undefined;

/**
* 获取面板实例
* @param name 面板名称
* @since v1.1.10
*/
getPanel(name: string): IPublicModelSkeletonItem | undefined;

/**
* 展示指定 Panel 实例
* show panel by name
Expand Down
5 changes: 5 additions & 0 deletions packages/types/src/shell/model/skeleton-item.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,4 +13,9 @@ export interface IPublicModelSkeletonItem {
hide(): void;

show(): void;

/**
* @since v1.1.10
*/
toggle(): void;
}

0 comments on commit c106ada

Please sign in to comment.