Commit Graph

59 Commits

Author SHA1 Message Date
Mutasem Aldmour
ce066a160f Remove unnessasry <br/> (#2340)
* introduce analytics

* add user survey backend

* add user survey backend

* set answers on survey submit

Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com>

* change name to personalization

* lint

Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com>

* N8n 2495 add personalization modal (#2280)

* update modals

* add onboarding modal

* implement questions

* introduce analytics

* simplify impl

* implement survey handling

* add personalized cateogry

* update modal behavior

* add thank you view

* handle empty cases

* rename modal

* standarize modal names

* update image, add tags to headings

* remove unused file

* remove unused interfaces

* clean up footer spacing

* introduce analytics

* refactor to fix bug

* update endpoint

* set min height

* update stories

* update naming from questions to survey

* remove spacing after core categories

* fix bug in logic

* sort nodes

* rename types

* merge with be

* rename userSurvey

* clean up rest api

* use constants for keys

* use survey keys

* clean up types

* move personalization to its own file

Co-authored-by: ahsan-virani <ahsan.virani@gmail.com>

* update parameter inputs to be multiline

* update spacing

* Survey new options (#2300)

* split up options

* fix quotes

* remove unused import

* refactor node credentials

* add user created workflow event (#2301)

* update multi params

* simplify env vars

* fix versionCli on FE

* update personalization env

* clean up node detail settings

* fix event User opened Credentials panel

* fix font sizes across modals

* clean up input spacing

* fix select modal spacing

* increase spacing

* fix input copy

* fix webhook, tab spacing, retry button

* fix button sizes

* fix button size

* add mini xlarge sizes

* fix webhook spacing

* fix nodes panel event

* fix workflow id in workflow execute event

* improve telemetry error logging

* fix config and stop process events

* add flush call on n8n stop

* ready for release

* fix input error highlighting

* revert change

* update toggle spacing

* fix delete positioning

* keep tooltip while focused

* set strict size

* increase left spacing

* fix sort icons

* remove unnessasry <br/>

* remove unnessary break

* remove unnessary margin

* clean unused functionality

* remove unnessary css

* remove duplicate tracking

* only show tooltip when hovering over label

* remove extra space

* add br

* remove extra space

* clean up commas

* clean up commas

* remove extra space

* remove extra space

* rewrite desc

* add commas

* add space

* remove extra space

* add space

* add dot

* update credentials section

* use includes

Co-authored-by: ahsan-virani <ahsan.virani@gmail.com>
Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2021-10-27 15:00:13 -05:00
Omar Ajoue
443c2a4d51 Updated node design and node versioning (#1961)
*  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>
2021-09-21 19:38:24 +02:00
Omar Ajoue
7ce7285f7a Load credentials from the database (#1741)
* Changes to types so that credentials can be always loaded from DB

This first commit changes all return types from the execute functions
and calls to get credentials to be async so we can use await.

This is a first step as previously credentials were loaded in memory and
always available. We will now be loading them from the DB which requires
turning the whole call chain async.

* Fix updated files

* Removed unnecessary credential loading to improve performance

* Fix typo

*  Fix issue

* Updated new nodes to load credentials async

*  Remove not needed comment

Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2021-08-20 18:57:30 +02:00
Mutasem Aldmour
fc6d3ad8c0 Add "Follow All Redirects" option to HTTP Request Node (#2046)
* redirect post/put/delete/patch requests

* add redirect all option

*  Minor improvement

Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2021-08-08 11:27:07 +02:00
Kaito Udagawa
800e5ec97f Add support of array in querystring (#1914)
*  Add support of array in querystring

In the HTTP Request node, a parameter that appeared multiple times with the same name will be converted into an array.
Any parameters that appeared only once will be kept in the form of a string for backward compatibility.

*  Prefer spread operator
2021-07-10 23:51:35 +02:00
Mutasem Aldmour
276eaea4bf Clean up node description (#1883)
Co-authored-by: Jan <janober@users.noreply.github.com>
2021-07-03 14:40:16 +02:00
Omar Ajoue
427f25d3d0 Add "Split Into Items" option to HTTP Request node (#1912)
* Added the option to flatten output so we can more easily work with arrays

*  Change parameter name

Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2021-06-23 12:04:50 +02:00
Jan Oberhauser
4c7d3a918b 👕 Fix lint issue 2021-06-12 20:24:13 +02:00
Jan Oberhauser
1d850da9fb Send request of HTTP Request node to browser console when testing 2021-06-12 20:22:55 +02:00
Omar Ajoue
882e2f8e74 Addglobal timeout setting for all http requests except for http request node (#1650)
* Added a global timeout setting for all http requests except for http
node.

The http node explicitly sets a timeout that overrides the default
value.

This is to prevent behaviors when users were expecting that their quests
could take a very long time to execute.

* Removed unnecessary typing from code
2021-04-17 15:15:33 +02:00
Iván Ovejero
1d27a9e87e Improve node error handling (#1309)
* Add path mapping and response error interfaces

* Add error handling and throwing functionality

* Refactor error handling into a single function

* Re-implement error handling in Hacker News node

* Fix linting details

* Re-implement error handling in Spotify node

* Re-implement error handling in G Suite Admin node

* 🚧 create basic setup NodeError

* 🚧 add httpCodes

* 🚧 add path priolist

* 🚧 handle statusCode in error, adjust interfaces

* 🚧 fixing type issues w/Ivan

* 🚧 add error exploration

* 👔 fix linter issues

* 🔧 improve object check

* 🚧 remove path passing from NodeApiError

* 🚧 add multi error + refactor findProperty method

* 👔 allow any

* 🔧 handle multi error message callback

*  change return type of callback

*  add customCallback to MultiError

* 🚧 refactor to use INode

* 🔨 handle arrays, continue search after first null property found

* 🚫 refactor method access

* 🚧 setup NodeErrorView

*  change timestamp to Date.now

* 📚 Add documentation for methods and constants

* 🚧 change message setting

* 🚚 move NodeErrors to workflow

*  add new ErrorView for Nodes

* 🎨 improve error notification

* 🎨 refactor interfaces

*  add WorkflowOperationError, refactor error throwing

* 👕 fix linter issues

* 🎨 rename param

* 🐛 fix handling normal errors

*  add usage of NodeApiError

* 🎨 fix throw new error instead of constructor

* 🎨 remove unnecessary code/comments

* 🎨 adjusted spacing + updated status messages

* 🎨 fix tab indentation

*  Replace current errors with custom errors (#1576)

*  Introduce NodeApiError in catch blocks

*  Introduce NodeOperationError in nodes

*  Add missing errors and remove incompatible

*  Fix NodeOperationError in incompatible nodes

* 🔧 Adjust error handling in missed nodes

PayPal, FileMaker, Reddit, Taiga and Facebook Graph API nodes

* 🔨 Adjust Strava Trigger node error handling

* 🔨 Adjust AWS nodes error handling

* 🔨 Remove duplicate instantiation of NodeApiError

* 🐛 fix strava trigger node error handling

* Add XML parsing to NodeApiError constructor (#1633)

* 🐛 Remove type annotation from catch variable

*  Add XML parsing to NodeApiError

*  Simplify error handling in Rekognition node

*  Pass in XML flag in generic functions

* 🔥 Remove try/catch wrappers at call sites

* 🔨 Refactor setting description from XML

* 🔨 Refactor let to const in resource loaders

*  Find property in parsed XML

*  Change let to const

* 🔥 Remove unneeded try/catch block

* 👕 Fix linting issues

* 🐛 Fix errors from merge conflict resolution

*  Add custom errors to latest contributions

* 👕 Fix linting issues

*  Refactor MongoDB helpers for custom errors

* 🐛 Correct custom error type

*  Apply feedback to A nodes

*  Apply feedback to missed A node

*  Apply feedback to B-D nodes

*  Apply feedback to E-F nodes

*  Apply feedback to G nodes

*  Apply feedback to H-L nodes

*  Apply feedback to M nodes

*  Apply feedback to P nodes

*  Apply feedback to R nodes

*  Apply feedback to S nodes

*  Apply feedback to T nodes

*  Apply feedback to V-Z nodes

*  Add HTTP code to iterable node error

* 🔨 Standardize e as error

* 🔨 Standardize err as error

*  Fix error handling for non-standard nodes

Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>

Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>
Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com>
2021-04-16 18:33:36 +02:00
Omar Ajoue
f225bbbb84 Add type casting to postgres queries (#1600)
* 538 add support for casting types in postgres

* Add typing to postgres insert nodes and removed unnecessary field from crate db

* Added placeholder and description for types in postgres

* Adding tests to insert and changes suggested by Ben

*  Minor improvement

Co-authored-by: mutdmour <mutdmour@gmail.com>
Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2021-04-03 16:53:47 +02:00
Jan Oberhauser
44100dc675 Fix bug in HTTP Request node with raw data and file response 2021-03-02 10:18:39 +01:00
Omar Ajoue
9c479abc35 🐛 Fixed batch sizing to work when batchSize = 1 (#1314) 2021-01-07 07:53:48 +01:00
Ricardo Espinoza
ea2d0920a8 Add useQueryString option to HTTP Request Node (#1279) 2020-12-29 11:37:06 +01:00
Jan Oberhauser
5c83be18a8 🐛 Fix issue that binary data got reused 2020-12-25 22:59:22 +01:00
Jan Oberhauser
cb496b8c4d Small improvements to HTTP Request node 2020-10-26 13:27:29 +01:00
Omar Ajoue
26de4a86c9 Adding throttle to http request node (#1095)
Works by setting a timeout between each batch of requests.
Batch size and interval are configurable.
2020-10-26 13:27:12 +01:00
Jan Oberhauser
546b79bea0 👕 Fix lint issue 2020-10-22 18:00:28 +02:00
Jan Oberhauser
40c2acd77b 👕 Fix lint issue 2020-10-22 15:46:03 +02:00
Jan Oberhauser
4165fad307 🐛 Fix bug with responseFormat "file" for POST-Requests 2020-10-19 09:42:58 +02:00
Jan Oberhauser
d827749c1e 🐛 Fix HTTP-Request multipart-form-data/raw bug 2020-10-16 16:05:32 +02:00
Jan Oberhauser
3ba050819a Fix issue that it did set not supported parameters 2020-10-15 08:01:30 +02:00
Jan Oberhauser
fe802c8f76 👕 Fix built issue by fixing lint issues 2020-10-01 15:18:47 +02:00
Jan Oberhauser
fccbd48937 Run requests in HTTP Request Node in parallel 2020-09-10 16:07:52 +02:00
Jan Oberhauser
f4ed583359 🐛 Do not overwrite accept header if set on HTTP Request Node 2020-08-28 17:42:35 +02:00
Ricardo Espinoza
abdda858eb 🐛 Fix issue with OAuth2 request (#874) 2020-08-25 18:56:19 +02:00
Rupenieks
5295696e60 OAuth1 support for HTTP Request Node (#781)
* Add OAuth1

*  Added OAuth1 support.

Changes to NodeExecuteFunctions:
- Accommodating to use of both a URL and URI property in request options.
- qs if not set is undefined, so checking for its length returns an error
2020-07-25 10:09:52 +02:00
Ricardo Espinoza
db972b384f 🐛 Fixes issue #735 (#743) 2020-07-10 10:38:23 +02:00
ricardo
5e93b37c6e Improvements 2020-06-07 17:29:29 -04:00
ricardo
af3d799e5c Oauth1 support and Twitter node 2020-06-01 20:42:44 -04:00
Jan Oberhauser
90fe5113a0 🔀 Merge branch 'master' into oauth-support 2020-04-14 20:54:19 +02:00
Jan Oberhauser
fd185671db 🐛 Fix sending none JSON data bug 2020-04-13 22:17:23 +02:00
Jan Oberhauser
b1172bdb48 🔀 Merge branch 'master' into oauth-support 2020-04-10 09:48:24 +02:00
Jan Oberhauser
4374b3d914 Small improvement to HTTP Request-Node 2020-04-10 00:44:09 +02:00
ricardo
cbf4a921e8 HTTP node improvements 2020-04-08 23:17:09 -04:00
Jan Oberhauser
9dd9e0d8ba 🔀 Merge branch 'master' into oauth-support 2020-04-04 17:34:10 +02:00
Jan Oberhauser
d710909bbd Add support to send multiple files with Form-Data Multipart 2020-03-30 10:31:33 +02:00
ricardo
bce40148a6 Extended multipart/form-data functionality 2020-03-23 09:11:36 -04:00
Jan Oberhauser
ce0aaeba7d Improve continueOnFail behaviour 2020-03-17 13:18:04 +01:00
Jan Oberhauser
8228b8505f Abstract OAuth signing and make credentials extendable 2020-01-13 20:46:58 -06:00
Jan Oberhauser
83c49ddd21 Make possible to send binary-data with HttpRequest-Node 2020-01-10 12:57:01 -06:00
Jan Oberhauser
7b8f88f39e Set reasonable defaults for HTTP Request node "accept" header 2020-01-01 10:28:43 -06:00
Jan Oberhauser
e1be291949 Add subtitle to HTTP Request Node 2019-12-28 21:24:14 -06:00
Romain Dunand
cfa8713226 Auth & get records management 2019-11-13 00:15:20 +01:00
Jan Oberhauser
5804d908d5 Rename parameter to match others and add dot to descriptions 2019-11-02 21:20:42 +01:00
Leo
644b5455c9 added ability to post raw/string/xml 2019-11-02 10:12:59 +01:00
Jan Oberhauser
be8f0b9e35 Make it possible to send Patch-Requests with HttpRequest-Node 2019-10-16 12:32:15 +02:00
Jan Oberhauser
ea6ec1aa6c Make it possible to send Form-Data with HttpRequest-Node 2019-10-16 12:26:47 +02:00
Jan Oberhauser
3580ea0e2e Add additional options to "HTTP Request" node 2019-09-19 21:56:04 +02:00