divided ts and attr completers
This commit is contained in:
parent
4bd0833eed
commit
0004cdeaf9
@ -43,8 +43,9 @@ import {
|
||||
CalculatedFieldDebugDialogData,
|
||||
CalculatedFieldDialogData,
|
||||
CalculatedFieldRollingValueArgumentAutocomplete,
|
||||
CalculatedFieldSingleValueArgumentAutocomplete,
|
||||
CalculatedFieldTestScriptDialogData,
|
||||
CalculatedFieldAttributeValueArgumentAutocomplete,
|
||||
CalculatedFieldLatestTelemetryArgumentAutocomplete,
|
||||
} from '@shared/models/calculated-field.models';
|
||||
import {
|
||||
CalculatedFieldDebugDialogComponent,
|
||||
@ -302,9 +303,17 @@ export class CalculatedFieldsTableConfig extends EntityTableConfig<CalculatedFie
|
||||
|
||||
private getArgumentsEditorCompleter(argumentsObj: Record<string, CalculatedFieldArgument>): TbEditorCompleter {
|
||||
return new TbEditorCompleter(Object.keys(argumentsObj).reduce((acc, key) => {
|
||||
acc[key] = argumentsObj[key].refEntityKey.type === ArgumentType.Rolling
|
||||
? CalculatedFieldRollingValueArgumentAutocomplete
|
||||
: CalculatedFieldSingleValueArgumentAutocomplete;
|
||||
switch (argumentsObj[key].refEntityKey.type) {
|
||||
case ArgumentType.Attribute:
|
||||
acc[key] = CalculatedFieldAttributeValueArgumentAutocomplete;
|
||||
break;
|
||||
case ArgumentType.LatestTelemetry:
|
||||
acc[key] = CalculatedFieldLatestTelemetryArgumentAutocomplete;
|
||||
break;
|
||||
case ArgumentType.Rolling:
|
||||
acc[key] = CalculatedFieldRollingValueArgumentAutocomplete;
|
||||
break;
|
||||
}
|
||||
return acc;
|
||||
}, {}))
|
||||
}
|
||||
|
||||
@ -184,6 +184,9 @@ export class JsFuncComponent implements OnInit, OnChanges, OnDestroy, ControlVal
|
||||
this.updateFunctionArgsString();
|
||||
this.updateFunctionLabel();
|
||||
}
|
||||
if (changes.editorCompleter) {
|
||||
this.updateCompleters();
|
||||
}
|
||||
}
|
||||
|
||||
ngOnInit(): void {
|
||||
|
||||
@ -213,10 +213,28 @@ export type CalculatedFieldArgumentEventValue<ValueType = unknown> = CalculatedF
|
||||
|
||||
export type CalculatedFieldEventArguments<ValueType = unknown> = Record<string, CalculatedFieldArgumentEventValue<ValueType>>;
|
||||
|
||||
export const CalculatedFieldSingleValueArgumentAutocomplete = {
|
||||
export const CalculatedFieldLatestTelemetryArgumentAutocomplete = {
|
||||
meta: 'object',
|
||||
type: '{ ts: number; value: any; }',
|
||||
description: 'Calculated field single value argument.',
|
||||
description: 'Calculated field latest telemetry value argument.',
|
||||
children: {
|
||||
ts: {
|
||||
meta: 'number',
|
||||
type: 'number',
|
||||
description: 'Time stamp',
|
||||
},
|
||||
value: {
|
||||
meta: 'any',
|
||||
type: 'any',
|
||||
description: 'Value',
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
export const CalculatedFieldAttributeValueArgumentAutocomplete = {
|
||||
meta: 'object',
|
||||
type: '{ ts: number; value: any; }',
|
||||
description: 'Calculated field attribute value argument.',
|
||||
children: {
|
||||
ts: {
|
||||
meta: 'number',
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user