e5core-angular-ui
Version:
e5 Anywhere Angular UI
98 lines • 11 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
// tslint:disable:max-line-length
import { Component, Input } from '@angular/core';
import { BehaviorSubject } from 'rxjs';
import { UiStyleService } from '../../services/ui-style.service';
export class E5coreUiWorkFieldComponent {
/**
* @param {?} style
*/
constructor(style) {
this.style = style;
}
/**
* @return {?}
*/
ngOnInit() {
if (this.workItem$ == null) {
console.error('e5core-ui-work-field [workItem$] must have a BehaviorSubject<WorkItemModel>');
return;
}
if (this.fieldSetId === null || this.propertyId === '') {
console.error('e5core-ui-work-field [propertyId] and [fieldSetId] must have a value');
return;
}
this.workItem$.subscribe(n => {
this.workItemModel = n;
this.field = null;
this.property = null;
if (!(this.workItemModel && this.workItemModel.fieldsets && this.workItemModel.properties)) {
return;
}
/** @type {?} */
const fieldset = this.workItemModel.fieldsets.find(fs => fs.fieldSetId == this.fieldSetId);
if (!fieldset) {
console.warn(`fieldSetId ${this.fieldSetId} not found in workItem$`);
return;
}
/** @type {?} */
const field = fieldset.fields.find(f => f.propertyId == this.propertyId);
if (!field) {
console.warn(`propertyId ${this.propertyId} from found in workItem$ fields`);
return;
}
/** @type {?} */
const property = this.workItemModel.properties.find(p => p.propertyId == this.propertyId);
if (!property) {
console.warn(`propertyId ${this.propertyId} from found in workItem$ properties`);
return;
}
this.field = field;
this.property = property;
});
}
}
E5coreUiWorkFieldComponent.decorators = [
{ type: Component, args: [{
selector: 'e5core-ui-work-field',
template: `
<span *ngIf="workItem$ && fieldSetId && propertyId && property && field" [ngSwitch]="style.current()">
<e5core-ui-work-field-box *ngSwitchCase='0' [workItem$]='workItem$' [field]='field' [property]='property' [readonly]='readonly' ></e5core-ui-work-field-box>
<e5core-ui-work-field-bootstrap *ngSwitchCase='1' [workItem$]='workItem$' [field]='field' [property]='property' [readonly]='readonly' ></e5core-ui-work-field-bootstrap>
<e5core-ui-work-field-material *ngSwitchCase='2' [workItem$]='workItem$' [field]='field' [property]='property' [readonly]='readonly' ></e5core-ui-work-field-material>
</span>
<div *ngIf="!(workItem$ && fieldSetId && propertyId)" class="e5core-component-error"><e5core-ui-work-field-set> missing [fieldSetId], [propertyId] and [workItem$] must have a BehaviorSubject<WorkItemModel></div>`
}] }
];
/** @nocollapse */
E5coreUiWorkFieldComponent.ctorParameters = () => [
{ type: UiStyleService }
];
E5coreUiWorkFieldComponent.propDecorators = {
workItem$: [{ type: Input }],
fieldSetId: [{ type: Input }],
propertyId: [{ type: Input }],
readonly: [{ type: Input }]
};
if (false) {
/** @type {?} */
E5coreUiWorkFieldComponent.prototype.workItem$;
/** @type {?} */
E5coreUiWorkFieldComponent.prototype.fieldSetId;
/** @type {?} */
E5coreUiWorkFieldComponent.prototype.propertyId;
/** @type {?} */
E5coreUiWorkFieldComponent.prototype.readonly;
/** @type {?} */
E5coreUiWorkFieldComponent.prototype.workItemModel;
/** @type {?} */
E5coreUiWorkFieldComponent.prototype.field;
/** @type {?} */
E5coreUiWorkFieldComponent.prototype.property;
/** @type {?} */
E5coreUiWorkFieldComponent.prototype.style;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZTVjb3JlLXVpLXdvcmstZmllbGQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vZTVjb3JlLWFuZ3VsYXItdWkvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9lNWNvcmUtdWktd29yay1maWVsZC9lNWNvcmUtdWktd29yay1maWVsZC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBOEMsTUFBTSxlQUFlLENBQUM7QUFFckcsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUV2QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFZakUsTUFBTSxPQUFPLDBCQUEwQjs7OztJQVdyQyxZQUFtQixLQUFvQjtRQUFwQixVQUFLLEdBQUwsS0FBSyxDQUFlO0lBQUksQ0FBQzs7OztJQUU1QyxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksRUFBRTtZQUMxQixPQUFPLENBQUMsS0FBSyxDQUFDLDZFQUE2RSxDQUFDLENBQUM7WUFDN0YsT0FBUTtTQUNUO1FBQ0QsSUFBSSxJQUFJLENBQUMsVUFBVSxLQUFLLElBQUksSUFBSSxJQUFJLENBQUMsVUFBVSxLQUFLLEVBQUUsRUFBRTtZQUN0RCxPQUFPLENBQUMsS0FBSyxDQUFDLHNFQUFzRSxDQUFDLENBQUM7WUFDdEYsT0FBUTtTQUNUO1FBRUQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQ3RCLENBQUMsQ0FBQyxFQUFFO1lBQ0YsSUFBSSxDQUFDLGFBQWEsR0FBRyxDQUFDLENBQUU7WUFDeEIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUU7WUFDbkIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUU7WUFFdEIsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxFQUFFO2dCQUMxRixPQUFRO2FBQ1Q7O2tCQUNLLFFBQVEsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUM7WUFDMUYsSUFBRyxDQUFDLFFBQVEsRUFBRTtnQkFDWixPQUFPLENBQUMsSUFBSSxDQUFDLGNBQWMsSUFBSSxDQUFDLFVBQVUseUJBQXlCLENBQUMsQ0FBRTtnQkFDdEUsT0FBUTthQUNUOztrQkFDSyxLQUFLLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUM7WUFDeEUsSUFBRyxDQUFDLEtBQUssRUFBRTtnQkFDVCxPQUFPLENBQUMsSUFBSSxDQUFDLGNBQWMsSUFBSSxDQUFDLFVBQVUsaUNBQWlDLENBQUMsQ0FBRTtnQkFDOUUsT0FBUTthQUNUOztrQkFDSyxRQUFRLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDO1lBQ3pGLElBQUcsQ0FBQyxRQUFRLEVBQUU7Z0JBQ1osT0FBTyxDQUFDLElBQUksQ0FBQyxjQUFjLElBQUksQ0FBQyxVQUFVLHFDQUFxQyxDQUFDLENBQUU7Z0JBQ2xGLE9BQVE7YUFDVDtZQUNELElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFFO1lBQ3BCLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFFO1FBQzVCLENBQUMsQ0FDRixDQUFDO0lBQ0osQ0FBQzs7O1lBN0RGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsc0JBQXNCO2dCQUNoQyxRQUFRLEVBQUU7Ozs7OztrT0FNc047YUFDak87Ozs7WUFYUSxjQUFjOzs7d0JBY3BCLEtBQUs7eUJBQ0wsS0FBSzt5QkFDTCxLQUFLO3VCQUNMLEtBQUs7Ozs7SUFITiwrQ0FBb0Q7O0lBQ3BELGdEQUE2Qjs7SUFDN0IsZ0RBQTZCOztJQUM3Qiw4Q0FBMkI7O0lBRTNCLG1EQUE4Qjs7SUFDOUIsMkNBQXdCOztJQUN4Qiw4Q0FBMkI7O0lBRWYsMkNBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiLy8gdHNsaW50OmRpc2FibGU6bWF4LWxpbmUtbGVuZ3RoXG5pbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgV29ya0l0ZW1Nb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy93b3JrLWl0ZW0nO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBVSVdvcmtGaWVsZE1vZGVsLCBVSVByb3BlcnR5TW9kZWwgfSBmcm9tICdlNWNvcmUtYW5ndWxhci1zZXJ2aWNlcyc7XG5pbXBvcnQgeyBVaVN0eWxlU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3VpLXN0eWxlLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlNWNvcmUtdWktd29yay1maWVsZCcsXG4gIHRlbXBsYXRlOiBgXG4gIDxzcGFuICpuZ0lmPVwid29ya0l0ZW0kICYmIGZpZWxkU2V0SWQgJiYgcHJvcGVydHlJZCAmJiBwcm9wZXJ0eSAmJiBmaWVsZFwiIFtuZ1N3aXRjaF09XCJzdHlsZS5jdXJyZW50KClcIj5cbiAgICA8ZTVjb3JlLXVpLXdvcmstZmllbGQtYm94ICpuZ1N3aXRjaENhc2U9JzAnIFt3b3JrSXRlbSRdPSd3b3JrSXRlbSQnIFtmaWVsZF09J2ZpZWxkJyBbcHJvcGVydHldPSdwcm9wZXJ0eScgW3JlYWRvbmx5XT0ncmVhZG9ubHknID48L2U1Y29yZS11aS13b3JrLWZpZWxkLWJveD5cbiAgICA8ZTVjb3JlLXVpLXdvcmstZmllbGQtYm9vdHN0cmFwICpuZ1N3aXRjaENhc2U9JzEnIFt3b3JrSXRlbSRdPSd3b3JrSXRlbSQnIFtmaWVsZF09J2ZpZWxkJyBbcHJvcGVydHldPSdwcm9wZXJ0eScgW3JlYWRvbmx5XT0ncmVhZG9ubHknID48L2U1Y29yZS11aS13b3JrLWZpZWxkLWJvb3RzdHJhcD5cbiAgICA8ZTVjb3JlLXVpLXdvcmstZmllbGQtbWF0ZXJpYWwgKm5nU3dpdGNoQ2FzZT0nMicgW3dvcmtJdGVtJF09J3dvcmtJdGVtJCcgW2ZpZWxkXT0nZmllbGQnIFtwcm9wZXJ0eV09J3Byb3BlcnR5JyBbcmVhZG9ubHldPSdyZWFkb25seScgPjwvZTVjb3JlLXVpLXdvcmstZmllbGQtbWF0ZXJpYWw+XG4gIDwvc3Bhbj5cbiAgPGRpdiAqbmdJZj1cIiEod29ya0l0ZW0kICYmIGZpZWxkU2V0SWQgJiYgcHJvcGVydHlJZClcIiBjbGFzcz1cImU1Y29yZS1jb21wb25lbnQtZXJyb3JcIj4mbHQ7ZTVjb3JlLXVpLXdvcmstZmllbGQtc2V0Jmd0OyBtaXNzaW5nIFtmaWVsZFNldElkXSwgW3Byb3BlcnR5SWRdIGFuZCBbd29ya0l0ZW0kXSBtdXN0IGhhdmUgYSBCZWhhdmlvclN1YmplY3QmbHQ7V29ya0l0ZW1Nb2RlbCZndDs8L2Rpdj5gLFxufSlcbmV4cG9ydCBjbGFzcyBFNWNvcmVVaVdvcmtGaWVsZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgQElucHV0KCkgd29ya0l0ZW0kOiBCZWhhdmlvclN1YmplY3Q8V29ya0l0ZW1Nb2RlbD4gO1xuICBASW5wdXQoKSBmaWVsZFNldElkOiBudW1iZXIgO1xuICBASW5wdXQoKSBwcm9wZXJ0eUlkOiBzdHJpbmcgO1xuICBASW5wdXQoKSByZWFkb25seTogYm9vbGVhbjtcblxuICB3b3JrSXRlbU1vZGVsOiBXb3JrSXRlbU1vZGVsIDtcbiAgZmllbGQ6IFVJV29ya0ZpZWxkTW9kZWw7XG4gIHByb3BlcnR5OiBVSVByb3BlcnR5TW9kZWwgO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBzdHlsZTpVaVN0eWxlU2VydmljZSkgeyB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgaWYgKHRoaXMud29ya0l0ZW0kID09IG51bGwpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ2U1Y29yZS11aS13b3JrLWZpZWxkIFt3b3JrSXRlbSRdIG11c3QgaGF2ZSBhIEJlaGF2aW9yU3ViamVjdDxXb3JrSXRlbU1vZGVsPicpO1xuICAgICAgcmV0dXJuIDtcbiAgICB9XG4gICAgaWYgKHRoaXMuZmllbGRTZXRJZCA9PT0gbnVsbCB8fCB0aGlzLnByb3BlcnR5SWQgPT09ICcnKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdlNWNvcmUtdWktd29yay1maWVsZCBbcHJvcGVydHlJZF0gYW5kIFtmaWVsZFNldElkXSBtdXN0IGhhdmUgYSB2YWx1ZScpO1xuICAgICAgcmV0dXJuIDtcbiAgICB9XG5cbiAgICB0aGlzLndvcmtJdGVtJC5zdWJzY3JpYmUoXG4gICAgICBuID0+IHtcbiAgICAgICAgdGhpcy53b3JrSXRlbU1vZGVsID0gbiA7XG4gICAgICAgIHRoaXMuZmllbGQgPSBudWxsIDtcbiAgICAgICAgdGhpcy5wcm9wZXJ0eSA9IG51bGwgO1xuXG4gICAgICAgIGlmICghKHRoaXMud29ya0l0ZW1Nb2RlbCAmJiB0aGlzLndvcmtJdGVtTW9kZWwuZmllbGRzZXRzICYmIHRoaXMud29ya0l0ZW1Nb2RlbC5wcm9wZXJ0aWVzKSkge1xuICAgICAgICAgIHJldHVybiA7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgZmllbGRzZXQgPSB0aGlzLndvcmtJdGVtTW9kZWwuZmllbGRzZXRzLmZpbmQoZnMgPT4gZnMuZmllbGRTZXRJZCA9PSB0aGlzLmZpZWxkU2V0SWQpIDtcbiAgICAgICAgaWYoIWZpZWxkc2V0KSB7XG4gICAgICAgICAgY29uc29sZS53YXJuKGBmaWVsZFNldElkICR7dGhpcy5maWVsZFNldElkfSBub3QgZm91bmQgaW4gd29ya0l0ZW0kYCkgO1xuICAgICAgICAgIHJldHVybiA7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgZmllbGQgPSBmaWVsZHNldC5maWVsZHMuZmluZChmID0+IGYucHJvcGVydHlJZCA9PSB0aGlzLnByb3BlcnR5SWQpIDtcbiAgICAgICAgaWYoIWZpZWxkKSB7XG4gICAgICAgICAgY29uc29sZS53YXJuKGBwcm9wZXJ0eUlkICR7dGhpcy5wcm9wZXJ0eUlkfSBmcm9tIGZvdW5kIGluIHdvcmtJdGVtJCBmaWVsZHNgKSA7XG4gICAgICAgICAgcmV0dXJuIDtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBwcm9wZXJ0eSA9IHRoaXMud29ya0l0ZW1Nb2RlbC5wcm9wZXJ0aWVzLmZpbmQocCA9PiBwLnByb3BlcnR5SWQgPT0gdGhpcy5wcm9wZXJ0eUlkKSA7XG4gICAgICAgIGlmKCFwcm9wZXJ0eSkge1xuICAgICAgICAgIGNvbnNvbGUud2FybihgcHJvcGVydHlJZCAke3RoaXMucHJvcGVydHlJZH0gZnJvbSBmb3VuZCBpbiB3b3JrSXRlbSQgcHJvcGVydGllc2ApIDtcbiAgICAgICAgICByZXR1cm4gO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuZmllbGQgPSBmaWVsZCA7XG4gICAgICAgIHRoaXMucHJvcGVydHkgPSBwcm9wZXJ0eSA7XG4gICAgICB9XG4gICAgKTtcbiAgfVxufVxuIl19