@hicoder/angular-cli
Version:
Angular UI componenets and service generator. It works with the mean-rest-express package to generate the end to end web application. The input to this generator is the Mongoose schema defined for the express application. mean-rest-express exposes the Res
61 lines (52 loc) • 2.21 kB
text/typescript
import { Component, OnInit, Input } from '@angular/core';
import { ActivatedRoute } from '@angular/router';
import { Injector } from '@angular/core';
import { <%-SchemaName%>ListComponent } from './<%-schemaName%>-list.component';
import { <%-SchemaName%>Service } from '../<%-schemaName%>.service';
({
<%- include(`/widgets/list/component.template.custom.ts`)%>
})
export class <%-SchemaName%><%-ComponentClassName%>Component extends <%-SchemaName%>ListComponent
implements OnInit {
<%_
let clickItemAction = 'select';
let cardHasLink = false;
let cardHasSelect = false;
let canArchive = false;
let canCheck = true;
let includeSubDetail = false;
let itemMultiSelect = true;
%>
public override clickItemAction: string = '<%-clickItemAction%>';
public override cardHasLink: boolean = <%-cardHasLink%>;
public override cardHasSelect: boolean = <%-cardHasSelect%>;
public override includeSubDetail: boolean = <%-includeSubDetail%>;
public override canUpdate: boolean = <%-listViewObj.canUpdate%>;
public override canDelete: boolean = <%-listViewObj.canDelete%>;
public override canArchive: boolean = <%-canArchive%>;
public override canCheck: boolean = <%-canCheck%>;
public override itemMultiSelect: boolean = <%-itemMultiSelect%>;
public override majorUi: boolean = <%-listViewObj.majorUi%>;
constructor(
public override <%-schemaName%>Service: <%-SchemaName%>Service,
public override injector: Injector,
public override route: ActivatedRoute
) {
super(<%-schemaName%>Service, injector, route);
this.listViews = [ <%for (let widget of widgetDef.views) {%>'<%-widget%>', <%}%>];
this.listViewFilter = '<%-widgetDef.views[0]%>';
this.actionType = 'selection';
}
override ngOnInit() {
this.queryOnNgInit = false; // don't do query on the super class.
super.ngOnInit();
this.inputData = this.inputData || {}
this.selectedId = this.inputData.preSelectedId;
this.listCategory1 = {}; // no do query based on category;
this.listCategory2 = {}; // no do query based on category;
this.searchList();
}
public override onEdit(id: string) {
this.onEmbeddedEdit(id);
}
}