Improved context passing
This commit is contained in:
parent
5354eaa80b
commit
ff647aedc7
@ -42,6 +42,7 @@ import {
|
|||||||
} from '@shared/models/calculated-field.models';
|
} from '@shared/models/calculated-field.models';
|
||||||
import { CalculatedFieldDebugDialogComponent, CalculatedFieldDialogComponent } from './components/public-api';
|
import { CalculatedFieldDebugDialogComponent, CalculatedFieldDialogComponent } from './components/public-api';
|
||||||
import { ImportExportService } from '@shared/import-export/import-export.service';
|
import { ImportExportService } from '@shared/import-export/import-export.service';
|
||||||
|
import { CalculatedFieldId } from '@shared/models/id/calculated-field-id';
|
||||||
|
|
||||||
export class CalculatedFieldsTableConfig extends EntityTableConfig<CalculatedField, PageLink> {
|
export class CalculatedFieldsTableConfig extends EntityTableConfig<CalculatedField, PageLink> {
|
||||||
|
|
||||||
@ -52,11 +53,7 @@ export class CalculatedFieldsTableConfig extends EntityTableConfig<CalculatedFie
|
|||||||
readonly tenantId = getCurrentAuthUser(this.store).tenantId;
|
readonly tenantId = getCurrentAuthUser(this.store).tenantId;
|
||||||
additionalDebugActionConfig = {
|
additionalDebugActionConfig = {
|
||||||
title: this.translate.instant('calculated-fields.see-debug-events'),
|
title: this.translate.instant('calculated-fields.see-debug-events'),
|
||||||
action: this.openDebugDialog.bind(this),
|
action: (id?: CalculatedFieldId) => this.openDebugDialog.call(this, id),
|
||||||
data: {
|
|
||||||
tenantId: this.tenantId,
|
|
||||||
entityId: this.entityId,
|
|
||||||
},
|
|
||||||
};
|
};
|
||||||
|
|
||||||
constructor(private calculatedFieldsService: CalculatedFieldsService,
|
constructor(private calculatedFieldsService: CalculatedFieldsService,
|
||||||
@ -140,7 +137,7 @@ export class CalculatedFieldsTableConfig extends EntityTableConfig<CalculatedFie
|
|||||||
onOpenDebugConfig($event: Event, { debugSettings = {}, id }: CalculatedField): void {
|
onOpenDebugConfig($event: Event, { debugSettings = {}, id }: CalculatedField): void {
|
||||||
const additionalActionConfig = {
|
const additionalActionConfig = {
|
||||||
...this.additionalDebugActionConfig,
|
...this.additionalDebugActionConfig,
|
||||||
action: () => this.openDebugDialog({...this.additionalDebugActionConfig.data, id }),
|
action: () => this.openDebugDialog(id)
|
||||||
};
|
};
|
||||||
const { viewContainerRef } = this.getTable();
|
const { viewContainerRef } = this.getTable();
|
||||||
if ($event) {
|
if ($event) {
|
||||||
@ -206,11 +203,15 @@ export class CalculatedFieldsTableConfig extends EntityTableConfig<CalculatedFie
|
|||||||
.afterClosed();
|
.afterClosed();
|
||||||
}
|
}
|
||||||
|
|
||||||
private openDebugDialog(data: CalculatedFieldDebugDialogData): void {
|
private openDebugDialog(id: CalculatedFieldId): void {
|
||||||
this.dialog.open<CalculatedFieldDebugDialogComponent, CalculatedFieldDebugDialogData, null>(CalculatedFieldDebugDialogComponent, {
|
this.dialog.open<CalculatedFieldDebugDialogComponent, CalculatedFieldDebugDialogData, null>(CalculatedFieldDebugDialogComponent, {
|
||||||
disableClose: true,
|
disableClose: true,
|
||||||
panelClass: ['tb-dialog', 'tb-fullscreen-dialog'],
|
panelClass: ['tb-dialog', 'tb-fullscreen-dialog'],
|
||||||
data
|
data: {
|
||||||
|
tenantId: this.tenantId,
|
||||||
|
entityId: this.entityId,
|
||||||
|
id
|
||||||
|
}
|
||||||
})
|
})
|
||||||
.afterClosed()
|
.afterClosed()
|
||||||
.subscribe();
|
.subscribe();
|
||||||
|
|||||||
@ -67,10 +67,7 @@ export class CalculatedFieldDialogComponent extends DialogComponent<CalculatedFi
|
|||||||
|
|
||||||
additionalDebugActionConfig = this.data.value?.id ? {
|
additionalDebugActionConfig = this.data.value?.id ? {
|
||||||
...this.data.additionalDebugActionConfig,
|
...this.data.additionalDebugActionConfig,
|
||||||
action: () => this.data.additionalDebugActionConfig.action({
|
action: () => this.data.additionalDebugActionConfig.action(this.data.value.id)
|
||||||
...this.data.additionalDebugActionConfig.data,
|
|
||||||
id: this.data.value.id,
|
|
||||||
}),
|
|
||||||
} : null;
|
} : null;
|
||||||
|
|
||||||
readonly OutputTypeTranslations = OutputTypeTranslations;
|
readonly OutputTypeTranslations = OutputTypeTranslations;
|
||||||
|
|||||||
@ -21,7 +21,6 @@ import { DeviceCredentialMQTTBasic } from '@shared/models/device.models';
|
|||||||
import { Lwm2mSecurityConfigModels } from '@shared/models/lwm2m-security-config.models';
|
import { Lwm2mSecurityConfigModels } from '@shared/models/lwm2m-security-config.models';
|
||||||
import { TenantId } from '@shared/models/id/tenant-id';
|
import { TenantId } from '@shared/models/id/tenant-id';
|
||||||
import { RuleChainMetaData } from '@shared/models/rule-chain.models';
|
import { RuleChainMetaData } from '@shared/models/rule-chain.models';
|
||||||
import { CalculatedFieldDebugDialogData } from '@shared/models/calculated-field.models';
|
|
||||||
|
|
||||||
export interface EntityInfo {
|
export interface EntityInfo {
|
||||||
name?: string;
|
name?: string;
|
||||||
@ -204,12 +203,9 @@ export interface EntityDebugSettings {
|
|||||||
allEnabledUntil?: number;
|
allEnabledUntil?: number;
|
||||||
}
|
}
|
||||||
|
|
||||||
export type AdditionalDebugActionConfigData = CalculatedFieldDebugDialogData;
|
|
||||||
|
|
||||||
export interface AdditionalDebugActionConfig {
|
export interface AdditionalDebugActionConfig {
|
||||||
action?: (data?: AdditionalDebugActionConfigData) => void;
|
action?: (id?: EntityId) => void;
|
||||||
title: string;
|
title: string;
|
||||||
data: AdditionalDebugActionConfigData;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
export type VersionedEntity = EntityInfoData & HasVersion | RuleChainMetaData;
|
export type VersionedEntity = EntityInfoData & HasVersion | RuleChainMetaData;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user