fix: Workflow session variables cannot be added#3998
Conversation
|
Adding the "do-not-merge/release-note-label-needed" label because no release-note block was detected, please follow our release note process to remove it. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. |
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
|
|
||
| ChatFieldDialogRef.value.close() | ||
| props.nodeModel.graphModel.eventCenter.emit('chatFieldList') | ||
| } |
There was a problem hiding this comment.
Your code is mostly correct but there's one potential issue to address. If data is an empty object {} or some other falsy value, it will cause the inputFieldList.value.splice() method to be called with incorrect arguments resulting in unexpected behavior.
To fix this, we can add a check for the truthiness of data before performing the splice operation:
@@ -84,6 +84,7 @@ function refreshFieldList(data: any, index: any) {
return
}
- if ([undefined, null].includes(index)) {
+ if ([undefined, null].includes(index) || !Reflect.hasOwnProperty.call(data, 'id')) { // additional check for non-empty dataThis check ensures that only properly formatted objects are spliced into the array to prevent errors. Here is the updated line:
if ([undefined, null].includes(index) || !Reflect.hasOwnProperty.call(data, 'id')) {
inputFieldList.value.push(data);
+ } else {
+ const idProperty = Reflect.ownKeys(data).find(key => key === 'id');
inputFieldList.value.splice(idProperty ? index : inputFieldList.value.length, 1, data);
}Make this change based on your actual requirements, typically checking a unique identifier like id. The above check will ensure that an appropriate ID exists in the data object before attempting to edit it.
fix: Workflow session variables cannot be added