* ✨ Make it possible to dynamically load node packages
* ⚡ Fix comment
* ✨ Make possible to dynamically install nodes from npm
* Created migration for sqlite regarding community nodes
* Saving to db whenever a package with nodes is installed
* Created endpoint to fetch installed packages
* WIP - uninstall package with nodes
* Fix lint issues
* Updating nodes via API
* Lint and improvement fixes
* Created community node helpers and removed packages taht do not contain nodes
* Check for package updates when fetching installed packages
* Blocked access to non-owner and preventing incorrect install of packages
* Added auto healing process
* Unit tests for helpers
* Finishing tests for helpers
* Improved unit tests, refactored more helpers and created integration tests for GET
* Implemented detection of missing packages on init and added warning to frontend settings
* Add check for banned packages and fix broken tests
* Create migrations for other db systems
* Updated with latest changes from master
* Fixed conflict errors
* Improved unit tests, refactored more helpers and created integration tests for GET
* Implemented detection of missing packages on init and added warning to frontend settings
* 🔥 Removing access check for the Settings sidebar item
* ✨ Added inital community nodes settings screen
* ⚡Added executionMode flag to settings
* ✨ Implemented N8N-callout component
* 💄Updating Callout component template propery names
* 💄 Updating Callout component styling.
* 💄Updating Callout component sizing and colors.
* ✔️ Updating Callout component test snapshots after styling changes
* ✨ Updating the `ActionBox` component so it supports callouts and conditional button rendering
* 💄 Removing duplicate callout theme validation in the `ActionBox` component. Adding a selection control for it in the storybook.
* ✨ Added warning message if instance is in the queue mode. Updated colors based on the new design.
* ⚡ Added a custom permission support to router
* 🔨 Implemented UM detection as a custom permission.
* 👌Updating route permission logic.
* ✨ Implemented installed community packages list in the settings view
* 👌 Updating settings routes rules and community nodes setting view.
* Allow installation of packages that failed to load
* 👌 Updating `ActionBox`, `CommuntyPackageCard` components and settings loading logic.
* 👌 Fixing community nodes loading state and sidebar icon spacing.
* ✨ Implemented loading skeletons for community package cards
* 👌 Handling errrors while loading installed package list. Updating spacing.
* 👌 Updating community nodes error messages.
* Added disable flag
* 🐛 Fixing a community nodes update detection bug when there are missing packages. (#3497)
* ✨ Added front-end support for community nodes feature flag
* ✨ Implemented community package installation modal dialog
* 💄 Community nodes installation modal updates: Moved links to constants and used them in translations, disabling inputs in loading state.
* ✨ Implemented community packages install flow
* Standardize error codes (#3501)
* Standardize error: 400 for request issues such as invalid package name and 500 for installation problems
* Fix http status code for when package is not found
* ✨ Implemented community package installation modal dialog
* 💄 Community nodes installation modal updates: Moved links to constants and used them in translations, disabling inputs in loading state.
* ✨ Implemented community packages install flow
* ✨ Updated error handling based on the response codes
* ✨ Implemented community package installation modal dialog
* ✨ Implemented community package uninstall flow.
* ✨ Finished update confirm modal UI
* 💄 Replaced community nodes tooltip image with the one exported from figma.
* ✨ Implemented community package update process
* ✨ Updating community nodes list after successful package update
* 🔒 Updating public API setting route to use new access rules. Updating express app definition in community nodes tests
* ✨ Implemented community package installation modal dialog
* 💄 Community nodes installation modal updates: Moved links to constants and used them in translations, disabling inputs in loading state.
* ✨ Implemented community packages install flow
* ✨ Updated error handling based on the response codes
* Change output for installation request
* Improve payload for update requests
* 👌 Updating community nodes install modal UI
* 👌 Updating community nodes confirm modal logic
* 👌 Refactoring community nodes confirm modal dialog
* 👌 Separating community nodes components loading states
* 💄 Updating community nodes install modal spacing.
* Fix behavior for installing already installed packages
* 💡 Commenting community nodes install process
* 🔥 Removing leftover commits of deleted Vue mutations
* ✨ Updated node list to identify community nodes and handle node name clash
* ✨ Implemented missing community node dialog.
* 💄 Updating n8n-tabs component to support tooltips
* ✨ Updating node details with community node details.
* 🔨 Using back-end response when updating community packages
* 👌 Updating tabs component and refactoring community nodes store mutations
* 👌 Adding community node flag to node type descriptions and using it to identify community nodes
* 👌 Hiding unnecessary elements from missing node details panel.
* 👌 Updating missing node type descriptions for custom and community nodes
* 👌 Updating community node package name detection logic
* 👌 Removing communityNode flag from node description
* ✨ Adding `force` flag to credentials fetching (#3527)
* ✨ Adding `force` flag to credentials fetching which can be used to skip check when loading credentials
* ✨ Forcing credentials loading when opening nodeView
* 👌 Minor updates to community nodes details panel
* tests for post endpoint
* duplicate comments
* Add Patch and Delete enpoints tests
* 🔒 Using `pageCategory`prop to assemble the list of settings routes instead of hard-coded array (#3562)
* 📈 Added front-end telemetry events for community nodes
* 📈 Updating community nodes telemetry events
* 💄 Updating community nodes settings UI elements based on product/design review
* 💄 Updating node view & node details view for community nodes based on product/design feedback
* 💄 Fixing community node text capitalisation
* ✨ Adding community node install error message under the package name input field
* Fixed and improved tests
* Fix lint issue
* feat: Migrated to npm release of riot-tmpl fork.
* 📈 Updating community nodes telemetry events based on the product review
* 💄 Updating community nodes UI based on the design feedback
* 🔀 Merging recent node draggable panels changes
* Implement self healing process
* Improve error messages for package name requirement and disk space
* 💄 Removing front-end error message override since appropriate response is available from the back-end
* Fix lint issues
* Fix installed node name
* 💄 Removed additional node name parsing
* 📈 Updating community nodes telemetry events
* Fix postgres migration for cascading nodes when package is removed
* Remove postman mock for banned packages
* 📈 Adding missing telemetry event for community node documentation click
* 🐛 Fixing community nodes UI bugs reported during the bug bash
* Fix issue with uninstalling packages not reflecting UI
* 🐛 Fixing a missing node type bug when trying to run a workflow.
* Improve error detection for installing packages
* 💄 Updating community nodes components styling and wording based on the product feedback
* Implement telemetry be events
* Add author name and email to packages
* Fix telemetry be events for community packages
* 📈 Updating front-end telemetry events with community nodes author data
* 💄 Updating credentials documentation link logic to handle community nodes credentials
* 🐛 Fixing draggable panels logic
* Fix duplicate wrong import
* 💄 Hiding community nodes credentials documentation links when they don't contain an absolute URL
* Fix issue with detection of missing packages
* 💄 Adding the `Docs` tab to community nodes
* 💄 Adding a failed loading indicator to community nodes list
* Prevent n8n from crashing on startup
* Refactor and improve code quality
* ⚡ Remove not needed depenedency
Co-authored-by: Omar Ajoue <krynble@gmail.com>
Co-authored-by: Milorad Filipović <milorad@n8n.io>
Co-authored-by: Milorad FIlipović <miloradfilipovic19@gmail.com>
Co-authored-by: agobrech <ael.gobrecht@gmail.com>
Co-authored-by: Alex Grozav <alex@grozav.com>
* Add basic layout with icon for Google Ads
* Add node versioning(V1)
* Add node and credential to package
* Add basic layout with icon for Google Ads
* Add node versioning(V1)
* Add node and credential to package
* Add api call to getall
* Fix formdata in the body for the request
* N8N-2928 Added custom queries to campaign
* Fix header bug and add developer-token field
* Add operation and fields to campaign new format
* Add more configurations and queries
* Add Invoice ressources and operations
* Remov old version from the node
* Fixed bud with typo
* Correctly prepends the baseURL
* add query to invocie request
* Fixes header not parsing the expression
* Invoice param changes
* Fixes bug related to headers not being parsed, and bug with auth
* Remove useless imports
* Added analytics to google ad node and removed useless header
* Removed url for testing
* Fixed inconsistent behaviour with the access token not being refreshed
* Added placeholders to help user
* Removed useless comments
* Resolved name confusion
* Added support for body in a GET method
* Removed hyphens, parse body's expression
* Renamed operation for clarity
* Remove unused code
* Removed invoice resource and fixed bug with body and headers
The invoice operation was removed since it does not reflect
what a user would expect from it. Google ADS invoices are
only used for big advertisers where invoicing is performed
after the end of the month and for big sums. This would
be misleading for the majority of the users expecting
an expenses report.
Also fixed a bug with header and body being sent since it
was broken for multiple input rows. The first execution
would override all others.
Lastly, made some improvements to the node itself by
transforming data, adding filters and operations.
* Improve campagin operation and remove analytics; fix tests
* Improve tooltips and descriptions
* Fix lint issues
* Improve tooltip to explain amounts in micros
* Change wording for micros
* Change the fix to a more elegant solution
Co-authored-by: Cyril Gobrecht <cyril.gobrecht@gmail.com>
Co-authored-by: Aël Gobrecht <ael.gobrecht@gmail.com>
* feat: Migrated to npm release of riot-tmpl fork.
* fix: Updated imports to use @n8n_io/riot-tmpl
* fix: Fixed Logger.ts types.
Co-authored-by: Jan Oberhauser <janober@users.noreply.github.com>
* ⚡ Add OAuth2 client credentials grant type
* ⚡ Improvements
* 🐛 Fix linting issue
* 🐛 Fix typo
* 🐛 Fix small issue with type
* 🐛 When token expire get a new one instead of refreshing it
* ⚡ Fix issue that it did not display it correctly for OAuth1
Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
* ✨ Add pairedItem support
* 👕 Fix lint issue
* 🐛 Fix resolution in frontend
* 🐛 Fix resolution issue
* 🐛 Fix resolution in frontend
* 🐛 Fix another resolution issue in frontend
* ⚡ Try to automatically add pairedItem data if possible
* ⚡ Cleanup
* ⚡ Display expression errors in editor UI
* 🐛 Fix issue that it did not display errors in production
* 🐛 Fix auto-fix of missing pairedItem data
* 🐛 Fix frontend resolution for not executed nodes
* ⚡ Fail execution on pairedItem resolve issue and display information
about itemIndex and runIndex
* ⚡ Allow that pairedItem is only set to number if runIndex is 0
* ✨ Improve Expression Errors
* ⚡ Remove no longer needed code
* ⚡ Make errors more helpful
* ⚡ Add additional errors
* 👕 Fix lint issue
* ⚡ Add pairedItem support to core nodes
* ⚡ Improve support in Merge-Node
* ⚡ Fix issue with not correctly converted incoming pairedItem data
* 🐛 Fix frontend resolve issue
* 🐛 Fix frontend parameter name display issue
* ⚡ Improve errors
* 👕 Fix lint issue
* ⚡ Improve errors
* ⚡ Make it possible to display parameter name in error messages
* ⚡ Improve error messages
* ⚡ Fix error message
* ⚡ Improve error messages
* ⚡ Add another error message
* ⚡ Simplify
* feat(RabbitMQ Trigger Node): Make message acknowledgement and concurrent
processing configurable
* ⚡ Make sure that messages do not get executed multiple times
* 👕 Fix lint issue
* 🐛 Fix issue that for manual executions in "own" mode messages got
know acknowledged
* ⚡ Increment count now that console.log got removed
* ⚡ Improvements
* ⚡ Fix default value
* ⚡ Improve display name
* refactor tabs out
* refactor execute button
* refactor header
* add more views
* fix error view
* fix workflow rename bug
* rename component
* fix small screen bug
* move items, fix positions
* add hover state
* show selector on empty state
* add empty run state
* fix binary view
* 1 item
* add vjs styles
* show empty row for every item
* refactor tabs
* add branch names
* fix spacing
* fix up spacing
* add run selector
* fix positioning
* clean up
* increase width of selector
* fix up spacing
* fix copy button
* fix branch naming; type issues
* fix docs in custom nodes
* add type
* hide items when run selector is shown
* increase selector size
* add select prepend
* clean up a bit
* Add pagination
* add stale icon
* enable stale data in execution run
* Revert "enable stale data in execution run"
8edb68dbff
* move metadata to its own state
* fix smaller size
* add scroll buttons
* update tabs on resize
* update stale data on rename
* remove metadata on delete
* hide x
* change title colors
* binary data classes
* remove duplicate css
* add colors
* delete unused keys
* use event bus
* refactor header out
* support different nodes
* update selector
* add immediate input
* add branch overrides
* split output input run index
* clean up unnessary data
* add missing keys
* update key names
* remove unnessary css/js
* fix outputs panel
* set max width on input selector
* fix selector to show parent nodes
* fix bug when switching between nodes
* add linking and refactor
* add linking
* fix minor issues
* hide linking when cannot link
* fix type
* fix error state
* clean up import
* fix linking edge cases
* hide input panel for triggers
* disable for start node
* format file
* refactor output panel
* add empty input hint
* update too much data view
* update slot, message under branch
* no input data view
* add node not run/no output data views
* add tooltip support on execute prev
* fix spacing in view
* address output views
* fix run node hint view
* fix spinner
* center button
* update message to use node name
* update title of no output data message
* implement loading states
* fix sizes
* fix sizes
* update spinner
* add wire me up image
* update link
* update panels design
* fix unclickable area bug
* revert change
* fix clickable bg
* fix up positioning
* ensure bg is clickable
* fix up borders
* fix height
* move border to wrapper
* set box shadow
* set box shadow
* add drag button
* add dragging for main panel
* set max width of panels
* set min width in js
* keep showing drag while dragging
* fix dragging leaving modal
* update trigger position of main panel
* move main panel position into store
* clear metadata after changing workflow
* center grid correctly
* add drag arrows
* add dragging hover
* fix cursor behavior
* update no output state
* show last run on open
* always set to latest run
* fix padding
* add I wish this node would
* clean up unsued data
* inject run info into run
* refactor out drag button
* fix dragging issue
* fix arrow bug
* increase width of panel
* change run logic
* set label font sizes
* update radiobutton pos
* address header issues
* fix prev spacing bug
* fix input order
* set package lock
* add close modal event
* complete close modal event
* add input change event
* add dragging event
* add event on view change
* add page size event
* rename event
* add event on page change
* add link click event
* add linking event
* rename var
* add run change event
* add button events
* add branch event
* add structure for open event
* add input type
* set session id
* set sessionid/source for expression events
* add params to expression events
* make display modes global
* add display mode to tracking
* add more event tracking
* add has_mapping param
* make main panel position global
* dedupe list
* fix cursor while dragging
* address feedback
* reduce bottom scrim
* remove empty option hint
* add hint tooltip
* add tritary button
* update param names
* update parameter buttons
* center empty states
* move feature request message
* increase max width for inputs selector
* fix error dispaly padding
* remove immediate
* refactor search logic to return object
* fix console errors
* fix console errors
* add node distance
* refactor how input nodes listed
* remove console log
* set package lock
* refactor recursive logic
* handle overrides
* handle default case without inputs
* fix bug width link
* fix tabs arrow bug
* handle binary data case
* update node execution
* fix merge logic
* remove console log
* delete func
* update package lock
* add hover area
* switch first input node
* keep recursive order
* make breadth first traversal
* fix overflow bug, add pluralization
* update docs url
* update drop shadow
* set background color for button
* update input
* fix truncation
* update index of input dropdown
* fix binary background
* update telemetry
* fix binary data switching
* check all parent connections for executed node
* check current state for executing node
* fix executing states
* update loading states
* use pluralization for items
* rename modal
* update pluralization
* update package lock
* update empty messagE
* format file
* refactor out dragging logic
* refactor out dragging
* add back panel position
* add telemetry params
* add survey url as const
* remove extra space, add dot
* rename tabs, update telemetery, fix telemetry bug
* update execute prev button
* rename workflow func
* rename workflow func
* delete unnessary component
* fix build issue
* add tests for workflow search
* format + add tests
* remove todo comment
* update iconnection type to match workflows
* Revert "update iconnection type to match workflows"
3772487d98
* update func comment
* fix formatting issues
* add tertiary story
* add spinner story
* remove todo comment
* remove eslint check
* update empty messagE
* ✨ Added basic Vue 2 + Vite.js setup.
* 🚧 Improved typescript support.
* ✨ Added N8nNotice component to design system with stories and unit tests.
* ✨ Migrated design system build to Vite.js.
* ♻️ Updated typescript definitions. Moved some interface types to remove reliance from design system on editor-ui user and validation types.
* ♻️ Changed prop name from type to theme. Updated truncation props.
* ♻️ Moved user response types back. Added n8n-notice component to editor-ui.
* 🐛 Fixed global vitest types.
* ✨ Added this. vue type extension to editor-ui
* ♻️ Removed circular import.
* ✅ Fixed failing n8n-notice tests.
* feat: Added support for notice truncation via typeOptions.
* ✨ Updated warning color variables and notice warning colors.
* 🐛 Fixed n8n-notice parameter input spacing.
* ✨ Introduce simple node versioning
* ⚡ Add example how to read version in node-code for custom logic
* 🐛 Fix setting of parameters
* 🐛 Fix another instance where it sets the wrong parameter
* ⚡ Remove unnecessary TOODs
* ⚡ Revert Set Node example changes
* ;rotating_light: Add test
* Centralized error throwing for encryption key
* Unifying the error message used by cli and core packages
* Improvements to error messages to make it more DRY
* Removed unnecessary throw
* Throwing error when credential does not exist to simplify node behavior (#3112)
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>