Skip to content

Commit fb106b5

Browse files
committed
[NAE-1684] Frontend component for data field caseRef
- start creating caseref field
1 parent f2e3f71 commit fb106b5

File tree

12 files changed

+75
-2
lines changed

12 files changed

+75
-2
lines changed

package.json

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,10 @@
103103
"rxjs": "~6.5.4",
104104
"showdown": "^2.0.3",
105105
"tslib": "^2.0.0",
106-
"zone.js": "~0.11.4"
106+
"zone.js": "~0.11.4",
107+
"panzoom": "~9.4.3",
108+
"@netgrif/petriflow.svg": "~1.0.0",
109+
"@netgrif/petri.svg": "~1.0.0"
107110
},
108111
"devDependencies": {
109112
"@angular-devkit/build-angular": "~13.3.1",
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
import {Behavior} from '../../models/behavior';
2+
import {Layout} from '../../models/layout';
3+
import {Validation} from '../../models/validation';
4+
import {Component} from '../../models/component';
5+
import {DataField} from '../../models/abstract-data-field';
6+
import {TextFieldView} from '../../text-field/models/text-field';
7+
8+
export class CaseRefField extends DataField<string> {
9+
10+
constructor(stringId: string, title: string, value: string, behavior: Behavior, placeholder?: string,
11+
description?: string, layout?: Layout, validations?: Array<Validation>, _component?: Component, parentTaskId?: string) {
12+
super(stringId, title, value, behavior, placeholder, description, layout, validations, _component, parentTaskId);
13+
}
14+
}

projects/netgrif-components-core/src/lib/data-fields/public-api.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@ export * from './task-ref-field/model/task-ref-field';
5858
export * from './enumeration-field/models/dynamic-enumeration-field';
5959
export * from './filter-field/models/filter-field';
6060
export * from './i18n-field/models/i18n-field';
61+
export * from './case-ref-field/models/case-ref-field';
6162

6263
/* Interfaces */
6364
export * from './models/changed-fields';

projects/netgrif-components-core/src/lib/task-content/model/field-type-resource.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ export enum FieldTypeResource {
1616
ENUMERATION_MAP = 'enumeration_map',
1717
MULTICHOICE_MAP = 'multichoice_map',
1818
TASK_REF = 'taskRef',
19+
CASE_REF = 'caseRef',
1920
FILTER = 'filter',
2021
I18N = 'i18n'
2122
}

projects/netgrif-components-core/src/lib/task-content/services/field-converter.service.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ import {TaskRefField} from '../../data-fields/task-ref-field/model/task-ref-fiel
2121
import {DynamicEnumerationField} from '../../data-fields/enumeration-field/models/dynamic-enumeration-field';
2222
import {FilterField} from '../../data-fields/filter-field/models/filter-field';
2323
import {I18nField} from '../../data-fields/i18n-field/models/i18n-field';
24+
import {CaseRefField} from '../../data-fields/case-ref-field/models/case-ref-field';
2425

2526
@Injectable({
2627
providedIn: 'root'
@@ -117,6 +118,9 @@ export class FieldConverterService {
117118
case FieldTypeResource.I18N:
118119
return new I18nField(item.stringId, item.name, item.value ?? {defaultValue: ''}, item.behavior, item.placeholder,
119120
item.description, item.layout, item.validations, item.component);
121+
case FieldTypeResource.CASE_REF:
122+
return new CaseRefField(item.stringId, item.name, item.value ?? {defaultValue: ''}, item.behavior, item.placeholder,
123+
item.description, item.layout, item.validations, item.component);
120124
}
121125
}
122126

@@ -141,6 +145,8 @@ export class FieldConverterService {
141145
return FieldTypeResource.USER;
142146
} else if (item instanceof TaskRefField) {
143147
return FieldTypeResource.TASK_REF;
148+
} else if (item instanceof CaseRefField) {
149+
return FieldTypeResource.CASE_REF;
144150
} else if (item instanceof EnumerationField || item instanceof MultichoiceField) {
145151
return item.fieldType;
146152
} else if (item instanceof FilterField) {
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
ide

projects/netgrif-components/src/lib/data-fields/case-ref-field/case-ref-field.component.scss

Whitespace-only changes.
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
import { ComponentFixture, TestBed } from '@angular/core/testing';
2+
3+
import { CaseRefFieldComponent } from './case-ref-field.component';
4+
5+
describe('CaseRefFieldComponent', () => {
6+
let component: CaseRefFieldComponent;
7+
let fixture: ComponentFixture<CaseRefFieldComponent>;
8+
9+
beforeEach(async () => {
10+
await TestBed.configureTestingModule({
11+
declarations: [ CaseRefFieldComponent ]
12+
})
13+
.compileComponents();
14+
});
15+
16+
beforeEach(() => {
17+
fixture = TestBed.createComponent(CaseRefFieldComponent);
18+
component = fixture.componentInstance;
19+
fixture.detectChanges();
20+
});
21+
22+
it('should create', () => {
23+
expect(component).toBeTruthy();
24+
});
25+
});
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
import {Component, Input} from '@angular/core';
2+
import {CaseRefField} from '@netgrif/components-core';
3+
4+
@Component({
5+
selector: 'nc-case-ref-field',
6+
templateUrl: './case-ref-field.component.html',
7+
styleUrls: ['./case-ref-field.component.scss']
8+
})
9+
export class CaseRefFieldComponent {
10+
11+
@Input() public dataField: CaseRefField;
12+
13+
constructor(){
14+
}
15+
}

projects/netgrif-components/src/lib/data-fields/data-fields.module.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@ import { I18nTextFieldComponent } from './i18n-field/i18n-text-field/i18n-text-f
6161
import { EasymdeWrapperComponent } from './text-field/rich-textarea-field/easymde-wrapper/easymde-wrapper.component';
6262
import {BrowserModule} from '@angular/platform-browser';
6363
import {BrowserAnimationsModule} from '@angular/platform-browser/animations';
64+
import { CaseRefFieldComponent } from './case-ref-field/case-ref-field.component';
6465

6566
@NgModule({
6667
declarations: [
@@ -100,6 +101,7 @@ import {BrowserAnimationsModule} from '@angular/platform-browser/animations';
100101
I18nDividerFieldComponent,
101102
I18nTextFieldComponent,
102103
EasymdeWrapperComponent,
104+
CaseRefFieldComponent,
103105
],
104106
exports: [
105107
BooleanFieldComponent,
@@ -115,7 +117,8 @@ import {BrowserAnimationsModule} from '@angular/platform-browser/animations';
115117
TextFieldComponent,
116118
UserFieldComponent,
117119
FilterFieldComponent,
118-
I18nFieldComponent
120+
I18nFieldComponent,
121+
CaseRefFieldComponent
119122
],
120123
imports: [
121124
CommonModule,

0 commit comments

Comments
 (0)