Browse Source

feat: improve page component api for ease of use

pull/8227/head
bnymncoskuner 6 years ago
parent
commit
a3dba76ddb
  1. 46
      npm/ng-packs/packages/components/page/src/page.component.html
  2. 16
      npm/ng-packs/packages/components/page/src/page.component.ts
  3. 2
      npm/ng-packs/packages/setting-management/src/lib/components/setting-management.component.html

46
npm/ng-packs/packages/components/page/src/page.component.html

@ -1,41 +1,41 @@
<div class="row entry-row"> <div class="row entry-row">
<ng-container *ngIf="titleVisible"> <ng-container *ngIf="customTitle; else defaultTitleTemplate">
<ng-container *ngIf="customTitle; else defaultTitleTemplate"> <ng-content select="abp-page-title-container"></ng-content>
<ng-content select="abp-page-title-container"></ng-content>
</ng-container>
</ng-container> </ng-container>
<ng-container *ngIf="breadcrumbVisible"> <ng-container *ngIf="customBreadcrumb; else defaultBreadcrumbTemplate">
<ng-container *ngIf="customBreadcrumb; else defaultBreadcrumbTemplate"> <ng-content select="abp-page-breadcrumb-container"></ng-content>
<ng-content select="abp-page-breadcrumb-container"></ng-content>
</ng-container>
</ng-container> </ng-container>
<ng-container *ngIf="toolbarVisible"> <ng-container *ngIf="customToolbar; else defaultPageToolbarTemplate">
<ng-container *ngIf="customToolbar; else defaultPageToolbarTemplate"> <ng-content select="abp-page-toolbar-container"></ng-content>
<ng-content select="abp-page-toolbar-container"></ng-content>
</ng-container>
</ng-container> </ng-container>
</div> </div>
<ng-content></ng-content> <ng-content></ng-content>
<ng-template #defaultTitleTemplate> <ng-template #defaultTitleTemplate>
<div class="col-auto" *abpPagePart="pageParts.title"> <ng-container *ngIf="title">
<h1 class="content-header-title"> <div class="col-auto" *abpPagePart="pageParts.title">
{{ title }} <h1 class="content-header-title">
</h1> {{ title }}
</div> </h1>
</div>
</ng-container>
</ng-template> </ng-template>
<ng-template #defaultBreadcrumbTemplate> <ng-template #defaultBreadcrumbTemplate>
<div class="col-lg-auto pl-lg-0" *abpPagePart="pageParts.breadcrumb"> <ng-container *ngIf="breadcrumbVisible">
<abp-breadcrumb></abp-breadcrumb> <div class="col-lg-auto pl-lg-0" *abpPagePart="pageParts.breadcrumb">
</div> <abp-breadcrumb></abp-breadcrumb>
</div>
</ng-container>
</ng-template> </ng-template>
<ng-template #defaultPageToolbarTemplate> <ng-template #defaultPageToolbarTemplate>
<div class="col" *abpPagePart="pageParts.toolbar; context: record"> <ng-container *ngIf="toolbarVisible">
<abp-page-toolbar [record]="record"></abp-page-toolbar> <div class="col" *abpPagePart="pageParts.toolbar; context: toolbarData">
</div> <abp-page-toolbar [record]="toolbarData"></abp-page-toolbar>
</div>
</ng-container>
</ng-template> </ng-template>

16
npm/ng-packs/packages/components/page/src/page.component.ts

@ -13,11 +13,19 @@ import {
}) })
export class PageComponent { export class PageComponent {
@Input() title: string; @Input() title: string;
@Input() record: any;
@Input() titleVisible = true; toolbarVisible = false;
@Input() breadcrumbVisible = true; _toolbarData: any;
@Input() toolbarVisible = true; @Input() set toolbarData(val: any) {
this._toolbarData = val;
this.toolbarVisible = true;
}
get toolbarData() {
return this._toolbarData;
}
@Input('breadcrumb') breadcrumbVisible = true;
pageParts = { pageParts = {
title: PageParts.title, title: PageParts.title,

2
npm/ng-packs/packages/setting-management/src/lib/components/setting-management.component.html

@ -1,4 +1,4 @@
<abp-page [title]="'AbpSettingManagement::Settings' | abpLocalization" [toolbarVisible]="false"> <abp-page [title]="'AbpSettingManagement::Settings' | abpLocalization">
<div id="SettingManagementWrapper"> <div id="SettingManagementWrapper">
<div class="card"> <div class="card">
<div class="card-body"> <div class="card-body">

Loading…
Cancel
Save