ontimize-web-ngx
Version:
Ontimize Web framework using Angular 15
86 lines • 11.6 kB
JavaScript
import { Directive, Injector } from '@angular/core';
import { FilterExpressionUtils } from '../../../../util/filter-expression.utils';
import { Util } from '../../../../util/util';
import { OTableColumnComponent } from '../o-table-column.component';
import * as i0 from "@angular/core";
export const DEFAULT_INPUTS_O_BASE_TABLE_CELL_RENDERER = [
'filterSource: filter-source',
'filterFunction: filter-function'
];
export class OBaseTableCellRenderer {
constructor(injector) {
this.injector = injector;
this._filterSource = 'render';
this.tableColumn = this.injector.get(OTableColumnComponent);
}
ngOnInit() {
this.initialize();
}
initialize() {
}
ngAfterContentInit() {
if (typeof this.filterFunction !== 'function') {
this.filterFunction = undefined;
}
this.registerRenderer();
}
get table() {
return this.tableColumn.table;
}
get column() {
return this.tableColumn.attr;
}
registerRenderer() {
this.tableColumn.registerRenderer(this);
if (!Util.isDefined(this.type) && Util.isDefined(this.tableColumn.type)) {
this.type = this.tableColumn.type;
}
}
getCellData(cellvalue, rowvalue) {
let parsedValue;
if (this.componentPipe && this.pipeArguments !== undefined && cellvalue !== undefined) {
parsedValue = this.componentPipe.transform(cellvalue, this.pipeArguments);
}
else {
parsedValue = cellvalue;
}
return parsedValue;
}
getTooltip(cellValue, rowValue) {
return this.getCellData(cellValue, rowValue);
}
set filterSource(val) {
const lowerVal = (val || '').toLowerCase();
this._filterSource = (lowerVal === 'render' || lowerVal === 'data' || lowerVal === 'both') ? lowerVal : 'render';
}
get filterSource() {
return this._filterSource;
}
getFilter(cellValue, rowValue) {
let result;
switch (this.filterSource) {
case 'render':
result = [this.getCellData(cellValue, rowValue)];
break;
case 'data':
result = [cellValue];
break;
case 'both':
result = [cellValue, this.getCellData(cellValue, rowValue)];
break;
}
return result;
}
getFilterExpression(quickFilter) {
return FilterExpressionUtils.buildExpressionLike(this.tableColumn.attr, quickFilter);
}
}
OBaseTableCellRenderer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OBaseTableCellRenderer, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Directive });
OBaseTableCellRenderer.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: OBaseTableCellRenderer, inputs: { filterSource: ["filter-source", "filterSource"], filterFunction: ["filter-function", "filterFunction"] }, ngImport: i0 });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OBaseTableCellRenderer, decorators: [{
type: Directive,
args: [{
inputs: DEFAULT_INPUTS_O_BASE_TABLE_CELL_RENDERER
}]
}], ctorParameters: function () { return [{ type: i0.Injector }]; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby1iYXNlLXRhYmxlLWNlbGwtcmVuZGVyZXIuY2xhc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbnRpbWl6ZS13ZWItbmd4L3NyYy9saWIvY29tcG9uZW50cy90YWJsZS9jb2x1bW4vY2VsbC1yZW5kZXJlci9vLWJhc2UtdGFibGUtY2VsbC1yZW5kZXJlci5jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW9CLFNBQVMsRUFBRSxRQUFRLEVBQXNDLE1BQU0sZUFBZSxDQUFDO0FBSTFHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUU3QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7QUFFcEUsTUFBTSxDQUFDLE1BQU0seUNBQXlDLEdBQUc7SUFDdkQsNkJBQTZCO0lBQzdCLGlDQUFpQztDQUNsQyxDQUFDO0FBTUYsTUFBTSxPQUFPLHNCQUFzQjtJQVdqQyxZQUFzQixRQUFrQjtRQUFsQixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBUGpDLGtCQUFhLEdBQStCLFFBQVEsQ0FBQztRQVExRCxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUVNLFFBQVE7UUFDYixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVNLFVBQVU7SUFFakIsQ0FBQztJQUVNLGtCQUFrQjtRQUN2QixJQUFJLE9BQU8sSUFBSSxDQUFDLGNBQWMsS0FBSyxVQUFVLEVBQUU7WUFDN0MsSUFBSSxDQUFDLGNBQWMsR0FBRyxTQUFTLENBQUM7U0FDakM7UUFDRCxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsSUFBSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQztJQUNoQyxDQUFDO0lBRUQsSUFBSSxNQUFNO1FBQ1IsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztJQUMvQixDQUFDO0lBS00sZ0JBQWdCO1FBQ3JCLElBQUksQ0FBQyxXQUFXLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDeEMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUN2RSxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO1NBQ25DO0lBQ0gsQ0FBQztJQU9NLFdBQVcsQ0FBQyxTQUFjLEVBQUUsUUFBYztRQUMvQyxJQUFJLFdBQW1CLENBQUM7UUFDeEIsSUFBSSxJQUFJLENBQUMsYUFBYSxJQUFJLElBQUksQ0FBQyxhQUFhLEtBQUssU0FBUyxJQUFJLFNBQVMsS0FBSyxTQUFTLEVBQUU7WUFDckYsV0FBVyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7U0FDM0U7YUFBTTtZQUNMLFdBQVcsR0FBRyxTQUFTLENBQUM7U0FDekI7UUFDRCxPQUFPLFdBQVcsQ0FBQztJQUNyQixDQUFDO0lBRU0sVUFBVSxDQUFDLFNBQWMsRUFBRSxRQUFhO1FBQzdDLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVELElBQUksWUFBWSxDQUFDLEdBQVc7UUFDMUIsTUFBTSxRQUFRLEdBQUcsQ0FBQyxHQUFHLElBQUksRUFBRSxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDM0MsSUFBSSxDQUFDLGFBQWEsR0FBRyxDQUFDLFFBQVEsS0FBSyxRQUFRLElBQUksUUFBUSxLQUFLLE1BQU0sSUFBSSxRQUFRLEtBQUssTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDO0lBQ25ILENBQUM7SUFFRCxJQUFJLFlBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDNUIsQ0FBQztJQVFELFNBQVMsQ0FBQyxTQUFjLEVBQUUsUUFBYztRQUN0QyxJQUFJLE1BQU0sQ0FBQztRQUNYLFFBQVEsSUFBSSxDQUFDLFlBQVksRUFBRTtZQUN6QixLQUFLLFFBQVE7Z0JBQ1gsTUFBTSxHQUFHLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQztnQkFDakQsTUFBTTtZQUNSLEtBQUssTUFBTTtnQkFDVCxNQUFNLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFDckIsTUFBTTtZQUNSLEtBQUssTUFBTTtnQkFDVCxNQUFNLEdBQUcsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQztnQkFDNUQsTUFBTTtTQUNUO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVNLG1CQUFtQixDQUFDLFdBQW1CO1FBQzVDLE9BQU8scUJBQXFCLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDdkYsQ0FBQzs7b0hBcEdVLHNCQUFzQjt3R0FBdEIsc0JBQXNCOzRGQUF0QixzQkFBc0I7a0JBSmxDLFNBQVM7bUJBQUM7b0JBQ1QsTUFBTSxFQUFFLHlDQUF5QztpQkFDbEQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlckNvbnRlbnRJbml0LCBEaXJlY3RpdmUsIEluamVjdG9yLCBPbkluaXQsIFBpcGVUcmFuc2Zvcm0sIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE9UYWJsZUNvbHVtbiB9IGZyb20gJy4uLy4uLy4uLy4uL2ludGVyZmFjZXMvby10YWJsZS1jb2x1bW4uaW50ZXJmYWNlJztcbmltcG9ydCB7IEV4cHJlc3Npb24gfSBmcm9tICcuLi8uLi8uLi8uLi90eXBlcy9leHByZXNzaW9uLnR5cGUnO1xuaW1wb3J0IHsgRmlsdGVyRXhwcmVzc2lvblV0aWxzIH0gZnJvbSAnLi4vLi4vLi4vLi4vdXRpbC9maWx0ZXItZXhwcmVzc2lvbi51dGlscyc7XG5pbXBvcnQgeyBVdGlsIH0gZnJvbSAnLi4vLi4vLi4vLi4vdXRpbC91dGlsJztcbmltcG9ydCB7IE9UYWJsZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL28tdGFibGUuY29tcG9uZW50JztcbmltcG9ydCB7IE9UYWJsZUNvbHVtbkNvbXBvbmVudCB9IGZyb20gJy4uL28tdGFibGUtY29sdW1uLmNvbXBvbmVudCc7XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX0lOUFVUU19PX0JBU0VfVEFCTEVfQ0VMTF9SRU5ERVJFUiA9IFtcbiAgJ2ZpbHRlclNvdXJjZTogZmlsdGVyLXNvdXJjZScsXG4gICdmaWx0ZXJGdW5jdGlvbjogZmlsdGVyLWZ1bmN0aW9uJ1xuXTtcblxuQERpcmVjdGl2ZSh7XG4gIGlucHV0czogREVGQVVMVF9JTlBVVFNfT19CQVNFX1RBQkxFX0NFTExfUkVOREVSRVJcbn0pXG5cbmV4cG9ydCBjbGFzcyBPQmFzZVRhYmxlQ2VsbFJlbmRlcmVyIGltcGxlbWVudHMgT25Jbml0LCBBZnRlckNvbnRlbnRJbml0IHtcblxuICBwdWJsaWMgdGVtcGxhdGVyZWY6IFRlbXBsYXRlUmVmPGFueT47XG4gIHB1YmxpYyB0YWJsZUNvbHVtbjogT1RhYmxlQ29sdW1uO1xuICBwdWJsaWMgX2ZpbHRlclNvdXJjZTogJ3JlbmRlcicgfCAnZGF0YScgfCAnYm90aCcgPSAncmVuZGVyJztcbiAgcHVibGljIGZpbHRlckZ1bmN0aW9uOiAoY2VsbFZhbHVlOiBhbnksIHJvd1ZhbHVlOiBhbnksIHF1aWNrRmlsdGVyPzogc3RyaW5nKSA9PiBib29sZWFuO1xuXG4gIHByb3RlY3RlZCB0eXBlOiBzdHJpbmc7XG4gIHByb3RlY3RlZCBwaXBlQXJndW1lbnRzOiBhbnk7XG4gIHByb3RlY3RlZCBjb21wb25lbnRQaXBlOiBQaXBlVHJhbnNmb3JtO1xuXG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICB0aGlzLnRhYmxlQ29sdW1uID0gdGhpcy5pbmplY3Rvci5nZXQoT1RhYmxlQ29sdW1uQ29tcG9uZW50KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmluaXRpYWxpemUoKTtcbiAgfVxuXG4gIHB1YmxpYyBpbml0aWFsaXplKCk6IHZvaWQge1xuXG4gIH1cblxuICBwdWJsaWMgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgIGlmICh0eXBlb2YgdGhpcy5maWx0ZXJGdW5jdGlvbiAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhpcy5maWx0ZXJGdW5jdGlvbiA9IHVuZGVmaW5lZDtcbiAgICB9XG4gICAgdGhpcy5yZWdpc3RlclJlbmRlcmVyKCk7XG4gIH1cblxuICBnZXQgdGFibGUoKTogT1RhYmxlQ29tcG9uZW50IHtcbiAgICByZXR1cm4gdGhpcy50YWJsZUNvbHVtbi50YWJsZTtcbiAgfVxuXG4gIGdldCBjb2x1bW4oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy50YWJsZUNvbHVtbi5hdHRyO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlZ2lzdGVycyByZW5kZXJlclxuICAgKi9cbiAgcHVibGljIHJlZ2lzdGVyUmVuZGVyZXIoKTogdm9pZCB7XG4gICAgdGhpcy50YWJsZUNvbHVtbi5yZWdpc3RlclJlbmRlcmVyKHRoaXMpO1xuICAgIGlmICghVXRpbC5pc0RlZmluZWQodGhpcy50eXBlKSAmJiBVdGlsLmlzRGVmaW5lZCh0aGlzLnRhYmxlQ29sdW1uLnR5cGUpKSB7XG4gICAgICB0aGlzLnR5cGUgPSB0aGlzLnRhYmxlQ29sdW1uLnR5cGU7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGRpc3BsYXllZCB0YWJsZSBjZWxsIHZhbHVlXG4gICAqIEBwYXJhbSBjZWxsdmFsdWUgdGhlIGludGVybmFsIHRhYmxlIGNlbGwgdmFsdWVcbiAgICogQHBhcmFtIHJvd3ZhbHVlIHRoZSB0YWJsZSByb3cgdmFsdWVcbiAgICovXG4gIHB1YmxpYyBnZXRDZWxsRGF0YShjZWxsdmFsdWU6IGFueSwgcm93dmFsdWU/OiBhbnkpOiBzdHJpbmcge1xuICAgIGxldCBwYXJzZWRWYWx1ZTogc3RyaW5nO1xuICAgIGlmICh0aGlzLmNvbXBvbmVudFBpcGUgJiYgdGhpcy5waXBlQXJndW1lbnRzICE9PSB1bmRlZmluZWQgJiYgY2VsbHZhbHVlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHBhcnNlZFZhbHVlID0gdGhpcy5jb21wb25lbnRQaXBlLnRyYW5zZm9ybShjZWxsdmFsdWUsIHRoaXMucGlwZUFyZ3VtZW50cyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHBhcnNlZFZhbHVlID0gY2VsbHZhbHVlO1xuICAgIH1cbiAgICByZXR1cm4gcGFyc2VkVmFsdWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0VG9vbHRpcChjZWxsVmFsdWU6IGFueSwgcm93VmFsdWU6IGFueSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0Q2VsbERhdGEoY2VsbFZhbHVlLCByb3dWYWx1ZSk7XG4gIH1cblxuICBzZXQgZmlsdGVyU291cmNlKHZhbDogc3RyaW5nKSB7XG4gICAgY29uc3QgbG93ZXJWYWwgPSAodmFsIHx8ICcnKS50b0xvd2VyQ2FzZSgpO1xuICAgIHRoaXMuX2ZpbHRlclNvdXJjZSA9IChsb3dlclZhbCA9PT0gJ3JlbmRlcicgfHwgbG93ZXJWYWwgPT09ICdkYXRhJyB8fCBsb3dlclZhbCA9PT0gJ2JvdGgnKSA/IGxvd2VyVmFsIDogJ3JlbmRlcic7XG4gIH1cblxuICBnZXQgZmlsdGVyU291cmNlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2ZpbHRlclNvdXJjZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm4gdGhlIHZhbHVlcyB0byBmaWx0ZXJcbiAgICogQHBhcmFtIGNlbGxWYWx1ZVxuICAgKiBAcGFyYW0gW3Jvd1ZhbHVlXVxuICAgKiBAcmV0dXJucyBmaWx0ZXJcbiAgICovXG4gIGdldEZpbHRlcihjZWxsVmFsdWU6IGFueSwgcm93VmFsdWU/OiBhbnkpOiBhbnlbXSB7XG4gICAgbGV0IHJlc3VsdDtcbiAgICBzd2l0Y2ggKHRoaXMuZmlsdGVyU291cmNlKSB7XG4gICAgICBjYXNlICdyZW5kZXInOlxuICAgICAgICByZXN1bHQgPSBbdGhpcy5nZXRDZWxsRGF0YShjZWxsVmFsdWUsIHJvd1ZhbHVlKV07XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnZGF0YSc6XG4gICAgICAgIHJlc3VsdCA9IFtjZWxsVmFsdWVdO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2JvdGgnOlxuICAgICAgICByZXN1bHQgPSBbY2VsbFZhbHVlLCB0aGlzLmdldENlbGxEYXRhKGNlbGxWYWx1ZSwgcm93VmFsdWUpXTtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0RmlsdGVyRXhwcmVzc2lvbihxdWlja0ZpbHRlcjogc3RyaW5nKTogRXhwcmVzc2lvbiB7XG4gICAgcmV0dXJuIEZpbHRlckV4cHJlc3Npb25VdGlscy5idWlsZEV4cHJlc3Npb25MaWtlKHRoaXMudGFibGVDb2x1bW4uYXR0ciwgcXVpY2tGaWx0ZXIpO1xuICB9XG59XG4iXX0=