-
Notifications
You must be signed in to change notification settings - Fork 2
Open
Labels
bugSomething isn't workingSomething isn't working
Description
Provide a general summary of the issue in the Title above
I have a Comlink with roughly the following flow (based on linkedin's PublishPost use case):
set {
content = input.link ? {article: { source: input.link, title: input.title || input.link }} : undefined
}
// ...something
set if (Array.isArray(images) && images.length > 0) {
// set content (and override link if it was set); assume single image here
content = {media: images[0]}
}
set if (Array.isArray(images) && images.length > 1) {
content = {
multiImage: {
images: images,
}
}
}
Expected Behavior
I expect the content variable to always contain a new object with the single property; either {article}, {media}, or {multiImage}.
Current Behavior
It seems the existing object in the content variable gets merged with the new object instead, so I end up with {article, media}, {media, multiImage} and similar.
Possible Solution
I suspect the culprit might be in the interpreter; updating the stack is done with mergeVariables function which merges objects recursively:
| this.stack = mergeVariables(this.stack, result.value as NonPrimitive); |
Your Environment
- Version used: OneSDK v2.3.0
- Environment name and version: Node v18.12.1
- Operating System and version: Fedora Linux 37
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working