diff --git a/front/app/src/app/views/base-view/base-view.module.ts b/front/app/src/app/views/base-view/base-view.module.ts new file mode 100644 index 00000000..a663f8f9 --- /dev/null +++ b/front/app/src/app/views/base-view/base-view.module.ts @@ -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 { +} diff --git a/front/app/src/app/views/base-view/card/card.component.html b/front/app/src/app/views/base-view/card/card.component.html new file mode 100644 index 00000000..c739c004 --- /dev/null +++ b/front/app/src/app/views/base-view/card/card.component.html @@ -0,0 +1,5 @@ + + \ No newline at end of file diff --git a/front/app/src/app/views/base-view/card/card.component.ts b/front/app/src/app/views/base-view/card/card.component.ts new file mode 100644 index 00000000..4ea997e1 --- /dev/null +++ b/front/app/src/app/views/base-view/card/card.component.ts @@ -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') + }) + } + } +} \ No newline at end of file diff --git a/front/app/src/app/views/base-view/list/list.component.html b/front/app/src/app/views/base-view/list/list.component.html new file mode 100644 index 00000000..1296982f --- /dev/null +++ b/front/app/src/app/views/base-view/list/list.component.html @@ -0,0 +1,5 @@ + + \ No newline at end of file diff --git a/front/app/src/app/views/base-view/list/list.component.ts b/front/app/src/app/views/base-view/list/list.component.ts new file mode 100644 index 00000000..42df183e --- /dev/null +++ b/front/app/src/app/views/base-view/list/list.component.ts @@ -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; +} \ No newline at end of file diff --git a/front/app/src/app/views/base-view/new/new.component.html b/front/app/src/app/views/base-view/new/new.component.html new file mode 100644 index 00000000..b32dd06e --- /dev/null +++ b/front/app/src/app/views/base-view/new/new.component.html @@ -0,0 +1,4 @@ + + \ No newline at end of file diff --git a/front/app/src/app/views/base-view/new/new.component.ts b/front/app/src/app/views/base-view/new/new.component.ts new file mode 100644 index 00000000..cd2247d5 --- /dev/null +++ b/front/app/src/app/views/base-view/new/new.component.ts @@ -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 = {}; +} \ No newline at end of file diff --git a/front/app/src/app/views/base-view/templates/card.template.html b/front/app/src/app/views/base-view/templates/card.template.html new file mode 100644 index 00000000..c2963c1b --- /dev/null +++ b/front/app/src/app/views/base-view/templates/card.template.html @@ -0,0 +1,4 @@ + +' \ No newline at end of file diff --git a/front/app/src/app/views/base-view/templates/list.template.html b/front/app/src/app/views/base-view/templates/list.template.html new file mode 100644 index 00000000..3b9cc863 --- /dev/null +++ b/front/app/src/app/views/base-view/templates/list.template.html @@ -0,0 +1,5 @@ + + \ No newline at end of file diff --git a/front/app/src/app/views/base-view/templates/new.template.html b/front/app/src/app/views/base-view/templates/new.template.html new file mode 100644 index 00000000..8fc91441 --- /dev/null +++ b/front/app/src/app/views/base-view/templates/new.template.html @@ -0,0 +1,4 @@ + + \ No newline at end of file diff --git a/front/app/src/app/views/contracts/contracts.module.ts b/front/app/src/app/views/contracts/contracts.module.ts index d060407c..833e1282 100644 --- a/front/app/src/app/views/contracts/contracts.module.ts +++ b/front/app/src/app/views/contracts/contracts.module.ts @@ -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: [ diff --git a/front/app/src/app/views/contracts/drafts.component.ts b/front/app/src/app/views/contracts/drafts.component.ts index 1ffb742a..89d53718 100644 --- a/front/app/src/app/views/contracts/drafts.component.ts +++ b/front/app/src/app/views/contracts/drafts.component.ts @@ -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: '' + templateUrl: '../base-view/templates/list.template.html' }) export class DraftListComponent extends BaseEntitiesComponent { - columns = ['label', 'address', 'entity_data.type'] + columns = []; } @Component({ - template: '' + templateUrl: '../base-view/templates/new.template.html' }) export class DraftNewComponent extends BaseEntitiesComponent { } @Component({ - template: '' + 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{ } \ No newline at end of file diff --git a/front/app/src/app/views/entities/entities.component.ts b/front/app/src/app/views/entities/entities.component.ts index 4ae92827..26fdfbb5 100644 --- a/front/app/src/app/views/entities/entities.component.ts +++ b/front/app/src/app/views/entities/entities.component.ts @@ -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: '' + templateUrl: '../base-view/templates/list.template.html' }) export class EntityListComponent extends BaseEntitiesComponent { columns = ['label', 'address', 'entity_data.type'] } @Component({ - template: '' + templateUrl: '../base-view/templates/new.template.html' }) export class EntityNewComponent extends BaseEntitiesComponent { } @Component({ - template: '' + 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 { } \ No newline at end of file diff --git a/front/app/src/app/views/entities/entities.module.ts b/front/app/src/app/views/entities/entities.module.ts index f7bd2f71..4c503723 100644 --- a/front/app/src/app/views/entities/entities.module.ts +++ b/front/app/src/app/views/entities/entities.module.ts @@ -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: [ diff --git a/front/app/src/app/views/templates/contract-templates.component.ts b/front/app/src/app/views/templates/contract-templates.component.ts index f292d1cf..d77c0a48 100644 --- a/front/app/src/app/views/templates/contract-templates.component.ts +++ b/front/app/src/app/views/templates/contract-templates.component.ts @@ -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: '' + templateUrl: '../base-view/templates/list.template.html' }) export class ContractTemplateListComponent extends BaseContractTemplateComponent { + columns = []; } @Component({ - template: '' + templateUrl: '../base-view/templates/new.template.html' }) export class ContractTemplateNewComponent extends BaseContractTemplateComponent { } @Component({ - template: '' + 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 { } diff --git a/front/app/src/app/views/templates/provision-templates.component.ts b/front/app/src/app/views/templates/provision-templates.component.ts index aaf2d5a1..62216f13 100644 --- a/front/app/src/app/views/templates/provision-templates.component.ts +++ b/front/app/src/app/views/templates/provision-templates.component.ts @@ -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: '' + templateUrl: '../base-view/templates/list.template.html' }) export class ProvisionTemplateListComponent extends BaseProvisionTemplateComponent{ + columns = []; } @Component({ - template: '' + templateUrl: '../base-view/templates/new.template.html' }) export class ProvisionTemplateNewComponent extends BaseProvisionTemplateComponent { } @Component({ - template: '' + 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 { } diff --git a/front/app/src/app/views/templates/templates.module.ts b/front/app/src/app/views/templates/templates.module.ts index e54f1408..edbbe770 100644 --- a/front/app/src/app/views/templates/templates.module.ts +++ b/front/app/src/app/views/templates/templates.module.ts @@ -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: [