Commit graph

175 commits

Author SHA1 Message Date
Ben Hesseldieck 0470740737
Change the UI of the Nodes Panel (#1855)
* Add codex search properties to node types

* implement basic styles

* update header designs

* update node list designs

* add trigger icon

* refactor node creator list

* implement categories and subcategories

* fix up spacing

* add arrows

* implement navigatable list

* implement more of feature

* implement navigation

* add transitions

* fix lint issues

* fix overlay

*  Get and add codex categories

* fix up design

* update borders

* implement no-matches view

* fix preview bug

* add color to search

* clean up borders

* add comma

* Revert "Merge branch 'add-codex-data' of github.com:n8n-io/n8n into PROD-819-nodes-panel-redesign"

38b7d7ead1

* use new impl

* remove empty categories

* update scrolling, hide start node

* make scrollable

* remove text while subcategory panel is open

* fix up spacing

* fix lint issues

* update descriptions

* update path

* update images

* fix tags manager

* give min height to image

* gst

* update clear color

* update font size

* fix firefox spacing

* close on click outside

* add external link icon

* update iterator key

* add client side caching for images

* update caching header

* ️ Add properties to codex for nodes panel (#1854)

*  Get and add codex categories

*  Add parens to evaluation + destructuring

* 🔥 Remove non-existing class reference

*  Add alias to codex property

* move constants

* 🔨 Rename CodexCategories to CodexData

* ✏️ Update getCodex documentation

* refactor and move

* refactor no results view

* more refactoring

* refactor subcategory panel

* more refactoring

* update text

* update no results view

* add miscellaneous to end of list

* address design feedback

* reimplement node search

* fix up clear

* update placeholder color

* impl transition

* focus on tab

* update spacing

* fix transition bug on start

* fix up x

* fix position

* build

* safari fix

* remove input changes

* css bleed issue with image

* update css value

* clean up

* simplify impl

* rename again

* rename again

* rename all

* fix hover bug

* remove keep alive

* delete icon

* update interface type

* refactor components

* update scss to module

* clean up impl

* clean up colors as vars

* fix indentation

* clean up scss

* clean up scss

* clean up scss

* clean up scss

* Clean up files

* update logic to be more efficient

* fix search bug

* update type

* remove unused

* clean up js

* update scrollable, border impl, transition

* fix simicolon

* build

* update search

* address max's comments

* change icon border radius

* change margin

* update icon size

* update icon size

* update slide transition out

* add comma

* remove full

* update trigger icon size

* fix image size

* address design feedback

* update external link icons

* address codacy issues

* support custom nodes without codex file

* address jan's feedback

* address Ben's comments

* add subcategory index

* open/close categories with arrow keys

* add lint comment

* Address latest comments

*  Minor changes

Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
Co-authored-by: Mutasem <mutdmour@gmail.com>
Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com>
Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2021-06-18 07:58:26 +02:00
MedAliMarz 6ccb42156d
🐛 Fix NodeViewNew navigation handling (#1853)
* 🐛 Fix NodeViewNew navigation handling

* Use event emitter pattern to fix duplicate navigation

* Apply review suggestions

* Remove unnecessary arrow function

*  Also fix for keyboard shortcut

Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2021-06-04 16:13:42 -05:00
Ben Hesseldieck 05eec87d1d
Add tagging of workflows (#1647)
* clean up dropdown

* clean up focusoncreate

*  Ignore mistaken ID in POST /workflows

*  Fix undefined tag ID in PATCH /workflows

*  Shorten response for POST /tags

* remove scss mixins

* clean up imports

*  Implement validation with class-validator

* address ivan's comments

* implement modals

* Fix lint issues

* fix disabling shortcuts

* fix focus issues

* fix focus issues

* fix focus issues with modal

* fix linting issues

* use dispatch

* use constants for modal keys

* fix focus

* fix lint issues

* remove unused prop

* add modal root

* fix lint issues

* remove unused methods

* fix shortcut

* remove max width

*  Fix duplicate entry error for pg and MySQL

* update rename messaging

* update order of buttons

* fix firefox overflow on windows

* fix dropdown height

* 🔨 refactor tag crud controllers

* 🧹 remove unused imports

* use variable for number of items

* fix dropdown spacing

*  Restore type to fix build

*  Fix post-refactor PATCH /workflows/:id

*  Fix PATCH /workflows/:id for zero tags

*  Fix usage count becoming stringified

* address max's comments

* fix filter spacing

* fix blur bug

* address most of ivan's comments

* address tags type concern

* remove defaults

*  return tag id as string

* 🔨 add hooks to tag CUD operations

* 🏎 simplify timestamp pruning

* remove blur event

* fix onblur bug

*  Fix fs import to fix build

* address max's comments

* implement responsive tag container

* fix lint issues

* Set default dates in entities

* 👕 Fix lint in migrations

* update tag limits

* address ivan's comments

* remove rename, refactor header, implement new designs for save, remove responsive tag container

* update styling

* update styling

* implement responsive tag container

* implement header tags edit

* implement header tags edit

* fix lint issues

* implement expandable input

* minor fixes

* minor fixes

* use variable

* rename save as

* duplicate fixes

*  Implement unique workflow names

*  Create /workflows/new endpoint

* minor edit fixes

* lint fixes

* style fixes

* hook up saving name

* hook up tags

* clean up impl

* fix dirty state bug

* update limit

* update notification messages

* on click outside

* fix minor bug with count

* lint fixes

*  Add query string params to /workflows/new

* handle minor edge cases

* handle minor edge cases

* handle minor bugs; fix firefox dropdown issue

* Fix min width

* apply tags only after api success

* remove count fix

* 🚧 Adjust to new qs requirements

* clean up workflow tags impl, fix tags delete bug

* fix minor issue

* fix minor spacing issue

* disable wrap for ops

* fix viewport root; save on click in dropdown

* save button loading when saving name/tags

* implement max width on tags container

* implement cleaner create experience

* disable edit while updating

* codacy hex color

* refactor tags container

* fix clickability

* fix workflow open and count

* clean up structure

* fix up lint issues

*  Create migrations for unique workflow names

* fix button size

* increase workflow name limit for larger screen

* tslint fixes

* disable responsiveness for workflow modal

* rename event

* change min width for tags

* clean up pr

*  Adjust quotes in MySQL migration

*  Adjust quotes in Postgres migration

* address max's comments on styles

* remove success toasts

* add hover mode to name

* minor fixes

* refactor name preview

* fix name input not to jiggle

* finish up name input

* Fix up add tags

* clean up param

* clean up scss

* fix resizing name

* fix resizing name

* fix resize bug

* clean up edit spacing

* ignore on esc

* fix input bug

* focus input on clear

* build

* fix up add tags clickablity

* remove scrollbars

* move into folders

* clean up multiple patch req

* remove padding top from edit

* update tags on enter

* build

* rollout blur on enter behavior

* rollout esc behavior

* fix tags bug when duplicating tags

* move key to reload tags

* update header spacing

* build

* update hex case

* refactor workflow title

* remove unusued prop

* keep focus on error, fix bug on error

* Fix bug with name / tags toggle on error

* impl creating new workflow name

*  Refactor endpoint per new guidelines

* support naming endpoint

*  Refactor to support numeric suffixes

* 👕 Lint migrations for unique workflow names

*  Add migrations set default dates to indexes

* fix connection push bug

*  Lowercase default workflow name

*  Add prefixes to set default dates migration

*  Fix indentation on default dates migrations

*  Add temp ts-ignore for unrelated change

*  Adjust default dates migration for MySQL

Remove change to data column in credentials_entity, already covered by Omar's migration. Also, fix quotes from table prefix addition.

*  Adjust quotes in dates migration for PG

* fix safari color bug

* fix count bug

* fix scroll bugs in dropdown

* expand filter size

* apply box-sizing to main header

* update workflow names in executions to be wrapped by quotes

* fix bug where key is same in dropdown

* fix firefox bug

* move up push connection session

* 🔨 Remove mistakenly added nullable property

* 🔥 Remove unneeded index drop-create (PG)

* 🔥 Remove unneeded table copying

*  Merge dates migration with tags migration

* 🔨 Refactor endpoint and make wf name env

* dropdown colors in firefox

* update colors to use variables

* update thumb color

* change error message

* remove 100 char maximum

* fix bug with saving tags dropdowns multiple times

* update error message when no name

*  Update name missing toast message

*  Update workflow already exists message

* disable saving for executions

* fix bug causing modal to close

* make tags in workflow open clickable

* increase workflow limit to 3

* remove success notifications

* update header spacing

* escape tag names

* update tag and table colors

* remove tags from export

* build

* clean up push connection dependencies

* address ben's comments

* revert tags optional interface

* address comments

* update duplicate message

* build

* fix eol

* add one more eol

*  Update comment

* add hover style for workflow open, fix up font weight

Co-authored-by: Mutasem <mutdmour@gmail.com>
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com>
2021-05-29 13:31:21 -05:00
Jan Oberhauser 972561416c Fix issue with nodes that have only node connected to second input 2021-05-26 08:34:20 -05:00
Ahsan Virani 2052cadce9
Add more frontend hooks (#1687)
*  add hook for nodecreatelist mount

*  add hook for nodeCreateList selectedTypeChanged

*  add hook for nodeCreateList nodeFilterChanged

*  add hook for nodeCreateList filteredNodeTypesComputed

*  add hook for nodeView.activeNodeChanged

*  add hook for credentialsEdit credentialTypeChanged

*  add hook for onDocumentationUrlClick

*  add hook for executionsList openDialog

*  add hook for execution open

*  add hook for credentialsList dialogVisibleChanged

*  add hook for workflowSettings

*  add hook for showMessage showError

*  add hook for nodeView createNodeActiveChanged

*  add hook for nodeView addNodeButton

*  cleanup

*  add hook for workflowRun runWorkflow

*  add hook for pushConnection executionFinished

*  add hook for runData.displayModeChanged

*  update nodeCreateList.nodeFilterChanged hook

*  update dataDisplay nodeTypeChanged hook

*  update dataDisplay nodeTypeChanged hook

*  update dataDisplay nodeTypeChanged hook

*  update error data in hooks

* update workflowRun runError hook

*  Minor improvements

Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2021-05-05 19:46:33 -05:00
Mutasem Aldmour 0cb96d6caa
🐛 fix external links in sidemenu (#1720)
* fix admin link clickability

* fix bug when there are unsaved changes
2021-05-04 17:55:39 +02:00
Jon Bake 54f949a972
🐛 Fixes #1364 - Incorrect mouse selection when zoomed in or out (#1498)
Prior to this change, the mouse selection box had a fixed position on the page. Nodes have absolute
position within NodeView. This inconsistency in positioning caused issues when calculating
if a node was positioned within the mouse selection. This solution makes both nodes
and mouse selection have consistent positioning, along with correctly calculating the
mouse click position within NodeView when making a selection.
2021-02-28 18:08:14 +01:00
Omar Ajoue bc66fab041
Fix an issue with the regex that detects node names 2021-02-15 09:55:28 +01:00
Jan Oberhauser b183f3ec02 👕 Fix lint issue 2021-02-13 20:46:46 +01:00
Jan Oberhauser deaa015e61 Do only send manual executions to starting session & cleanup 2021-02-13 20:40:27 +01:00
Omar Ajoue e53efdd337
Separate webhooks from core (#1408)
* Unify execution ID across executions

* Fix indentation and improved comments

* WIP: saving data after each node execution

* Added on/off to save data after each step, saving initial data and retries working

* Fixing lint issues

* Fixing more lint issues

*  Add bull to execute workflows

* 👕 Fix lint issue

*  Add graceful shutdown to worker

*  Add loading staticData to worker

* 👕 Fix lint issue

*  Fix import

* Changed tables metadata to add nullable to stoppedAt

* Reload database on migration run

* Fixed reloading database schema for sqlite by reconnecting and fixing postgres migration

* Added checks to Redis and exiting process if connection is unavailable

* Fixing error with new installations

* Fix issue with data not being sent back to browser on manual executions with defined destination

* Merging bull and unify execution id branch fixes

* Main process will now get execution success from database instead of redis

* Omit execution duration if execution did not stop

* Fix issue with execution list displaying inconsistant information information while a workflow is running

* Remove unused hooks to clarify for developers that these wont run in queue mode

* Added active pooling to help recover from Redis crashes

* Lint issues

* Changing default polling interval to 60 seconds

* Removed unnecessary attributes from bull job

* Added webhooks service and setting to disable webhooks from main process

* Fixed executions list when running with queues. Now we get the list of actively running workflows from bull.

* Add option to disable deregistration of webhooks on shutdown

* Rename WEBHOOK_TUNNEL_URL to WEBHOOK_URL keeping backwards compat.

* Added auto refresh to executions list

* Improvements to workflow stop process when running with queues

* Refactor queue system to use a singleton and avoid code duplication

* Improve comments and remove unnecessary commits

* Remove console.log from vue file

* Blocking webhook process to run without queues

* Handling execution stop graciously when possible

* Removing initialization of all workflows from webhook process

* Refactoring code to remove code duplication for job stop

* Improved execution list to be more fluid and less intrusive

* Fixing workflow name for current executions when auto updating

*  Right align autorefresh checkbox

Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2021-02-09 23:32:40 +01:00
Jan Oberhauser 243c8d579f Minor improvements 2021-02-08 07:52:09 +01:00
Florian Metz c59e522e9e
:spakles: Ctrl + scroll zoom (#1419) 2021-02-08 07:51:23 +01:00
Ahsan Virani 4d446229c3
Introduce FE external hooks (#1332)
*  Introduce FE external hooks

*  update hooks

*  add data from frontend settings to hooks

* re-organize and update

* cleanup

* 👌

*  cleanup workflowSave mixin, add events

* avoid alert on new workflow save as

*  update workflow active events

* rename externalhooks method

*  Rename frontend hooks

Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2021-01-19 23:48:30 +01:00
Jan Oberhauser 9465653fab Improve editor-UI dirty checking 2020-11-04 13:04:40 +01:00
Jan Oberhauser c339d76456 Minior improvements 2020-10-25 12:58:02 +01:00
Jan 72ac20b070
Improvements on #911 to display unsaved changes. Now works with back button. (#1098)
Co-authored-by: Omar Ajoue <krynble@gmail.com>
2020-10-25 12:47:49 +01:00
Jan dc93694a1a
Merge branch 'master' into save-changes-warning 2020-10-25 11:47:47 +01:00
Jan Oberhauser c40601eecb Fix issues with support for touch-devices 2020-10-23 18:16:00 +02:00
Jan Oberhauser 4df74771e3 Improve support for touch-devices #1070 2020-10-23 13:51:39 +02:00
Omar Ajoue 37f787d7b2
Load node properties on demand (#1089)
*  Changed rest api endpoint to omit node properties by default.
 Created another endpoint to return all node information based on a list of names

* refactor: changed endpoint to POST instead of GET

* Changed properties to be optional for node description

* Removed eager loading for node properties.

All nodes will have their properties fetched when used in a workflow.
Works when opening an already saved workflow, creating a new one from
scratch or pasting JSON / URLs.

* Removing unnecessary dependency
2020-10-22 17:24:35 +02:00
Jan Oberhauser 6d41f43216 Fix issue that workflows could not be pasted if they had issue 2020-10-10 18:02:51 +02:00
Jan Oberhauser 82e16790c6 🐛 Fix bug that webhookId did not get refreshed on node-duplicate 2020-10-04 17:22:11 +02:00
Jan Oberhauser f1680386ca Get OAuth-Callback URLs from backend 2020-09-30 15:57:40 +02:00
Jan Oberhauser f00c6c10a3 Increase default space between new nodes 2020-09-11 16:59:41 +02:00
Rupenieks 33582655f2 Revert " Deconstructed store mutation data parameters for better readability"
This reverts commit 17ab16d248.
2020-09-09 14:28:13 +02:00
Rupenieks 17ab16d248 Deconstructed store mutation data parameters for better readability 2020-09-09 14:05:11 +02:00
Rupenieks 4c63db8908 Build error fixed (let to const) 2020-09-02 16:06:18 +02:00
Rupenieks d1f9cef891 Fixed dirty state not being triggered with node connection 2020-09-02 15:59:20 +02:00
Rupenieks 1cdf0164e9 Returned to using correct uuid lib 2020-09-02 09:16:16 +02:00
Rupenieks 3e1ada7c1a 🚧 Added Vuex dirty state flag as central source of truth for if there are unsaved changes 2020-09-01 16:06:08 +02:00
rupenieks 66b76d16ee Merged contributor work 2020-08-31 13:08:27 +02:00
Jan Oberhauser b78145f2ec Fix issues with Dynamic title 2020-08-25 20:39:14 +02:00
Rupenieks 44f7b7a9c2
Dynamic title based on workflow execution (#865)
*  Added title changes based on workflow execution

*  Title changes on workflow open, reset on workflow delete, fixed not showing when page refreshed

*  Title icons
2020-08-25 20:37:24 +02:00
Ben Hesseldieck 051598d30e
Add max execution time for Workflows (#755)
* 🎉 basic setup and execution stopping

* 🚧 soft timeout for own process executions

* 🚧 add hard timeout for subprocesses

* 🚧 add soft timeout to main thread

* 🔧 set default timeout to 5 mins --> 500s

* 💡 adding documentation to configs

* 🚧 deactivate timeout by default

* 🚧 add logic of max execution timeout

*  adding timeout to settings in frontend and server

* 🎨 improve naming

* 💡 fix change in config docs

* ✔️ fixing compilation issue

* 🎨 add format for new config variables

* 👌 type cast before checking equality

*  Improve error message if NodeType is not known

* 🐳 Tag also rpi latest image

* 🐛 Fix Postgres issue with Node.js 14 #776

* 🚧 add toggle to activate workflow timeout

* 💄 improving UX of setting a timeout and its duration

Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2020-07-29 14:12:54 +02:00
Erin 5f32341a9e Remove logs 2020-07-20 11:52:24 -04:00
Erin 70a584a46d 🎉 Works with ctrl s, now working on a user saving from the side bar 2020-07-20 10:57:58 -04:00
Erin ad1228e0ea Everything works except refresh 2020-07-09 16:54:50 -04:00
Erin f4022c6cd5 🔧 Prompt User to Save Before Page Unload 2020-07-07 10:36:43 -04:00
Jan Oberhauser cee5c522de Rename webhookPath parameter on node to webhookId 2020-06-10 16:17:16 +02:00
ricardo 4e9490a88d Improvements 2020-05-30 19:04:04 -04:00
ricardo 91c40367e1 Done 2020-05-27 19:32:56 -04:00
Jan Oberhauser 5718330e29 🐛 Fix issues in read-only mode #39 2020-05-24 14:22:15 +02:00
Jan Oberhauser 7ee03cf132 Ignore node-credential-issues on disabled nodes 2020-02-09 23:24:12 -08:00
Jan Oberhauser 965ce74895 Do not allow to display NodeCreator via tab in readOnly-Mode 2020-01-20 10:47:52 -06:00
Jan Oberhauser 49e2285573 ⬆️ Update packages to latest version on n8n-editor-ui 2019-12-29 15:02:21 -06:00
Jan Oberhauser f31049d454 🐛 Fix that drop connection and addNodeButton did connect wrong 2019-12-10 15:39:14 +01:00
Jan Oberhauser a595434cd0 👕 Fix lint issue 2019-09-20 14:07:02 +02:00
Jan Oberhauser d6b8b9544f Display currently installed version in editor-ui 2019-09-11 18:40:22 +02:00
Jan Oberhauser 6d1be05f56 💄 Improve display of node input-/output-labels 2019-08-10 09:59:15 +02:00
Jan Oberhauser fcb0982401 Rename also expressions on pasted nodes and fix unique naming
issue
2019-08-09 20:33:22 +02:00
Jan Oberhauser 983ef13db9 👕 Fix lint issue 2019-08-02 17:06:06 +02:00
Jan Oberhauser a0b7abed20 Add support for input labels 2019-08-02 15:56:05 +02:00
Jan Oberhauser 6672a62a62 Improve node locations 2019-08-01 08:26:43 +02:00
Jan Oberhauser 4bbc7edad2 Make it possible to move workflow with mouse-wheel/two-finger 2019-07-26 07:41:09 +02:00
Jan Oberhauser d00610e629 Create duplicated node underneath the existing one 2019-07-26 07:17:40 +02:00
Jan Oberhauser 0ac97c6523 💄 Improve editor-ui connection creation and deletion 2019-07-25 21:57:27 +02:00
Jan Oberhauser fd2da9d4b6 Fix inital position of Start-Node for now horizontal flows 2019-07-25 19:23:27 +02:00
Jan Oberhauser 8482e1b363 💄 Improve editor-ui by displaying clearer what each node does 2019-07-25 18:50:45 +02:00
Jan Oberhauser 132f32132a Automatically select text in rename-prompt 2019-07-24 15:21:44 +02:00
Jan Oberhauser 117630fb68 🐛 Fix bug that node was not selected after rename 2019-07-24 15:04:24 +02:00
Jan Oberhauser 6fc02a5024 Improve naming of created names 2019-07-17 19:58:54 +02:00
Jan Oberhauser 5054c7054d Implement that nodes can also be deselected with ctrl+click 2019-07-17 19:05:03 +02:00
Jan Oberhauser 416eb81a6e Make it easily possible to select up/downstream nodes 2019-07-17 18:45:09 +02:00
Jan Oberhauser 26381de92b Automatically adjust position of pasted nodes 2019-07-17 16:05:01 +02:00
Jan Oberhauser bcb314107d 🐛 Fix lastClickPosition init as it is offscreen 2019-07-17 12:47:20 +02:00
Jan Oberhauser de3c52b355 🐛 Fix issue that lastClickPosition ignored node view offset position 2019-07-17 12:44:00 +02:00
Jan Oberhauser 3b6013f6f4 🐛 Fix issue that mac users can not move workflow 2019-07-17 07:31:28 +02:00
Jan Oberhauser 91bff6e4f6 🐛 Fix parameter update bug with identically named parameters 2019-07-14 14:10:16 +02:00
Jan Oberhauser a17a376d13 Make it possible to define if workflow executions should be
saved or not
2019-07-10 20:53:13 +02:00
Jan Oberhauser e00bc83f1b 🎨 Rename setting "saveManualRuns" to "saveManualExecutions" 2019-07-10 18:06:26 +02:00
Jan Oberhauser bbab4fc6e1 🐛 Fix bug 2019-06-27 14:07:25 +02:00
Jan Oberhauser a7cd27d745 Display output names on connections if there are any 2019-06-27 11:27:02 +02:00
Jan Oberhauser e9eb18759c 💄 Move "Delete Current Execution Data" button next to "Execute
Workflow" button
2019-06-24 13:52:03 +02:00
Jan Oberhauser 9cb9804eee Initial commit to release 2019-06-23 12:35:23 +02:00