Skip to content

Fix missing nodes in the palette (isolate editor scripts)#15

Merged
mutec merged 1 commit into
mainfrom
review-fixes
Jul 12, 2026
Merged

Fix missing nodes in the palette (isolate editor scripts)#15
mutec merged 1 commit into
mainfrom
review-fixes

Conversation

@mutec

@mutec mutec commented Jul 12, 2026

Copy link
Copy Markdown
Member

Follow-up to the review fixes.

Every node's editor script declared its definition object (const def) and
helper functions at the top level. Node-RED evaluates all node editor
scripts in the same global scope, so the second node's const def threw
"Identifier 'def' has already been declared", aborting that script — only
the first node (sACN in) appeared in the palette.

Wrapping each generated init script in an IIFE keeps those declarations
local. The scripts still access the globals they need (RED, $,
document) via closure, and registerType runs inside the IIFE.

The generated editor scripts declared their definition object and helper
functions at the top level. Since Node-RED evaluates every node's editor
script in the same global scope, the second node's `const def` threw
"Identifier 'def' has already been declared", which aborted that script and
left the node missing from the palette — only the first node registered.
Wrap each init script in an IIFE so its declarations stay local.
@mutec
mutec merged commit c45c910 into main Jul 12, 2026
11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant