@c8y/ngx-components
Version:
Angular modules for Cumulocity IoT applications
31 lines • 4.43 kB
JavaScript
import { BaseColumn, getBasicInputArrayFormFieldConfig, gettext } from '@c8y/ngx-components';
export class DescriptionGridColumn extends BaseColumn {
constructor(initialColumnConfig) {
super(initialColumnConfig);
this.name = 'description';
this.path = 'description';
this.header = gettext('Description');
this.filterable = true;
this.filteringConfig = {
fields: getBasicInputArrayFormFieldConfig({
key: 'descriptions',
label: initialColumnConfig?.filterLabel ?? gettext('Filter items by description'),
addText: gettext('Add next`description`'),
tooltip: gettext('Use * as a wildcard character'),
placeholder: initialColumnConfig?.placeholder ?? gettext('Description…')
}),
getFilter(model) {
const filter = {};
if (model.descriptions.length) {
filter.description = { __in: model.descriptions };
}
return filter;
}
};
this.sortable = true;
this.sortingConfig = {
pathSortingConfigs: [{ path: this.path }]
};
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzY3JpcHRpb24uZ3JpZC1jb2x1bW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9yZXBvc2l0b3J5L3NoYXJlZC9jb2x1bW5zL2Rlc2NyaXB0aW9uLmdyaWQtY29sdW1uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxVQUFVLEVBRVYsaUNBQWlDLEVBQ2pDLE9BQU8sRUFDUixNQUFNLHFCQUFxQixDQUFDO0FBRTdCLE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxVQUFVO0lBQ25ELFlBQVksbUJBQW1GO1FBQzdGLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBQzNCLElBQUksQ0FBQyxJQUFJLEdBQUcsYUFBYSxDQUFDO1FBQzFCLElBQUksQ0FBQyxJQUFJLEdBQUcsYUFBYSxDQUFDO1FBQzFCLElBQUksQ0FBQyxNQUFNLEdBQUcsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBRXJDLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxlQUFlLEdBQUc7WUFDckIsTUFBTSxFQUFFLGlDQUFpQyxDQUFDO2dCQUN4QyxHQUFHLEVBQUUsY0FBYztnQkFDbkIsS0FBSyxFQUFFLG1CQUFtQixFQUFFLFdBQVcsSUFBSSxPQUFPLENBQUMsNkJBQTZCLENBQUM7Z0JBQ2pGLE9BQU8sRUFBRSxPQUFPLENBQUMsdUJBQXVCLENBQUM7Z0JBQ3pDLE9BQU8sRUFBRSxPQUFPLENBQUMsK0JBQStCLENBQUM7Z0JBQ2pELFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxXQUFXLElBQUksT0FBTyxDQUFDLGNBQWMsQ0FBQzthQUN6RSxDQUFDO1lBQ0YsU0FBUyxDQUFDLEtBQVU7Z0JBQ2xCLE1BQU0sTUFBTSxHQUFRLEVBQUUsQ0FBQztnQkFDdkIsSUFBSSxLQUFLLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxDQUFDO29CQUM5QixNQUFNLENBQUMsV0FBVyxHQUFHLEVBQUUsSUFBSSxFQUFFLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztnQkFDcEQsQ0FBQztnQkFDRCxPQUFPLE1BQU0sQ0FBQztZQUNoQixDQUFDO1NBQ0YsQ0FBQztRQUVGLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxhQUFhLEdBQUc7WUFDbkIsa0JBQWtCLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDMUMsQ0FBQztJQUNKLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEJhc2VDb2x1bW4sXG4gIENvbHVtbkNvbmZpZyxcbiAgZ2V0QmFzaWNJbnB1dEFycmF5Rm9ybUZpZWxkQ29uZmlnLFxuICBnZXR0ZXh0XG59IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMnO1xuXG5leHBvcnQgY2xhc3MgRGVzY3JpcHRpb25HcmlkQ29sdW1uIGV4dGVuZHMgQmFzZUNvbHVtbiB7XG4gIGNvbnN0cnVjdG9yKGluaXRpYWxDb2x1bW5Db25maWc/OiBDb2x1bW5Db25maWcgJiB7IGZpbHRlckxhYmVsPzogc3RyaW5nOyBwbGFjZWhvbGRlcj86IHN0cmluZyB9KSB7XG4gICAgc3VwZXIoaW5pdGlhbENvbHVtbkNvbmZpZyk7XG4gICAgdGhpcy5uYW1lID0gJ2Rlc2NyaXB0aW9uJztcbiAgICB0aGlzLnBhdGggPSAnZGVzY3JpcHRpb24nO1xuICAgIHRoaXMuaGVhZGVyID0gZ2V0dGV4dCgnRGVzY3JpcHRpb24nKTtcblxuICAgIHRoaXMuZmlsdGVyYWJsZSA9IHRydWU7XG4gICAgdGhpcy5maWx0ZXJpbmdDb25maWcgPSB7XG4gICAgICBmaWVsZHM6IGdldEJhc2ljSW5wdXRBcnJheUZvcm1GaWVsZENvbmZpZyh7XG4gICAgICAgIGtleTogJ2Rlc2NyaXB0aW9ucycsXG4gICAgICAgIGxhYmVsOiBpbml0aWFsQ29sdW1uQ29uZmlnPy5maWx0ZXJMYWJlbCA/PyBnZXR0ZXh0KCdGaWx0ZXIgaXRlbXMgYnkgZGVzY3JpcHRpb24nKSxcbiAgICAgICAgYWRkVGV4dDogZ2V0dGV4dCgnQWRkIG5leHRgZGVzY3JpcHRpb25gJyksXG4gICAgICAgIHRvb2x0aXA6IGdldHRleHQoJ1VzZSAqIGFzIGEgd2lsZGNhcmQgY2hhcmFjdGVyJyksXG4gICAgICAgIHBsYWNlaG9sZGVyOiBpbml0aWFsQ29sdW1uQ29uZmlnPy5wbGFjZWhvbGRlciA/PyBnZXR0ZXh0KCdEZXNjcmlwdGlvbuKApicpXG4gICAgICB9KSxcbiAgICAgIGdldEZpbHRlcihtb2RlbDogYW55KTogYW55IHtcbiAgICAgICAgY29uc3QgZmlsdGVyOiBhbnkgPSB7fTtcbiAgICAgICAgaWYgKG1vZGVsLmRlc2NyaXB0aW9ucy5sZW5ndGgpIHtcbiAgICAgICAgICBmaWx0ZXIuZGVzY3JpcHRpb24gPSB7IF9faW46IG1vZGVsLmRlc2NyaXB0aW9ucyB9O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmaWx0ZXI7XG4gICAgICB9XG4gICAgfTtcblxuICAgIHRoaXMuc29ydGFibGUgPSB0cnVlO1xuICAgIHRoaXMuc29ydGluZ0NvbmZpZyA9IHtcbiAgICAgIHBhdGhTb3J0aW5nQ29uZmlnczogW3sgcGF0aDogdGhpcy5wYXRoIH1dXG4gICAgfTtcbiAgfVxufVxuIl19