diff --git a/src/app/ast-decl/ast-decl.component.ts b/src/app/ast-decl/ast-decl.component.ts index 291aa19edce1114a3978ce58c38d57b65a2d832c..e42265f1533c29e554dc35ce5a7979b24adb2dcd 100644 --- a/src/app/ast-decl/ast-decl.component.ts +++ b/src/app/ast-decl/ast-decl.component.ts @@ -17,7 +17,7 @@ import {AstDecl} from './ast-decl'; `], template: ` <p *ngIf="decl">JastAdd production: <br> - <div class="ast-decl">{{decl.name}}: <type-ref [type]="decl.extends"></type-ref><!-- + <div class="ast-decl">{{decl.name}}<ng-container *ngIf="decl.extends">: <type-ref [type]="decl.extends"></type-ref></ng-container><!-- --><ng-container *ngIf="decl.components"> ::= <!-- --><ng-container *ngFor="let comp of decl.components"><!-- --><div class="ast-component"><!-- diff --git a/src/app/ast-decl/ast-decl.ts b/src/app/ast-decl/ast-decl.ts index 46c476d0be62ee94e25b0a84f0f31b6507960b34..aa46f360786572e209d22cca3060bb4332f4ee12 100644 --- a/src/app/ast-decl/ast-decl.ts +++ b/src/app/ast-decl/ast-decl.ts @@ -3,7 +3,7 @@ import {AstComponent} from './ast-component'; export class AstDecl { name: string; - extends: TypeRef; + extends?: TypeRef; components?: AstComponent[]; static fromJson(json: any): AstDecl { diff --git a/src/app/type-ref.component.ts b/src/app/type-ref.component.ts index 34ad060356fde6bd41ba39e923267ed8bebecfa7..92545d26d3f234e93b8a0e45f5aba2267218ec04 100644 --- a/src/app/type-ref.component.ts +++ b/src/app/type-ref.component.ts @@ -18,11 +18,11 @@ import { MemberFilterService } from './member-filter.service'; color: #444; } `], - template: `<a *ngIf="type.id; else elseBlock" class="usertype" [routerLink]="['/type', type.id]" (click)="onClick()">{{getName()}}</a><!-- + template: `<ng-container *ngIf="type;else notype"><a *ngIf="type.id; else elseBlock" class="usertype" [routerLink]="['/type', type.id]" (click)="onClick()">{{getName()}}</a><!-- --><ng-template #elseBlock><span class="non-usertype">{{getName()}}</span></ng-template><!-- --><ng-container *ngIf="type.args && !name"><!-- --><<ng-container *ngFor="let arg of type.args; let isLast=last"><type-ref [type]="arg"></type-ref><div *ngIf="!isLast" class="sep">,</div></ng-container>><!-- - --></ng-container>` + --></ng-container></ng-container><ng-template #notype>Unknown Type</ng-template>` }) export class TypeReferenceComponent { @Input() type : Type;