* ✨ 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>
* ⚡ 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
* 🚧 Initial progress on PostBin node.
* ✨ Implemented Bin and Request operations for PostBin node.
* 🚧 Reworked the node in the declarative way.
* 🚧 PosBin node refactoring after reworking it.
* ✨ Implemented Bin id parsing in PostBin node. Done some final refactoring and documentation.
* ⚡ Improvements
* ⚡ Add comments
* 👌Updating the PostBin node based on the product review
* 💄Updating PostBin node Bin ID validation logic
* ⚡ Small improvements
* ⚡ Transform the bin requests and add additional properties
Co-authored-by: ricardo <ricardoespinoza105@gmail.com>
Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
* ✨ 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>
* (fix): Added missing full stop to license
GitHub does not render the single line breaks in the *Limitations* section. The added full stop makes it easier to read our license.
* 📚 Add also to other files
Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
Fix a bug which crashed n8n under some circumstances on shutdown or
workflow deactivate and so resulted in other workflows not getting
deactviated correctly.
* ✨ change FE to handle new object type
* 🚸 improve UX of handling invalid credentials
* 🚧 WIP
* 🎨 fix typescript issues
* 🐘 add migrations for all supported dbs
* ✏️ add description to migrations
* ⚡ add credential update on import
* ⚡ resolve after merge issues
* 👕 fix lint issues
* ⚡ check credentials on workflow create/update
* update interface
* 👕 fix ts issues
* ⚡ adaption to new credentials UI
* 🐛 intialize cache on BE for credentials check
* 🐛 fix undefined oldCredentials
* 🐛 fix deleting credential
* 🐛 fix check for undefined keys
* 🐛 fix disabling edit in execution
* 🎨 just show credential name on execution view
* ✏️ remove TODO
* ⚡ implement review suggestions
* ⚡ add cache to getCredentialsByType
* ⏪ use getter instead of cache
* ✏️ fix variable name typo
* 🐘 include waiting nodes to migrations
* 🐛 fix reverting migrations command
* ⚡ update typeorm command
* ✨ create db:revert command
* 👕 fix lint error
* ✨ Add optional authenticate method to credentials
* ⚡ Simplify code and add authentication support to MattermostApi
* 👕 Fix lint issue
* ⚡ Add support to own-mode
* 👕 Fix lint issue
* ✨ Add support for predefined auth types bearer and headerAuth
* ⚡ Make sure that DateTime Node always returns strings
* ⚡ Add support for moment types to If Node
* ⚡ Make it possible for HTTP Request Node to use all credential types
* ✨ Add basicAuth support
* Add a new dropcontact node
* ✨ First basic implementation of mainly JSON based nodes
* ✨ Add fixedCollection support, added value parameter and
expression support for value and property
* Improvements to #2389
* ⚡ Add credentials verification
* ⚡ Small improvement
* ⚡ set default time to 45 seconds
* ✨ Add support for preSend and postReceive methods
* ➕ Add lodash merge and set depedency to workflow
* 👕 Fix lint issue
* ⚡ Improvements
* ⚡ Improvements
* ⚡ Improvements
* ⚡ Improvements
* ⚡ Improvements
* 🐛 Set siren and language correctly
* ⚡ Add support for requestDefaults
* ⚡ Add support for baseURL to httpRequest
* ⚡ Move baseURL to correct location
* ✨ Add support for options loading
* 🐛 Fix error with fullAccess nodes
* ✨ Add credential test functionality
* 🐛 Fix issue with OAuth autentication and lint issue
* ⚡ Fix build issue
* 🐛 Fix issue that url got always overwritten to empty
* ✨ Add pagination support
* ⚡ Code fix required after merge
* ⚡ Remove not needed imports
* ⚡ Fix credential test
* ✨ Add expression support for request properties and $self
support on properties
* ⚡ Rename $self to $value
* 👕 Fix lint issue
* ⚡ Add example how to send data in path
* ✨ Make it possible to not sent in dot notation
* ✨ Add support for postReceive:rootProperty
* ⚡ Fix typo
* ✨ Add support for postReceive:set
* ⚡ Some fixes
* ⚡ Small improvement
* ;zap: Separate RoutingNode code
* ⚡ Simplify code and fix bug
* ⚡ Remove unused code
* ✨ Make it possible to define "request" and "requestProperty" on
options
* 👕 Fix lint issue
* ⚡ Change $credentials variables name
* ✨ Enable expressions and access to credentials in requestDefaults
* ⚡ Make parameter option loading use RoutingNode.makeRoutingRequest
* ✨ Allow requestOperations overwrite on LoadOptions
* ✨ Make it possible to access current node parameters in loadOptions
* ⚡ Rename parameters variable to make future proof
* ⚡ Make it possible to use offset-pagination with body
* ✨ Add support for queryAuth
* ⚡ Never return more items than requested
* ✨ Make it possible to overwrite requestOperations on parameter
and option level
* 👕 Fix lint issue
* ✨ Allow simplified auth also with regular nodes
* ✨ Add support for receiving binary data
* 🐛 Fix example node
* ⚡ Rename property "name" to "displayName" in loadOptions
* ⚡ Send data by default as "query" if nothing is set
* ⚡ Rename $self to $parent
* ⚡ Change to work with INodeExecutionData instead of IDataObject
* ⚡ Improve binaryData handling
* ⚡ Property design improvements
* ⚡ Fix property name
* 🚨 Add some tests
* ⚡ Add also test for request
* ⚡ Improve test and fix issues
* ⚡ Improvements to loadOptions
* ⚡ Normalize loadOptions with rest of code
* ⚡ Add info text
* ✨ Add support for $value in postReceive
* 🚨 Add tests for RoutingNode.runNode
* ⚡ Remove TODOs and make url property optional
* ⚡ Fix bug and lint issue
* 🐛 Fix bug that not the correct property got used
* 🚨 Add tests for CredentialsHelper.authenticate
* ⚡ Improve code and resolve expressions also everywhere for
loadOptions and credential test requests
* ✨ Make it possible to define multiple preSend and postReceive
actions
* ✨ Allow to define tests on credentials
* ⚡ Remove test data
* ⬆️ Update package-lock.json file
* ⚡ Remove old not longer used code
Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>
Co-authored-by: Mutasem <mutdmour@gmail.com>
Co-authored-by: PaulineDropcontact <pauline@dropcontact.io>
Co-authored-by: ricardo <ricardoespinoza105@gmail.com>
* 🚢 Added digest-header package to get auth
* ⚡ Fix type issue and digest auth header request
* ⚡ Removed auth details from first request
* Added diest to authorization header
* ⚡ fixed typo in url
* ⚡ Removed broken package and addded auth implimentation
* ⚡ Added check for www header
* 👕 Moved digestAuth to a specific function
* 👕 Code restructuring
* ⚡ Added seperate promise for digest-auth
* 👕 Fix formatting
* 👕 renamed digestPromise to axiosPromise
* 👕 Removed redundant silce function
* ⚡ Enable multiple args in logging via nodes
* 👕 Fix lint
* ⚡ Change to behave more as expected
Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
* ✨ Add Webhook-Response-Node
* ⚡ Replace callback function with promise
* ✨ Add support for Bull and binary-data
* ✨ Add string response option
* ⚡ Remove some comments
* ✨ Make more generically possible & fix issue multi call in
queue mode
* ⚡ Fix startup and eslint issues
* ⚡ Improvements to webhook response node and functionality
* ⚡ Replace data with more generic type
* ⚡ Make statusMessage optional
* ⚡ Change parameter order
* ⚡ Move Response Code underneath options
* ⚡ Hide Response Code on Webhook node if mode responseNode got selected
* ⚡ Minor improvements
* ⚡ Add missing file and fix lint issue
* ⚡ Fix some node linting issues
* ⚡ Apply feedback
* ⚡ Minor improvements
* Improved the error object returned by axios to make it more compatible with request
* Fixed multipart/form-data payload creation
* 🐛 Remove issue with circular references
Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
* ⚡ introduce versioned nodes
* Export versioned nodes for separate process run
* Add bse node for versioned nodes
* fix node name for versioned nodes
* extend node from nodeVersionedType
* improve nodes base and flow to FE
* revert lib es2019 to es2017
* include version in key to prevent duplicate key
* handle type versions on FE
* clean up
* cleanup nodes base
* add type versions in getNodeParameterOptions
* cleanup
* code review
* code review + add default version to node type description
* remove node default types from store
* 💄 cleanups
* Draft for migrated Mattermost node
* First version of Mattermost node versioned according to node standards
* Correcting deactivate operations name to match currently used one
* ✨ Create utility types
* ⚡ Simplify Mattermost types
* ⚡ Rename exports for consistency
* ⚡ Type channel properties
* ⚡ Type message properties
* ⚡ Type reaction properties
* ⚡ Type user properties
* ⚡ Add type import to router
* 🐛 Add missing key
* 🔨 Adjust typo in operation name
* 🔨 Inline exports for channel properties
* 🔨 Inline exports for message properties
* 🔨 Inline exports for reaction properties
* 🔨 Inline exports for user properties
* 🔨 Inline exports for load options
* 👕 Fix lint issue
* 🔨 Inline export for description
* 🔨 Rename descriptions for clarity
* 🔨 Refactor imports/exports for methods
* 🔨 Refactor latest version retrieval
* 🔥 Remove unneeded else clause
When the string literal union is exhausted, the resource key becomes never, so TS disallows wrong key usage.
* ✨ Add overloads to getNodeParameter
* ⚡ Improve overload
* 🔥 Remove superfluous INodeVersions type
* 🔨 Relocate pre-existing interface
* 🔥 Remove JSDoc arg descriptions
* ⚡ Minor reformatting in transport file
* ⚡ Fix API call function type
* Created first draft for Axios requests
* Working version of mattermost node with Axios
* Work in progress for replacing request library
* Improvements to request translations
* Fixed sending files via multipart / form-data
* Fixing translation from request to axios and loading node parameter options
* Improved typing for new http helper
* Added ignore any for specific lines for linting
* Fixed follow redirects changes on http request node and manual execution of previously existing workflow with older node versions
* Adding default headers according to body on httpRequest helper
* Spec error handling and fixed workflows with older node versions
* Showcase how to export errors in a standard format
* Merging master
* Refactored mattermost node to keep files in a uniform structure. Also fix bugs with merges
* Reverting changes to http request node
* Changed nullish comparison and removed repeated code from nodes
* Renamed queryString back to qs and simplified node output
* Simplified some comparisons
* Changed header names to be uc first
* Added default user agent to requests and patch http method support
* Fixed indentation, remove unnecessary file and console log
* Fixed mattermost node name
* Fixed lint issues
* Further fix linting issues
* Further fix lint issues
* Fixed http request helper's return type
Co-authored-by: ahsan-virani <ahsan.virani@gmail.com>
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
* ⚡ Generalize unique entity name generation
* ⚡ Standardize variable names
* redo credentials
* revert some changes, replace got with was
* fix v-if order
* fix v-if order
* update linting
* update gulpfile
* update ssh display name
* update height
* update params
* update info tip sizes
* address design comments
* update google button disabled
* update icon size to 28px
* update design issues
* update info tab design
* address design comments
* update tab size
* update run data spacing
* address comments, update logo design
* fix spacing issues
* clean up store
* fix create new bug
* add loading state
* rename prop
* remove unused prop
* fix select bug
* remove label tag
* update word break
* build
* address design comments
* update font family of button
* update menu opacity
* update text
* update title
* address more comments
* update oauth messages
* add oauth validation
* hide disabled state
* update warning modal
* show button on text input
* clean up cred details
* add validation errors
* fix bug when deleting cred
* Frontend hack to display test button
* Created interfaces for testing and endpoint
* Testing slack node credentials working
* Adding test with node to endpoint for credential testing
* Fixed linting and test detectability
* Adding required for slack token
* Added google sheets credential testing
* update message
* Adding suggestions by Ivan and Mutasem
* Address comments
* keep blurred when focused
* update font weight of errors
* add oauth banner
* remove toast
* Fixed code bug and added telegram credential testing
* scroll to top on success
* clean up duplication
* Fixed telegram trigger node and added tests to typeform
* refactor modal
* add more validation support
* refactor info tab
* scroll to bottom on save, handle cred saving
* refactor save button
* save cred on valid
* save cred on valid
* scroll to top if has error
* add targets on input labels
* delete credentails input
* revert fe changes
* update validation logic
* clean interface
* test credentials
* update banner design
* show testing state
* update x position
* fix issues
* fix focus issues
* clean up validation behavior
* make error relative
* update banner component
* update error spacing
* don't close dialog
* rename button
* update how banners behave
* if has unsaved changes first
* move confirm message
* add success banner
* update time state
* disable transitions
* test on open
* clean up banner behavior
* update banner styling
* capitalize
* update error banner styling to handle long texts
* avoid unnessary content jostling
* add loading label
* show validation warnings when opening modal
* retest cred if not all props req
* update scroll to auto
* add error warning
* update color saturation
* set overflow to auto
* fix bug to get credentials when connected
* round down to minutes
* change tab name
* update casing oauth
* disable credential testing if it has expressions
* label same as title
* add more space between close and save
* remove check on making any changes
* hide close on confirm modals
* don't accept clicks outside dialog
* fix build issues
* undo test changes
* fix table scrollbar logs
* rename modals
* fix bug with same name
* refactor modal
* fix tslint issue
* refactor name
* update name behavior
* update monospace font
* remove comment
* refactor inputs
* refactor error handling
* reduce spacing changes
* fix doc url oauth1 oauth2
* build
* hide infotip if no inputs
* address most comments
* rename file
* fix menu alignment
* gst
* update types
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
Co-authored-by: Omar Ajoue <krynble@gmail.com>