@c8y/ngx-components
Version:
Angular modules for Cumulocity IoT applications
35 lines • 4.93 kB
JavaScript
import { BaseColumn, getBasicInputArrayFormFieldConfig, gettext } from '@c8y/ngx-components';
import { SerialNumberCellRendererComponent } from './serial-number.cell-renderer.component';
export class SerialNumberDeviceGridColumn extends BaseColumn {
constructor(initialColumnConfig) {
super(initialColumnConfig);
const hardwareSerialNumberPath = 'c8y_Hardware.serialNumber';
this.name = 'serialNumber';
this.header = gettext('Serial number');
this.cellRendererComponent = SerialNumberCellRendererComponent;
this.filterable = true;
this.filteringConfig = {
fields: getBasicInputArrayFormFieldConfig({
key: 'serialNumbers',
label: gettext('Show items with serial number'),
addText: gettext('Add next`serial number`'),
tooltip: gettext('Use * as a wildcard character'),
placeholder: '54321-123'
}),
getFilter(model) {
const filter = {};
if (model.serialNumbers.length) {
filter.push = {
[hardwareSerialNumberPath]: { __in: model.serialNumbers }
};
}
return filter;
}
};
this.sortable = true;
this.sortingConfig = {
pathSortingConfigs: [{ path: hardwareSerialNumberPath }]
};
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VyaWFsLW51bWJlci5kZXZpY2UtZ3JpZC1jb2x1bW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9kZXZpY2UtZ3JpZC9jb2x1bW5zL3NlcmlhbC1udW1iZXIuZGV2aWNlLWdyaWQtY29sdW1uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxVQUFVLEVBRVYsaUNBQWlDLEVBQ2pDLE9BQU8sRUFDUixNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBRTVGLE1BQU0sT0FBTyw0QkFBNkIsU0FBUSxVQUFVO0lBQzFELFlBQVksbUJBQWtDO1FBQzVDLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBRTNCLE1BQU0sd0JBQXdCLEdBQUcsMkJBQTJCLENBQUM7UUFFN0QsSUFBSSxDQUFDLElBQUksR0FBRyxjQUFjLENBQUM7UUFDM0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLHFCQUFxQixHQUFHLGlDQUFpQyxDQUFDO1FBRS9ELElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxlQUFlLEdBQUc7WUFDckIsTUFBTSxFQUFFLGlDQUFpQyxDQUFDO2dCQUN4QyxHQUFHLEVBQUUsZUFBZTtnQkFDcEIsS0FBSyxFQUFFLE9BQU8sQ0FBQywrQkFBK0IsQ0FBQztnQkFDL0MsT0FBTyxFQUFFLE9BQU8sQ0FBQyx5QkFBeUIsQ0FBQztnQkFDM0MsT0FBTyxFQUFFLE9BQU8sQ0FBQywrQkFBK0IsQ0FBQztnQkFDakQsV0FBVyxFQUFFLFdBQVc7YUFDekIsQ0FBQztZQUNGLFNBQVMsQ0FBQyxLQUFVO2dCQUNsQixNQUFNLE1BQU0sR0FBUSxFQUFFLENBQUM7Z0JBQ3ZCLElBQUksS0FBSyxDQUFDLGFBQWEsQ0FBQyxNQUFNLEVBQUUsQ0FBQztvQkFDL0IsTUFBTSxDQUFDLElBQUksR0FBRzt3QkFDWixDQUFDLHdCQUF3QixDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsS0FBSyxDQUFDLGFBQWEsRUFBRTtxQkFDMUQsQ0FBQztnQkFDSixDQUFDO2dCQUNELE9BQU8sTUFBTSxDQUFDO1lBQ2hCLENBQUM7U0FDRixDQUFDO1FBRUYsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7UUFDckIsSUFBSSxDQUFDLGFBQWEsR0FBRztZQUNuQixrQkFBa0IsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLHdCQUF3QixFQUFFLENBQUM7U0FDekQsQ0FBQztJQUNKLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEJhc2VDb2x1bW4sXG4gIENvbHVtbkNvbmZpZyxcbiAgZ2V0QmFzaWNJbnB1dEFycmF5Rm9ybUZpZWxkQ29uZmlnLFxuICBnZXR0ZXh0XG59IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgU2VyaWFsTnVtYmVyQ2VsbFJlbmRlcmVyQ29tcG9uZW50IH0gZnJvbSAnLi9zZXJpYWwtbnVtYmVyLmNlbGwtcmVuZGVyZXIuY29tcG9uZW50JztcblxuZXhwb3J0IGNsYXNzIFNlcmlhbE51bWJlckRldmljZUdyaWRDb2x1bW4gZXh0ZW5kcyBCYXNlQ29sdW1uIHtcbiAgY29uc3RydWN0b3IoaW5pdGlhbENvbHVtbkNvbmZpZz86IENvbHVtbkNvbmZpZykge1xuICAgIHN1cGVyKGluaXRpYWxDb2x1bW5Db25maWcpO1xuXG4gICAgY29uc3QgaGFyZHdhcmVTZXJpYWxOdW1iZXJQYXRoID0gJ2M4eV9IYXJkd2FyZS5zZXJpYWxOdW1iZXInO1xuXG4gICAgdGhpcy5uYW1lID0gJ3NlcmlhbE51bWJlcic7XG4gICAgdGhpcy5oZWFkZXIgPSBnZXR0ZXh0KCdTZXJpYWwgbnVtYmVyJyk7XG4gICAgdGhpcy5jZWxsUmVuZGVyZXJDb21wb25lbnQgPSBTZXJpYWxOdW1iZXJDZWxsUmVuZGVyZXJDb21wb25lbnQ7XG5cbiAgICB0aGlzLmZpbHRlcmFibGUgPSB0cnVlO1xuICAgIHRoaXMuZmlsdGVyaW5nQ29uZmlnID0ge1xuICAgICAgZmllbGRzOiBnZXRCYXNpY0lucHV0QXJyYXlGb3JtRmllbGRDb25maWcoe1xuICAgICAgICBrZXk6ICdzZXJpYWxOdW1iZXJzJyxcbiAgICAgICAgbGFiZWw6IGdldHRleHQoJ1Nob3cgaXRlbXMgd2l0aCBzZXJpYWwgbnVtYmVyJyksXG4gICAgICAgIGFkZFRleHQ6IGdldHRleHQoJ0FkZCBuZXh0YHNlcmlhbCBudW1iZXJgJyksXG4gICAgICAgIHRvb2x0aXA6IGdldHRleHQoJ1VzZSAqIGFzIGEgd2lsZGNhcmQgY2hhcmFjdGVyJyksXG4gICAgICAgIHBsYWNlaG9sZGVyOiAnNTQzMjEtMTIzJ1xuICAgICAgfSksXG4gICAgICBnZXRGaWx0ZXIobW9kZWw6IGFueSk6IGFueSB7XG4gICAgICAgIGNvbnN0IGZpbHRlcjogYW55ID0ge307XG4gICAgICAgIGlmIChtb2RlbC5zZXJpYWxOdW1iZXJzLmxlbmd0aCkge1xuICAgICAgICAgIGZpbHRlci5wdXNoID0ge1xuICAgICAgICAgICAgW2hhcmR3YXJlU2VyaWFsTnVtYmVyUGF0aF06IHsgX19pbjogbW9kZWwuc2VyaWFsTnVtYmVycyB9XG4gICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZmlsdGVyO1xuICAgICAgfVxuICAgIH07XG5cbiAgICB0aGlzLnNvcnRhYmxlID0gdHJ1ZTtcbiAgICB0aGlzLnNvcnRpbmdDb25maWcgPSB7XG4gICAgICBwYXRoU29ydGluZ0NvbmZpZ3M6IFt7IHBhdGg6IGhhcmR3YXJlU2VyaWFsTnVtYmVyUGF0aCB9XVxuICAgIH07XG4gIH1cbn1cbiJdfQ==