1
0
mirror of https://github.com/node-red/node-red.git synced 2023-10-10 13:36:53 +02:00

Updated Design: dynamic palette (markdown)

Nick O'Leary 2014-08-24 01:20:24 -07:00
parent a60dbffb3c
commit 2c18c0a838

@ -16,20 +16,9 @@ Some points that need to be considered:
- what to do if the node is being used in the current flow? Safest option is to reject the removal. - what to do if the node is being used in the current flow? Safest option is to reject the removal.
- removing a node, without also removing the files, will mean it returns to the palette on the next restart. That would be unexpected. - removing a node, without also removing the files, will mean it returns to the palette on the next restart. That would be unexpected.
---
## On the packaging of nodes See [[Definitions]] for a description of node/node set/nide module/node pack.
### node ###
A **node** is defined in an html file and a js file. The js file will include a call to the runtime's version of `RED.nodes.registerType`. The html file will contain the template and help script blocks, along with a call to the editor's version of `RED.nodes.registerType`.
### node set ###
A js/html file pair may contain multiple **nodes**. This is called a **node set**. Any error loading the js/html files will cause all **nodes** in a **node set** to be unavailable.
### node module ###
An npm **node module** may contain multiple js/html file pairs - each identified in the `package.json` file. Hence, an npm module may contain multiple **node sets**, each containing 1 or more **nodes**.
### node pack ###
A `node pack` is a collection of similarly-themed nodes that a user might want to install together. It is structurally the same as a node module, but acts as a meta-package that pulls in multiple specific **node modules** using the standard package dependency mechanism.
### Add/Remove vs Enable/Disable ### Add/Remove vs Enable/Disable
The Add/Remove api is for getting new nodes installed into the runtime as well as removing them. It operates at either the js/html level, or the node module level. The Add/Remove api is for getting new nodes installed into the runtime as well as removing them. It operates at either the js/html level, or the node module level.