@c8y/ngx-components
Version:
Angular modules for Cumulocity IoT applications
44 lines • 6.54 kB
JavaScript
import { Inject, Injectable, Optional } from '@angular/core';
import { AbstractConfigurationStrategy, DATA_GRID_CONFIGURATION_CONTEXT, DATA_GRID_CONFIGURATION_CONTEXT_PROVIDER, UserPreferencesConfigurationStrategy } from '@c8y/ngx-components';
import { cloneDeep } from 'lodash-es';
import { of } from 'rxjs';
import * as i0 from "@angular/core";
import * as i1 from "@c8y/ngx-components";
export class SmartGroupGridConfigurationStrategy extends AbstractConfigurationStrategy {
constructor(userPreferencesConfigurationStrategy, context, contextProvider) {
super(context, contextProvider);
this.userPreferencesConfigurationStrategy = userPreferencesConfigurationStrategy;
this.context = context;
this.contextProvider = contextProvider;
}
getConfig$(context) {
const group = cloneDeep(this.retrieveContext(context)?.group);
if (group?.c8y_DeviceColumnsConfig?.columns?.length) {
group.c8y_DeviceColumnsConfig.columns = group.c8y_DeviceColumnsConfig.columns.map(column => {
delete column.filter;
return column;
});
}
return of(group?.c8y_DeviceColumnsConfig);
}
saveConfig$(config, _context) {
return of(config);
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SmartGroupGridConfigurationStrategy, deps: [{ token: i1.UserPreferencesConfigurationStrategy }, { token: DATA_GRID_CONFIGURATION_CONTEXT, optional: true }, { token: DATA_GRID_CONFIGURATION_CONTEXT_PROVIDER, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SmartGroupGridConfigurationStrategy, providedIn: 'root' }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SmartGroupGridConfigurationStrategy, decorators: [{
type: Injectable,
args: [{ providedIn: 'root' }]
}], ctorParameters: () => [{ type: i1.UserPreferencesConfigurationStrategy }, { type: undefined, decorators: [{
type: Inject,
args: [DATA_GRID_CONFIGURATION_CONTEXT]
}, {
type: Optional
}] }, { type: undefined, decorators: [{
type: Inject,
args: [DATA_GRID_CONFIGURATION_CONTEXT_PROVIDER]
}, {
type: Optional
}] }] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtZ3JvdXAtZ3JpZC1jb25maWd1cmF0aW9uLXN0cmF0ZWd5LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zdWItYXNzZXRzL3NtYXJ0LWdyb3VwLWdyaWQtY29uZmlndXJhdGlvbi1zdHJhdGVneS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQ0wsNkJBQTZCLEVBQzdCLCtCQUErQixFQUMvQix3Q0FBd0MsRUFJeEMsb0NBQW9DLEVBQ3JDLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUN0QyxPQUFPLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7QUFJdEMsTUFBTSxPQUFPLG1DQUFvQyxTQUFRLDZCQUE2QjtJQUNwRixZQUNZLG9DQUEwRSxFQUcxRSxPQUEwQixFQUcxQixlQUEwQztRQUVwRCxLQUFLLENBQUMsT0FBTyxFQUFFLGVBQWUsQ0FBQyxDQUFDO1FBUnRCLHlDQUFvQyxHQUFwQyxvQ0FBb0MsQ0FBc0M7UUFHMUUsWUFBTyxHQUFQLE9BQU8sQ0FBbUI7UUFHMUIsb0JBQWUsR0FBZixlQUFlLENBQTJCO0lBR3RELENBQUM7SUFFRCxVQUFVLENBQUMsT0FBb0M7UUFDN0MsTUFBTSxLQUFLLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFOUQsSUFBSSxLQUFLLEVBQUUsdUJBQXVCLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxDQUFDO1lBQ3BELEtBQUssQ0FBQyx1QkFBdUIsQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLHVCQUF1QixDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUU7Z0JBQ3pGLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQztnQkFDckIsT0FBTyxNQUFNLENBQUM7WUFDaEIsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDO1FBRUQsT0FBTyxFQUFFLENBQUMsS0FBSyxFQUFFLHVCQUF1QixDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVELFdBQVcsQ0FBQyxNQUFrQixFQUFFLFFBQXFDO1FBQ25FLE9BQU8sRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3BCLENBQUM7K0dBNUJVLG1DQUFtQyxzRUFHcEMsK0JBQStCLDZCQUcvQix3Q0FBd0M7bUhBTnZDLG1DQUFtQyxjQUR0QixNQUFNOzs0RkFDbkIsbUNBQW1DO2tCQUQvQyxVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRTs7MEJBSTdCLE1BQU07MkJBQUMsK0JBQStCOzswQkFDdEMsUUFBUTs7MEJBRVIsTUFBTTsyQkFBQyx3Q0FBd0M7OzBCQUMvQyxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQWJzdHJhY3RDb25maWd1cmF0aW9uU3RyYXRlZ3ksXG4gIERBVEFfR1JJRF9DT05GSUdVUkFUSU9OX0NPTlRFWFQsXG4gIERBVEFfR1JJRF9DT05GSUdVUkFUSU9OX0NPTlRFWFRfUFJPVklERVIsXG4gIEdyaWRDb25maWcsXG4gIEdyaWRDb25maWdDb250ZXh0LFxuICBHcmlkQ29uZmlnQ29udGV4dFByb3ZpZGVyLFxuICBVc2VyUHJlZmVyZW5jZXNDb25maWd1cmF0aW9uU3RyYXRlZ3lcbn0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cyc7XG5pbXBvcnQgeyBjbG9uZURlZXAgfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFN1YkFzc2V0c0dyaWRDb25maWdDb250ZXh0IH0gZnJvbSAnLi9zdWItYXNzZXRzLWdyaWQtY29uZmlndXJhdGlvbi1zdHJhdGVneS5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBTbWFydEdyb3VwR3JpZENvbmZpZ3VyYXRpb25TdHJhdGVneSBleHRlbmRzIEFic3RyYWN0Q29uZmlndXJhdGlvblN0cmF0ZWd5IHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIHVzZXJQcmVmZXJlbmNlc0NvbmZpZ3VyYXRpb25TdHJhdGVneTogVXNlclByZWZlcmVuY2VzQ29uZmlndXJhdGlvblN0cmF0ZWd5LFxuICAgIEBJbmplY3QoREFUQV9HUklEX0NPTkZJR1VSQVRJT05fQ09OVEVYVClcbiAgICBAT3B0aW9uYWwoKVxuICAgIHByb3RlY3RlZCBjb250ZXh0OiBHcmlkQ29uZmlnQ29udGV4dCxcbiAgICBASW5qZWN0KERBVEFfR1JJRF9DT05GSUdVUkFUSU9OX0NPTlRFWFRfUFJPVklERVIpXG4gICAgQE9wdGlvbmFsKClcbiAgICBwcm90ZWN0ZWQgY29udGV4dFByb3ZpZGVyOiBHcmlkQ29uZmlnQ29udGV4dFByb3ZpZGVyXG4gICkge1xuICAgIHN1cGVyKGNvbnRleHQsIGNvbnRleHRQcm92aWRlcik7XG4gIH1cblxuICBnZXRDb25maWckKGNvbnRleHQ/OiBTdWJBc3NldHNHcmlkQ29uZmlnQ29udGV4dCk6IE9ic2VydmFibGU8R3JpZENvbmZpZz4ge1xuICAgIGNvbnN0IGdyb3VwID0gY2xvbmVEZWVwKHRoaXMucmV0cmlldmVDb250ZXh0KGNvbnRleHQpPy5ncm91cCk7XG5cbiAgICBpZiAoZ3JvdXA/LmM4eV9EZXZpY2VDb2x1bW5zQ29uZmlnPy5jb2x1bW5zPy5sZW5ndGgpIHtcbiAgICAgIGdyb3VwLmM4eV9EZXZpY2VDb2x1bW5zQ29uZmlnLmNvbHVtbnMgPSBncm91cC5jOHlfRGV2aWNlQ29sdW1uc0NvbmZpZy5jb2x1bW5zLm1hcChjb2x1bW4gPT4ge1xuICAgICAgICBkZWxldGUgY29sdW1uLmZpbHRlcjtcbiAgICAgICAgcmV0dXJuIGNvbHVtbjtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiBvZihncm91cD8uYzh5X0RldmljZUNvbHVtbnNDb25maWcpO1xuICB9XG5cbiAgc2F2ZUNvbmZpZyQoY29uZmlnOiBHcmlkQ29uZmlnLCBfY29udGV4dD86IFN1YkFzc2V0c0dyaWRDb25maWdDb250ZXh0KTogT2JzZXJ2YWJsZTxHcmlkQ29uZmlnPiB7XG4gICAgcmV0dXJuIG9mKGNvbmZpZyk7XG4gIH1cbn1cbiJdfQ==