Moving most common logic to base view module
This commit is contained in:
26
front/app/src/app/views/base-view/base-view.module.ts
Normal file
26
front/app/src/app/views/base-view/base-view.module.ts
Normal file
@@ -0,0 +1,26 @@
|
||||
import { CommonModule } from '@angular/common';
|
||||
import { NgModule } from '@angular/core';
|
||||
|
||||
import { CrudModule } from '@common/crud/crud.module'
|
||||
import { BaseCrudListComponent } from "./list/list.component";
|
||||
import { BaseCrudNewComponent } from "./new/new.component";
|
||||
import { BaseCrudCardComponent } from "./card/card.component";
|
||||
|
||||
@NgModule({
|
||||
imports: [
|
||||
CommonModule,
|
||||
CrudModule
|
||||
],
|
||||
declarations: [
|
||||
BaseCrudListComponent,
|
||||
BaseCrudNewComponent,
|
||||
BaseCrudCardComponent
|
||||
],
|
||||
exports: [
|
||||
BaseCrudListComponent,
|
||||
BaseCrudNewComponent,
|
||||
BaseCrudCardComponent
|
||||
]
|
||||
})
|
||||
export class BaseViewModule {
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
<crud-card
|
||||
[resource]="this.resource"
|
||||
[resource_id]="this.resource_id"
|
||||
[schema]="this.schema">
|
||||
</crud-card>
|
||||
22
front/app/src/app/views/base-view/card/card.component.ts
Normal file
22
front/app/src/app/views/base-view/card/card.component.ts
Normal file
@@ -0,0 +1,22 @@
|
||||
import {Component, Input} from "@angular/core";
|
||||
import {ActivatedRoute, ParamMap} from "@angular/router";
|
||||
|
||||
@Component({
|
||||
templateUrl: 'card.component.html',
|
||||
selector: 'base-card',
|
||||
})
|
||||
export class BaseCrudCardComponent {
|
||||
@Input() resource: string | undefined;
|
||||
@Input() resource_id: string | null = null;
|
||||
@Input() schema: string | undefined;
|
||||
|
||||
constructor(private route: ActivatedRoute) {}
|
||||
|
||||
ngOnInit(): void {
|
||||
if (this.resource_id === null) {
|
||||
this.route.paramMap.subscribe((params: ParamMap) => {
|
||||
this.resource_id = params.get('id')
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
<crud-list
|
||||
[resource]="this.resource"
|
||||
[schema]="this.schema"
|
||||
[columns]="this.columns">
|
||||
</crud-list>
|
||||
11
front/app/src/app/views/base-view/list/list.component.ts
Normal file
11
front/app/src/app/views/base-view/list/list.component.ts
Normal file
@@ -0,0 +1,11 @@
|
||||
import {Component, Input} from "@angular/core";
|
||||
|
||||
@Component({
|
||||
selector: 'base-list',
|
||||
templateUrl: 'list.component.html'
|
||||
})
|
||||
export class BaseCrudListComponent {
|
||||
@Input() resource: string = "";
|
||||
@Input() columns: string[] = [];
|
||||
@Input() schema: string | undefined;
|
||||
}
|
||||
4
front/app/src/app/views/base-view/new/new.component.html
Normal file
4
front/app/src/app/views/base-view/new/new.component.html
Normal file
@@ -0,0 +1,4 @@
|
||||
<crud-card
|
||||
[resource]="this.resource"
|
||||
[schema]="this.schema">
|
||||
</crud-card>
|
||||
11
front/app/src/app/views/base-view/new/new.component.ts
Normal file
11
front/app/src/app/views/base-view/new/new.component.ts
Normal file
@@ -0,0 +1,11 @@
|
||||
import {Component, Input} from "@angular/core";
|
||||
|
||||
@Component({
|
||||
selector: 'base-new',
|
||||
templateUrl: 'new.component.html'
|
||||
})
|
||||
export class BaseCrudNewComponent {
|
||||
@Input() resource: string | undefined;
|
||||
@Input() schema: string | undefined;
|
||||
@Input() model = {};
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
<base-card
|
||||
[resource]="this.resource"
|
||||
[schema]="this.schema">
|
||||
</base-card>'
|
||||
@@ -0,0 +1,5 @@
|
||||
<base-list
|
||||
[resource]="this.resource"
|
||||
[schema]="this.schema"
|
||||
[columns]="this.columns">
|
||||
</base-list>
|
||||
@@ -0,0 +1,4 @@
|
||||
<base-card
|
||||
[resource]="this.resource"
|
||||
[schema]="this.schema">
|
||||
</base-card>
|
||||
@@ -1,8 +1,8 @@
|
||||
import { CommonModule } from '@angular/common';
|
||||
import { NgModule } from '@angular/core';
|
||||
|
||||
import { BaseViewModule } from "../base-view/base-view.module";
|
||||
import { ContractsRoutingModule } from './contracts-routing.module';
|
||||
import { CrudModule } from '@common/crud/crud.module'
|
||||
import { DraftCardComponent, DraftListComponent, DraftNewComponent } from "./drafts.component";
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@ import { DraftCardComponent, DraftListComponent, DraftNewComponent } from "./dra
|
||||
@NgModule({
|
||||
imports: [
|
||||
CommonModule,
|
||||
CrudModule,
|
||||
BaseViewModule,
|
||||
ContractsRoutingModule
|
||||
],
|
||||
declarations: [
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
import { ActivatedRoute, ParamMap } from '@angular/router';
|
||||
import { Component } from '@angular/core';
|
||||
|
||||
|
||||
export class BaseEntitiesComponent {
|
||||
@@ -8,32 +7,20 @@ export class BaseEntitiesComponent {
|
||||
}
|
||||
|
||||
@Component({
|
||||
template: '<crud-list [resource]="this.resource" [schema]="this.schema" [columns]="this.columns"></crud-list>'
|
||||
templateUrl: '../base-view/templates/list.template.html'
|
||||
})
|
||||
export class DraftListComponent extends BaseEntitiesComponent {
|
||||
columns = ['label', 'address', 'entity_data.type']
|
||||
columns = [];
|
||||
}
|
||||
|
||||
@Component({
|
||||
template: '<crud-card [resource]="this.resource" [schema]="this.schema"></crud-card>'
|
||||
templateUrl: '../base-view/templates/new.template.html'
|
||||
})
|
||||
export class DraftNewComponent extends BaseEntitiesComponent {
|
||||
}
|
||||
|
||||
@Component({
|
||||
template: '<crud-card [resource]="this.resource" [resource_id]="this.resource_id" [schema]="this.schema"></crud-card>'
|
||||
templateUrl: '../base-view/templates/card.template.html'
|
||||
})
|
||||
export class DraftCardComponent extends BaseEntitiesComponent implements OnInit {
|
||||
|
||||
resource_id: string | null = null;
|
||||
|
||||
constructor(private route: ActivatedRoute,) {
|
||||
super();
|
||||
}
|
||||
|
||||
ngOnInit(): void {
|
||||
this.route.paramMap.subscribe((params: ParamMap) => {
|
||||
this.resource_id = params.get('id')
|
||||
})
|
||||
}
|
||||
export class DraftCardComponent extends BaseEntitiesComponent{
|
||||
}
|
||||
@@ -1,39 +1,26 @@
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
import { ActivatedRoute, ParamMap } from '@angular/router';
|
||||
import { Component } from '@angular/core';
|
||||
|
||||
|
||||
export class BaseEntitiesComponent {
|
||||
protected resource: string = "entity";
|
||||
protected schema: string = "Entity";
|
||||
resource: string = "entity";
|
||||
schema: string = "Entity";
|
||||
}
|
||||
|
||||
@Component({
|
||||
template: '<crud-list [resource]="this.resource" [schema]="this.schema" [columns]="this.columns"></crud-list>'
|
||||
templateUrl: '../base-view/templates/list.template.html'
|
||||
})
|
||||
export class EntityListComponent extends BaseEntitiesComponent {
|
||||
columns = ['label', 'address', 'entity_data.type']
|
||||
}
|
||||
|
||||
@Component({
|
||||
template: '<crud-card [resource]="this.resource" [schema]="this.schema"></crud-card>'
|
||||
templateUrl: '../base-view/templates/new.template.html'
|
||||
})
|
||||
export class EntityNewComponent extends BaseEntitiesComponent {
|
||||
}
|
||||
|
||||
@Component({
|
||||
template: '<crud-card [resource]="this.resource" [resource_id]="this.resource_id" [schema]="this.schema"></crud-card>'
|
||||
templateUrl: '../base-view/templates/card.template.html'
|
||||
})
|
||||
export class EntityCardComponent extends BaseEntitiesComponent implements OnInit {
|
||||
|
||||
resource_id: string | null = null;
|
||||
|
||||
constructor(private route: ActivatedRoute,) {
|
||||
super();
|
||||
}
|
||||
|
||||
ngOnInit(): void {
|
||||
this.route.paramMap.subscribe((params: ParamMap) => {
|
||||
this.resource_id = params.get('id')
|
||||
})
|
||||
}
|
||||
export class EntityCardComponent extends BaseEntitiesComponent {
|
||||
}
|
||||
@@ -2,15 +2,15 @@ import { CommonModule } from '@angular/common';
|
||||
import { NgModule } from '@angular/core';
|
||||
|
||||
import { EntitiesRoutingModule } from './entities-routing.module';
|
||||
import { CrudModule } from '@common/crud/crud.module'
|
||||
import { EntityCardComponent, EntityListComponent, EntityNewComponent} from "./entities.component";
|
||||
import { BaseViewModule } from "../base-view/base-view.module";
|
||||
|
||||
|
||||
|
||||
@NgModule({
|
||||
imports: [
|
||||
CommonModule,
|
||||
CrudModule,
|
||||
BaseViewModule,
|
||||
EntitiesRoutingModule
|
||||
],
|
||||
declarations: [
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { Component, OnInit, } from '@angular/core';
|
||||
import { ActivatedRoute, ParamMap } from '@angular/router';
|
||||
import { Component } from '@angular/core';
|
||||
|
||||
|
||||
export class BaseContractTemplateComponent {
|
||||
protected resource: string = "template/contract";
|
||||
@@ -7,30 +7,20 @@ export class BaseContractTemplateComponent {
|
||||
}
|
||||
|
||||
@Component({
|
||||
template: '<crud-list [resource]="this.resource" [schema]="this.schema"></crud-list>'
|
||||
templateUrl: '../base-view/templates/list.template.html'
|
||||
})
|
||||
export class ContractTemplateListComponent extends BaseContractTemplateComponent {
|
||||
columns = [];
|
||||
}
|
||||
|
||||
@Component({
|
||||
template: '<crud-card [resource]="this.resource" [schema]="this.schema"></crud-card>'
|
||||
templateUrl: '../base-view/templates/new.template.html'
|
||||
})
|
||||
export class ContractTemplateNewComponent extends BaseContractTemplateComponent {
|
||||
}
|
||||
|
||||
@Component({
|
||||
template: '<crud-card [resource]="this.resource" [resource_id]="this.resource_id" [schema]="this.schema"></crud-card>'
|
||||
templateUrl: '../base-view/templates/card.template.html'
|
||||
})
|
||||
export class ContractTemplateCardComponent extends BaseContractTemplateComponent implements OnInit {
|
||||
resource_id: string | null = null;
|
||||
|
||||
constructor(private route: ActivatedRoute,) {
|
||||
super();
|
||||
}
|
||||
|
||||
ngOnInit(): void {
|
||||
this.route.paramMap.subscribe((params: ParamMap) => {
|
||||
this.resource_id = params.get('id')
|
||||
})
|
||||
}
|
||||
export class ContractTemplateCardComponent extends BaseContractTemplateComponent {
|
||||
}
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
import { Component, OnInit, } from '@angular/core';
|
||||
import { ActivatedRoute, ParamMap } from '@angular/router';
|
||||
import { Component } from '@angular/core';
|
||||
|
||||
|
||||
export class BaseProvisionTemplateComponent {
|
||||
@@ -8,31 +7,20 @@ export class BaseProvisionTemplateComponent {
|
||||
}
|
||||
|
||||
@Component({
|
||||
template: '<crud-list [resource]="this.resource" [schema]="this.schema"></crud-list>'
|
||||
templateUrl: '../base-view/templates/list.template.html'
|
||||
})
|
||||
export class ProvisionTemplateListComponent extends BaseProvisionTemplateComponent{
|
||||
columns = [];
|
||||
}
|
||||
|
||||
@Component({
|
||||
template: '<crud-card [resource]="this.resource" [schema]="this.schema"></crud-card>'
|
||||
templateUrl: '../base-view/templates/new.template.html'
|
||||
})
|
||||
export class ProvisionTemplateNewComponent extends BaseProvisionTemplateComponent {
|
||||
}
|
||||
|
||||
@Component({
|
||||
template: '<crud-card [resource]="this.resource" [resource_id]="this.resource_id" [schema]="this.schema"></crud-card>'
|
||||
templateUrl: '../base-view/templates/card.template.html'
|
||||
})
|
||||
export class ProvisionTemplateCardComponent extends BaseProvisionTemplateComponent implements OnInit {
|
||||
|
||||
resource_id: string | null = null;
|
||||
|
||||
constructor(private route: ActivatedRoute,) {
|
||||
super();
|
||||
}
|
||||
|
||||
ngOnInit(): void {
|
||||
this.route.paramMap.subscribe((params: ParamMap) => {
|
||||
this.resource_id = params.get('id')
|
||||
})
|
||||
}
|
||||
export class ProvisionTemplateCardComponent extends BaseProvisionTemplateComponent {
|
||||
}
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
import { CommonModule } from '@angular/common';
|
||||
import { NgModule } from '@angular/core';
|
||||
|
||||
import { BaseViewModule } from "../base-view/base-view.module";
|
||||
import { TemplatesRoutingModule } from './templates-routing.module';
|
||||
import { CrudModule } from '@common/crud/crud.module'
|
||||
import { ContractTemplateCardComponent, ContractTemplateListComponent, ContractTemplateNewComponent} from "./contract-templates.component";
|
||||
import { ProvisionTemplateCardComponent, ProvisionTemplateListComponent, ProvisionTemplateNewComponent} from "./provision-templates.component";
|
||||
|
||||
@@ -11,7 +11,7 @@ import { ProvisionTemplateCardComponent, ProvisionTemplateListComponent, Provisi
|
||||
@NgModule({
|
||||
imports: [
|
||||
CommonModule,
|
||||
CrudModule,
|
||||
BaseViewModule,
|
||||
TemplatesRoutingModule
|
||||
],
|
||||
declarations: [
|
||||
|
||||
Reference in New Issue
Block a user