libs/rucken/todo-web/src/lib/entities/tasks/task-modal/task-modal.component.ts
BasePromptFormModalComponent
changeDetection | ChangeDetectionStrategy.OnPush |
selector | task-modal |
templateUrl | ./task-modal.component.html |
constructor()
|
import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
import { BasePromptFormModalComponent } from '@rucken/core';
import { Task } from '@rucken/todo-core';
import { BindIoInner } from 'ngx-bind-io';
@BindIoInner()
@Component({
selector: 'task-modal',
templateUrl: './task-modal.component.html',
changeDetection: ChangeDetectionStrategy.OnPush
})
export class TaskModalComponent extends BasePromptFormModalComponent<Task> {
@Input()
apiUrl?: string = undefined;
constructor() {
super();
this.group(Task);
}
}
<form
[formGroup]="form"
novalidate>
<prompt-form-modal [bindIO]>
<div class="row">
<div class="col-md-12">
<form-group
[bindIO]
name="title"
[title]="strings.title"
focus>
<input
formControlName="title"
[readonly]="readonly">
</form-group>
</div>
<div class="col-md-12">
<form-group
[bindIO]
name="description"
[title]="strings.description">
<textarea
formControlName="description"
[readonly]="readonly">
</textarea>
</form-group>
</div>
<div class="col-md-4">
<form-group
[bindIO]
name="status"
[title]="strings.status">
<status-input
(select)="form.get('status').setValue($event)"
[project]="data.project"
[readonly]="readonly"
[apiUrl]="apiUrl">
<input
formControlName="status"
[readonly]="readonly">
</status-input>
</form-group>
</div>
<div class="col-md-4">
<form-group
[bindIO]
name="openAt"
[title]="strings.openAt">
<input
formControlName="openAt"
bsDatepicker
[isDisabled]="readonly"
[readonly]="readonly">
</form-group>
</div>
<div class="col-md-4">
<form-group
[bindIO]
name="closeAt"
[title]="strings.closeAt">
<input
formControlName="closeAt"
bsDatepicker
[isDisabled]="readonly"
[readonly]="readonly">
</form-group>
</div>
</div>
</prompt-form-modal>
</form>