Commit Graph

580 Commits

Author SHA1 Message Date
Nick O'Leary 67d5b39c96 Status messages from nodes in subflows not delegated properly
Fixes #1016
2016-10-19 21:06:45 +01:00
Nick O'Leary 49f72881f4 Disable palette editor if npm not found 2016-10-12 22:30:32 +01:00
Nick O'Leary 5344949c71 Tidy up /flows api responses 2016-10-12 10:24:10 +01:00
Nick O'Leary 8e7d52e645 Avoid reencyrpting credentials if they haven't changed 2016-10-11 14:27:35 +01:00
Nick O'Leary 85b1c1fe97 Increase default apiMaxLength to 5mb and add to default settings
Closes #1001
2016-10-10 10:14:08 +01:00
Nick O'Leary f2d36b84b5 Don't hide install button on already-installed node modules 2016-10-09 22:23:47 +01:00
Nick O'Leary b4be1184fd Add v2 /flows api and deploy-overwrite protection 2016-10-09 22:02:40 +01:00
Nick O'Leary b00985f99f Replace palette-edit button with menu option 2016-09-30 20:33:27 +01:00
Nick O'Leary 300a8d3a89 Click to close search box 2016-09-30 13:27:53 +01:00
Nick O'Leary 18c8bbb0fc Add workspace search option 2016-09-29 23:46:29 +01:00
Nick O'Leary 252040f03b Add import-to-new-tab option 2016-09-23 22:02:12 +01:00
Nick O'Leary d29abc2724 Encrypt credentials by default 2016-09-23 10:38:30 +01:00
Nick O'Leary f9b972349d Move credential load/save storage functions under get/setFlows 2016-09-21 21:58:50 +01:00
Nick O'Leary e06cadd761 Pass full runtime object to storage and flow sub-components 2016-09-21 10:22:04 +01:00
Nick O'Leary d915b280d4 Add new options to export-nodes dialog 2016-09-19 13:54:23 +01:00
Nick O'Leary d7d30aa972 Default config nodes to global scope unless in a subflow
Closes #972
2016-08-26 13:26:42 +01:00
Nick O'Leary 57479edc59 Merge branch 'palette-ui' into 0.15.0 2016-08-26 13:01:03 +01:00
wajnberg ccc08be0ee Bidi support for Text Direction and Structured Text (#961)
* Bidi support for Text Direction and Structured Text

Signed-off-by: Moshe Wajnberg <wajnberg@il.ibm.com>

* Adding documentation for functions in bidi.js and format.js

Signed-off-by: Moshe Wajnberg <wajnberg@il.ibm.com>

* Removing unused functions from format.js

Signed-off-by: Moshe Wajnberg <wajnberg@il.ibm.com>
2016-08-25 16:47:30 +01:00
Nick O'Leary eb17562f4d NLS the palette editor 2016-08-14 23:08:37 +01:00
Nick O'Leary 11656382a7 Allow palette-editor to be disabled via editorTheme 2016-08-10 20:15:17 +01:00
Nick O'Leary e4d788ad0b Add install tab to palette-editor 2016-08-09 10:43:03 +01:00
Nick O'Leary 7220af3ef0 Move palette editor to left hand side 2016-08-04 16:49:36 +01:00
Nick O'Leary da818cf420 Add initial palette sidebar 2016-07-29 12:52:00 +01:00
Nick O'Leary 0ade8ff7a2 Add log warning if node module required version cannot be satisfied 2016-07-28 15:43:26 +01:00
Nick O'Leary d6b326c134 Handle empty credentials file
Closes #937
2016-07-26 22:23:49 +01:00
Nick O'Leary 92d5af7446 Ensure 'false' property values are displayed in info panel
Fixes #940
2016-07-15 22:33:17 +01:00
Nick O'Leary d57425a15e Fix node enable/disable over restart - load configs after settings init 2016-07-15 00:11:28 +01:00
Dave Conway-Jones e360e57a5b Fix node.status to check hasOwnProperty("text") 2016-07-06 17:22:45 +01:00
Jesse Naranjo dc24c05229 Keyboard shortcuts dialog update (#923)
* Added Ctrl+Z to the Keyboard Shortcuts dialog.

* Added Arrow Keys and Shift + Arrow Keys shortcuts to the Keyboard Shortcuts dialog.

* Added the [Backspace] key to the Keyboard Shortcuts dialog.
2016-07-03 23:10:51 +01:00
Nick O'Leary f62cf6818b Clear context in node test helper
Fixes #858
2016-07-03 23:08:53 +01:00
Nick O'Leary c05e9da9c5 Allow node properties to be same as existing object functions
Fixes #880
2016-07-03 23:00:48 +01:00
Nick O'Leary 6c00194d35 Handle comms link closely whilst completing the initial connect 2016-06-30 00:44:06 +01:00
Nick O'Leary 78b1bf8f25 Merge branch '0.14.0' 2016-06-17 21:30:09 +01:00
Dave Conway-Jones 98b24ae630 Merge pull request #798 from natcl/master
Add pinned tab icon for Safari
2016-06-17 14:24:36 +01:00
Nick O'Leary 0441c83fd7 Fix use of hasOwnProperty in Flow
Closes #907
2016-06-14 20:30:37 +01:00
Nick O'Leary 08ade44dc8 Handle more edge cases with RED.util.normalisePropertyExpression 2016-06-13 22:00:42 +01:00
Nick O'Leary 945fbbc065 Capture error stack on node.error
Closes #879
2016-06-12 11:07:05 +01:00
Nick O'Leary 4dc9c7714c Clear node context on close
Fixes #870
2016-06-11 22:53:27 +01:00
Nick O'Leary 762eb07dd4 Add support for array-syntax in typedInput msg properties 2016-06-07 23:01:23 +01:00
Nick O'Leary 3959fcdc88 Handle null return from Function node in array of messages 2016-06-06 11:40:02 +01:00
Nick O'Leary 0afe98b399 Move rename flow dialog to editor tray 2016-05-31 23:20:25 +01:00
Trisooma f1ce0fab8b Option to enable cors for editor (#886)
Adds httpAdminCors setting
2016-05-31 14:55:03 +01:00
Nick O'Leary b5d3f505e3 Defer loading of token sessions until they are accessed
Fixes #895
2016-05-31 14:39:50 +01:00
Dave Conway-Jones 69f83cb905 fully log node warnings on start
(i.e. don’t need -v for simple errors on start)
2016-05-26 10:38:24 +01:00
Nick O'Leary 291240dd94 Add editableList widget and update Switch/Change nodes to use it 2016-05-20 22:13:28 +01:00
Josh 3454e5ac77 Flows lib honours flowFilePretty setting (#837)
* Flow lib now adheres to pretty flow file, ui also adheres to this as well

* added settings mock object in flows_spec get api test

* reverted api changes, fixed parse of flow only

* try spell flows correctly
2016-05-17 22:09:57 +01:00
Nick O'Leary 9e26aeea1d Handle scoped node modules in the api 2016-05-17 21:56:03 +01:00
Nick O'Leary db433efbef Link nodes show hidden wires when selected
2016-05-17 09:18:32 +01:00
Nick O'Leary 594ff8cd3d Add support for loading scoped node modules
Fixes #885
2016-05-06 10:16:41 +01:00
Nick O'Leary 337f5f9b98 Handle missing tab nodes in a loaded flow config 2016-05-04 22:09:11 +01:00
Nick O'Leary 41445a1b48 Merge branch 'config' into 0.14.0
explain why this merge is necessary,
2016-05-04 15:44:48 +01:00
Nick O'Leary fa90eeac55 Make all dialog buttons consistent with editor tray 2016-05-03 21:36:22 +01:00
Nick O'Leary ce25fc658b Move edit tray buttons to top 2016-05-03 15:45:29 +01:00
Nick O'Leary 0c53b5310a Protect against node types with reserved names such as toString
Fixes #880
2016-04-28 14:17:48 +01:00
Nick O'Leary 45ff86eae5 Do not rely on the HTML file to identify where nodes are registered from 2016-04-28 11:23:42 +01:00
Nick O'Leary 8080ebceb4 Fix linting error on Flow.js 2016-04-27 12:37:20 +01:00
Nick O'Leary b744491dd2 Ensure config nodes are instantiated in the right order 2016-04-27 12:33:02 +01:00
Nick O'Leary 2a089f7d90 Ensure parent nodes marked as changed due to child config node changes 2016-04-27 12:33:02 +01:00
Nick O'Leary 333acccff6 Add subflow dialogs to the tray 2016-04-27 12:33:01 +01:00
Nick O'Leary 6354b68bae Config node tray 2016-04-27 12:33:01 +01:00
Dave Conway-Jones 59b34c2b3f Add timestamp as a default typedInput
and update Inject and change nodes to match,
and add some tests.
2016-04-18 14:38:36 +01:00
Nick O'Leary 6b0bef61a5 Prompt for login if comms reconnect fails authentication 2016-04-11 08:49:49 -07:00
Nick O'Leary 0c227be02d Back off comms reconnect attempts after prolonged failures 2016-04-11 08:49:49 -07:00
Nick O'Leary 44693dd23a Enable finer grained permissions in adminAuth 2016-04-10 15:30:13 +01:00
Nick O'Leary 75a7be41eb Better notification message when action is not permitted 2016-04-10 15:30:13 +01:00
Gabe Johnson b909e32201 Prevent RED.node.registerNode from overriding a constructor's prototype (#865)
* prevent registry.registerNodeConstructor from overriding a constructors protoype

* fix for node < v5.0.0

* exercise another code path

* altering __proto__ for node < v0.12

* move inheritance code to helper function
2016-04-07 22:18:28 +01:00
Nick O'Leary e1d09349ff Add link nodes 2016-04-07 17:08:51 +01:00
Nick O'Leary 1d54761d48 Fix comparison of Buffers (again) 2016-04-01 10:32:11 +01:00
Nick O'Leary 7cb9b2da66 Use Buffer.equals not Buffer.compare for node 4+ 2016-04-01 10:23:00 +01:00
Nick O'Leary b1896e3737 Fix RED.util.compareObjects for Function created objects and Buffers 2016-04-01 10:13:11 +01:00
Nick O'Leary 0cd4a2b4ec Add api/flow_spec tests
Part of #840
2016-03-18 21:01:21 +00:00
Nick O'Leary 428fbb8622 Fix uncaught exception on deploy whilst node sending messages 2016-03-16 15:37:44 +00:00
Nick O'Leary 27d3e165b0 Message catalog updates for zero-length flow file handling 2016-03-12 00:04:27 +00:00
Nick O'Leary e941c22f6c Warn if editor routes are accessed but runtime not started
Closes #816
2016-03-12 00:03:50 +00:00
Nick O'Leary f2191e94b3 Better handling of zero-length flow files
Closes #819

If a flow file is found to be zero-bytes:
  If there is a non-empty backup, restore the backup and resolve
  If there is no backup or it is also empty, resolve empty flow
If a flow file is found to be invalid json:
  Log and resolve empty flow
2016-03-11 22:42:04 +00:00
Nick O'Leary 708365c4ac Allow runtime calls to RED._ to specify other namespace 2016-03-06 20:43:19 +00:00
Nick O'Leary 55e66ebcac Allow node modules to include example flows 2016-03-02 23:34:24 +00:00
Nick O'Leary dcd8b3699c Create node_modules in userDir
This ensures npm install puts modules under .node-red even if there's
already a node_modules dir in the parent directory.
2016-03-01 22:08:37 +00:00
Dave Conway-Jones b89e866d39 Add os/platform info to default debug 2016-02-22 17:47:16 +00:00
Nick O'Leary 3ec8ecd4de Disable perMessageDeflate on WS servers
Workaround for this issue: https://github.com/websockets/ws/pull/632
as it has been fixed in the 1.x release that drops support for
node 0.10...
2016-02-10 21:43:37 +00:00
Nathanaël Lécaudé 7615743aa5 Update theme.js 2016-02-08 09:20:07 -05:00
Nick O'Leary c7bcd3f438 Don't default inject payload to blank string 2016-02-04 21:43:18 +00:00
Dave Conway-Jones 827711ca89 Fix util jshint as we need the behaviour. 2016-02-04 21:21:57 +00:00
Dave Conway-Jones 76e98f74fa let new typed-inputs return correctly
0 now returns correct type for boolean and number when required.
2016-02-04 21:06:20 +00:00
Nick O'Leary c76ba1dcc7 Allow function properties in settings
Fixes #790
2016-01-29 11:56:16 +00:00
Nick O'Leary 03558b012c Bump version and dependencies 2016-01-18 11:09:52 +00:00
Nick O'Leary 3288efdad6 Remove unimplemented flow.enable/disable functions 2016-01-18 10:53:50 +00:00
Nick O'Leary 17e3b71d9c Allow update of global flow 2016-01-14 14:57:13 +00:00
Nick O'Leary 6dc640b129 Add hidden count when config node filtered 2016-01-13 10:30:24 +00:00
Nick O'Leary a0cc1e6b0c Add config node filter 2016-01-12 23:03:33 +00:00
Nick O'Leary 50399c6bfa Rework config sidebar and deploy warning 2016-01-12 17:54:53 +00:00
Nick O'Leary db319e0ebc Ensure global context is seeded properly 2016-01-11 11:28:01 +00:00
Nick O'Leary 9bca2a91c9 Tidy up view menu 2016-01-10 21:25:05 +00:00
Nick O'Leary 66eaaf5a48 Add 'view' menu and reorganise a few things 2016-01-09 20:39:03 +00:00
Nick O'Leary 41f3b0c333 Fix variable leak in theme.js 2016-01-08 13:41:33 +00:00
Nick O'Leary 70f3e72a20 Move version number as title of NR logo 2016-01-08 13:36:49 +00:00
Nick O'Leary 1850185d1e Add grid-alignment options 2016-01-07 14:39:01 +00:00
Nick O'Leary 43c6df49d7 Update typedInput nls 2016-01-06 17:01:13 +00:00
Nick O'Leary f1c59faf72 Rename propertySelect to typedInput and add boolean opt 2016-01-06 17:01:13 +00:00
Nick O'Leary fe4dae8518 Add propertySelect to switch node 2016-01-06 17:01:13 +00:00
Nick O'Leary 1f848b205b Add propertySelect support to Change node 2016-01-06 17:01:13 +00:00
Nick O'Leary 5ead3342cc Add node context/flow/global 2016-01-06 17:01:13 +00:00
Nick O'Leary b95dc2ecce Add propertySelect jquery widget 2016-01-06 17:01:13 +00:00
Nick O'Leary 4d0950215f Don't allow tabs or subflows to be added with new flow 2016-01-06 17:01:13 +00:00
Nick O'Leary da0ce9fe0d Simplify flow api implementation and add logging messages 2016-01-06 17:01:13 +00:00
Nick O'Leary c4b1795396 Add add/update/delete flow apis 2016-01-06 17:01:13 +00:00
Nick O'Leary fd2e47ed73 WIP: add flow api 2016-01-06 17:01:12 +00:00
Nick O'Leary d5f2255a68 Handle null coreNodesPath 2016-01-06 17:01:12 +00:00
Nick O'Leary 05b58e9263 Allow core nodes dir to be provided to runtime via settings 2016-01-06 17:01:12 +00:00
Nick O'Leary 4a91c27e4b Allow server to be option on red.init 2016-01-06 17:01:12 +00:00
Nick O'Leary 3a03d46d8d Fix lint error in registry.js 2016-01-06 17:01:12 +00:00
Nick O'Leary f03aff7006 Tidy up API passed to node modules 2016-01-06 17:01:12 +00:00
Nick O'Leary 043b8a3105 Register node message catalog directly, not via event 2016-01-06 17:01:12 +00:00
Nick O'Leary 1dd9984521 Pickup default language from i18n module 2016-01-06 17:01:12 +00:00
Nick O'Leary d2be7f8c8f Move locale files under api/runtime components 2016-01-06 17:01:12 +00:00
Nick O'Leary 88dc202db2 Fix node test helper for api/runtime changes 2016-01-06 17:01:12 +00:00
Nick O'Leary 87d77efa57 Add flow reload admin api 2016-01-06 17:01:11 +00:00
Nick O'Leary 35c4a41d7b Node id generation should only be done in runtime/util 2016-01-06 17:01:11 +00:00
Nick O'Leary 1ca3ca07d5 api/nodes accessing comms module incorrectly 2016-01-06 17:01:11 +00:00
Nick O'Leary d673846e3d WIP: runtime api for node modules 2016-01-06 17:01:11 +00:00
Nick O'Leary f62b7afede Remove all uses of fs.exists as it is deprecated
The tests still use it in places - particular localfilesystem tests,
but those tests need to be redone with sinon stubbing in place and
not rely on real fs operations.
2016-01-06 17:01:11 +00:00
Nick O'Leary 45f67191ba Improve node registry test coverage 2016-01-06 17:01:11 +00:00
Nick O'Leary 93f5da325b Fix node test helper for runtime/api changes 2016-01-06 17:01:11 +00:00
Nick O'Leary 8fb955e182 Move comms from runtime to api component 2016-01-06 17:01:11 +00:00
Nick O'Leary 9f5e6a4b37 Update tests for runtime/api separation 2016-01-06 17:01:11 +00:00
Nick O'Leary f43738446e WIP: separate runtime and api components 2016-01-06 17:01:11 +00:00
Nick O'Leary 4eb5058e68 Add readOnly setting to prevent file writes in localfilesystem storage 2015-12-13 22:45:44 +00:00
Nick O'Leary 50d0a88276 Ensure tabs are removed from runtime on partial deploy 2015-12-10 15:47:15 +00:00
Dave Conway-Jones a95f44d68b remove annoying comma from comm.js
OCD reasons only
2015-12-09 13:37:20 +00:00
Nick O'Leary cb01920ee6 Allow nodes to be installed by path name 2015-11-09 16:52:14 +00:00
Nick O'Leary 437b01a0ff Move node installer to its own module 2015-11-09 11:29:48 +00:00
Nick O'Leary 075a2abf71 Use child_process.execFile to prevent command injection 2015-11-08 14:26:11 +00:00
Nick O'Leary 985875cc75 Move node install/remove from server component to node engine 2015-11-08 14:06:36 +00:00
Nick O'Leary a0aee2021d Tidy up sheets/flows labelling 2015-11-05 14:22:15 +00:00
Nick O'Leary c90fd1e6d8 Move credential http API handling to api component 2015-11-04 11:13:43 +00:00
Nick O'Leary 71ecb89abc Merge branch 'flowengine' 2015-11-03 20:24:55 +00:00
Nick O'Leary 7b6bc1d3bc Increase default api request limit to 1mb
- expose it via settings.apiMaxLength
 - audit log api errors
2015-11-03 11:23:37 +00:00
Nick O'Leary ab87fa9ce4 Ensure status/errors from global config nodes propagate properly 2015-11-03 10:20:00 +00:00
Nick O'Leary d1940a023a Complete test coverage on flow engine refactor 2015-11-02 15:58:40 +00:00
Nick O'Leary ec25191c98 Flow Engine refactor
Each flow/tab now exists as its own logical object. This is the ground
work for allowing flows to be added/removed/updated independently.
2015-11-02 15:58:29 +00:00
Nick O'Leary f626ee060a Allow properties to be specified by environment variables
A property set to $(ABC) will be substituted with the environment
variable ABC - if it exists. If the property doesn't exist, the property
is left unchanged.
2015-10-23 22:14:39 +01:00
Nick O'Leary d668d43a0a Move to express 4.x 2015-10-02 21:27:31 +01:00
Dave Conway-Jones cc6e0937a0 initialise status.text to be blank string if not set.
(and change test to use .text rather than .message)
(not that it matters at this level of test)
2015-10-02 21:27:30 +01:00
Nick O'Leary a6644ad5ff Add status node 2015-10-02 21:27:29 +01:00
Nick O'Leary cbdd4de630 Errors in subflows propagate up to nearest catch node 2015-10-02 21:27:29 +01:00
Nick O'Leary 3a6192bf73 Catch node can target specific nodes 2015-10-02 21:27:28 +01:00
Nick O'Leary 3963fa9738 Allow a language catalog to be a partial catalog 2015-09-24 21:56:45 +01:00
Nick O'Leary 5193d7bddb Stop sending messages to ws connections that have errored
Fixes #708
2015-07-30 22:09:01 +01:00
Nick O'Leary eb57089f06 Add flag to disable build check for tests 2015-07-22 11:41:58 +01:00
Nick O'Leary a76e4fede1 Handle null acceptedLanguages
Closes #704
2015-07-19 22:11:25 +01:00