mirror of
https://github.com/Abdulazizzn/n8n-enterprise-unlocked.git
synced 2025-12-16 17:46:45 +00:00
feat: Append item index suffix to an error message, if provided, and node has many input items (#9070)
This commit is contained in:
@@ -84,6 +84,10 @@ const n8nVersion = computed(() => {
|
||||
return rootStore.versionCli + ` (${instanceType})`;
|
||||
});
|
||||
|
||||
const hasManyInputItems = computed(() => {
|
||||
return ndvStore.ndvInputData.length > 1;
|
||||
});
|
||||
|
||||
const nodeDefaultName = computed(() => {
|
||||
const node = props.error?.node;
|
||||
if (!node) {
|
||||
@@ -214,33 +218,48 @@ function getErrorDescription(): string {
|
||||
);
|
||||
}
|
||||
|
||||
function addItemIndexSuffix(message: string): string {
|
||||
let itemIndexSuffix = '';
|
||||
|
||||
const ITEM_INDEX_SUFFIX_TEXT = '[item ';
|
||||
|
||||
if (
|
||||
hasManyInputItems.value &&
|
||||
!message.includes(ITEM_INDEX_SUFFIX_TEXT) &&
|
||||
props.error?.context?.itemIndex !== undefined
|
||||
) {
|
||||
itemIndexSuffix = ` [item ${props.error.context.itemIndex}]`;
|
||||
}
|
||||
|
||||
return message + itemIndexSuffix;
|
||||
}
|
||||
|
||||
function getErrorMessage(): string {
|
||||
const baseErrorMessage = '';
|
||||
let message = '';
|
||||
|
||||
const isSubNodeError =
|
||||
props.error.name === 'NodeOperationError' &&
|
||||
(props.error as NodeOperationError).functionality === 'configuration-node';
|
||||
|
||||
if (isSubNodeError) {
|
||||
const baseErrorMessageSubNode = i18n.baseText('nodeErrorView.errorSubNode', {
|
||||
message = i18n.baseText('nodeErrorView.errorSubNode', {
|
||||
interpolate: { node: props.error.node.name },
|
||||
});
|
||||
return baseErrorMessageSubNode;
|
||||
}
|
||||
|
||||
if (props.error.message === props.error.description) {
|
||||
return baseErrorMessage;
|
||||
}
|
||||
if (!props.error.context?.messageTemplate) {
|
||||
return baseErrorMessage + props.error.message;
|
||||
}
|
||||
|
||||
} else if (
|
||||
props.error.message === props.error.description ||
|
||||
!props.error.context?.messageTemplate
|
||||
) {
|
||||
message = baseErrorMessage + props.error.message;
|
||||
} else {
|
||||
const parameterName = parameterDisplayName(props.error.context.parameter as string);
|
||||
|
||||
return (
|
||||
message =
|
||||
baseErrorMessage +
|
||||
(props.error.context.messageTemplate as string).replace(/%%PARAMETER%%/g, parameterName)
|
||||
);
|
||||
(props.error.context.messageTemplate as string).replace(/%%PARAMETER%%/g, parameterName);
|
||||
}
|
||||
|
||||
return addItemIndexSuffix(message);
|
||||
}
|
||||
|
||||
function parameterDisplayName(path: string, fullPath = true) {
|
||||
|
||||
Reference in New Issue
Block a user