Commit graph

377 commits

Author SHA1 Message Date
Jan Oberhauser cb3f0a0ec6 🔀 Merge branch 'feat/webhook-node/response-mode' of https://github.com/Jhalter5Stones/n8n into Jhalter5Stones-feat/webhook-node/response-mode 2022-02-19 11:32:29 +01:00
Justin Halter d1290075ed
feat(WebhookHelpers.ts, Webhook.node.ts): no body response for webhook
no body response for webhook response. This may be helpful if certain
services require that a response doesn't have a body
2022-02-18 13:09:28 -06:00
Ahsan Virani 0a9ce092fc
🗃️ Add relevant indexes in execution_entity (#2794)
* 🗃️ Add relevant indexes in execution_entity

* CR suggestions
2022-02-18 15:59:34 +01:00
Jan Oberhauser 9045699e5d 🐛 Fix getParentTypes bug which caused problems with OAuth 2022-02-13 19:05:09 +01:00
Jan Oberhauser 71f18de04e 🐛 Return original error of sub-workflow to main-workflow #2757 2022-02-06 11:13:49 +01:00
Jan Oberhauser 0da398b0e4
Nodes as JSON and authentication redesign (#2401)
*  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>
2022-02-05 22:55:43 +01:00
Mutasem Aldmour 7bdb7e2a25
Support telemetry page (#2756)
* support telemetry page events

* add log level to FE settings

* add debug logging

* fix types

* state fix

* move call
2022-02-03 23:24:01 +01:00
Ahsan Virani 135d5a89cd
Add debug log in healthcheck and enable DB logging via environment (#2744)
*  add debug log in healthcheck

*  add DB logging

* CR
2022-02-01 11:27:08 +01:00
Vahid Sebto 228ba36b56
Add external hook "activeWorkflows.initialized" (#2571) 2022-01-08 18:53:42 +01:00
Iván Ovejero 5fec563c5c
i18n feedback refactorings (#2597)
*  Create endpoint for node credential translation

*  Add API helper method in FE

* 🔨 Add creds JSON files to tsconfig

*  Refactor credentials loading

*  Refactor calls in CredentialConfig

* ✏️ Add dummy translations

*  Split translations per node

* 🔥 Remove deprecated method

*  Refactor nesting in collections

* 🚚 Rename topParameter methods for accuracy

* ✏️ Fill out GitHub dummy cred

* 🚚 Clarify naming for collection utils

* ✏️ Fill out dummy translation

* 🔥 Remove surplus colons

* 🔥 Remove logging

*  Restore missing space

* 🔥 Remove lingering colon

*  Add path to InputLabel calls

* ✏️ Fill out dummy translations

* 🐛 Fix multipleValuesButtonText logic

*  Add sample properties to be deleted

*  Render deeply nested params

* 📦 Update package-lock.json

* 🔥 remove logging

* ✏️ Add dummy value to Slack translation

* ✏️ Add placeholder to dummy translation

*  Fix placeholder rendering for button text

* 👕 Fix lint

* 🔥 Remove outdated comment

* 🐛 Pass in missing arg for placeholder

* ✏️ Fill out Slack translation

*  Add explanatory comment

* ✏️ Fill out dummy translation

* ✏️ Update documentation

* 🔥 Remove broken link

* ✏️ Add pending functionality

* ✏️ Fix indentation

* 🐛 Fix method call in CredentialEdit

*  Implement eventTriggerDescription

* 🐛 Fix table-json-binary radio buttons

* ✏️ Clarify usage of eventTriggerDescription

* 🔥 Remove unneeded arg

* 🐛 Fix display in CodeEdit and TextEdit

* 🔥 Remove logging

* ✏️ Add translation for test cred options

* ✏️ Add test for separate file in same dir

* ✏️ Add test for versioned node

* ✏️ Add test for node in grouped dir

* ✏️ Add minor clarifications

* ✏️ Add nested collection test

* ✏️ Add pending functionality

*  Generalize collections handling

* 🚚 Rename helper to remove redundancy

* 🚚 Improve naming in helpers

* ✏️ Improve helpers documentation

* ✏️ Improve i18n methods documentation

* 🚚 Make endpoint naming consistent

* ✏️ Add final newlines

* ✏️ Clean up JSON examples

*  Reuse i18n method

*  Improve utils readability

*  Return early if cred translation exists

* 🔥 Remove dummy translations
2022-01-07 22:02:21 +01:00
Ahsan Virani 57016624b8
Improve telemetry (#2604)
* add node positions in node graph

* add hover events

* add tag count in save event

* populate properties when default

* fix delete and enable node events

* add node and workflow exec events

* lint

* add node graph

* add node id
2022-01-07 17:14:59 +01:00
Ricardo Espinoza 7a8425a152
Add Notion node V2 (#2437)
*  Add versioning

*  Add credentials verification

*  Add folmula filtering

*  Add file support

*  Apply internal review

*  Improvements

*  Add page updated event to trigger

*  Use name instead of id when setting expression in select type

*  improvements

*  Improvements

*  Improvement to descriptions

*  Add filter to databasePage:getAll

*  Improvements

*  Add database:search operation

*  Add page:archive operation

*  Allow clearing fields date type

*  Allow setting single value in people type field

* asasas

* asasas

* aaaaa

*  Improvements

*  Fix merging issues

* 🐛 Fix filename

*  Minor fix

Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2021-12-29 23:23:22 +01:00
Jan Oberhauser 2996d5d1e8 👕 Fix lint issue 2021-12-25 13:51:42 +01:00
Vahid Sebto 8f9dbb7163
Add executionId workflow.postExecute external hook (#2569)
Co-authored-by: Jan Oberhauser <janober@users.noreply.github.com>
2021-12-25 13:42:17 +01:00
Jan Oberhauser 48f0f71f95 Make it possible to disable the UI 2021-12-24 07:59:14 +01:00
Ahsan Virani 1e42effc3a
Introduce binary data management (#2059)
* introduce binary data management

* merge fixes

* fixes

* init binary data manager for other modes

* improve binary manager

* improve binary manager

* delete binary data on executions delete

* lazy delete non-saved executions binary data

* merge fixes + error handing

* improve structure

* leftovers and cleanups

* formatting

* fix config description

* fixes

* fix races

* duplicate binary data for execute workflow node

* clean up and cr

* update mode name, add binary mode to diagnostics

* update mode name, add prefix to filename

* update filename

* allow multiple modes, backward compatibility

* improve file and id naming

* use execution id for binary data storage

* delete binary data by execution id

* add meta for persisted binary data

* delete marked persisted files

* mark deletion by executionid

* add env var for persisted binary data ttl

* improvements

* lint fix

* fix env var description

* cleanup

* cleanup

*  Minor improvements

Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2021-12-23 22:29:04 +01:00
Iván Ovejero c33cd0de3f 🔀 Merge master 2021-12-13 09:50:26 +01:00
Jan Oberhauser 4996939268 🐛 Fix issue with queue mode and missing wait-webhook data 2021-12-11 19:24:09 +01:00
Jan Oberhauser 0eab23dcd3 🐛 Fix missing execution id with queue-mode 2021-12-11 18:28:23 +01:00
Elvina Valieva 8e2191b633
🐛 Fix recommendation logic (#2543)
* fix: expect multiple answers for survey

* chore: refactor survey input methods

* fix error; fix tracking

Co-authored-by: Mutasem <mutdmour@gmail.com>
2021-12-10 18:53:31 +01:00
Anuj Kapoor 8d2c6cc073
Added fallback when port in use (#2524)
* Added fallback when port in use

*  Minor Fixes
2021-12-10 15:32:32 +01:00
Ahsan Virani 2125f25791
Tweaks to diagnostic events (#2544)
* Tweaks to events

* more tweaks and fixes
2021-12-10 15:29:05 +01:00
Iván Ovejero 00ac975164 🔀 Merge master 2021-12-06 09:41:15 +01:00
Iván Ovejero c50b6c2c21
Enable multiple args in logging via nodes (#2501)
*  Enable multiple args in logging via nodes

* 👕 Fix lint

*  Change to behave more as expected

Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2021-12-04 11:57:13 +01:00
Iván Ovejero a07f0ea575 Populate translations without blocking 2021-12-02 14:33:23 +01:00
Iván Ovejero 01db7f4a5b 🔥 Replace require() to prevent caching 2021-12-02 13:38:29 +01:00
Iván Ovejero 4e218a5e05 Reduce calls to config object 2021-12-02 09:33:23 +01:00
Iván Ovejero 563a852f47 🔀 Merge master 2021-11-29 10:05:37 +01:00
Jan Oberhauser fe741bd90a 👕 Fix lint issue 2021-11-27 11:36:59 +01:00
Iván Ovejero ed68ae8055 Switch to JSON for localization service 2021-11-24 12:16:59 +01:00
Iván Ovejero b4399a1c63 Minor optimizations 2021-11-22 11:49:59 +01:00
Iván Ovejero 9819c25ec5 Support versioned nodes 2021-11-19 12:22:01 +01:00
Iván Ovejero 99963b04a5 Render header strings 2021-11-19 10:52:25 +01:00
Iván Ovejero c98772c927 🔨 Fix build 2021-11-17 11:29:27 +01:00
Iván Ovejero 29a3953dff 🔀 Merge master 2021-11-17 10:25:05 +01:00
Iván Ovejero 7fc0395e95 Render node strings 2021-11-17 10:24:35 +01:00
Jan Oberhauser 670e93c0f4 👕 Fix lint issue 2021-11-13 09:37:42 +01:00
Iván Ovejero 61bb8de352 🔀 Merge master 2021-11-09 10:00:30 +01:00
Iván Ovejero 1de9ecf4ec Set up i18n 2021-11-09 09:59:48 +01:00
Jan Oberhauser 8c4040dc5b Minor improvements to RespondToWebhook node 2021-11-05 11:19:23 -06:00
Jan 7b8d388d17
Add Webhook response node (#2254)
*  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
2021-11-05 10:45:51 -06:00
nikozila 35787455ab
Add hook: workflow.afterCreate (#2407) 2021-11-05 08:47:05 -06:00
Ben Hesseldieck a46c7f827d
🐛 Fix saving credentials id as string (#2410) 2021-11-04 20:23:10 -06:00
Ben Hesseldieck 0877f485d9
Run migration in chunks (#2393) 2021-11-03 09:12:48 -06:00
Ahsan Virani 2a164cab6d
add anonymous ID everytime (#2398) 2021-11-03 10:42:54 +01:00
Jan Oberhauser 6fa8dd701e Fix issue with queue mode 2021-10-21 18:25:31 -05:00
Jan Oberhauser 0b56db5617 Remove not used code 2021-10-21 18:04:08 -05:00
Ahsan Virani d0403dd875
timeout process stop events (#2349) 2021-10-21 12:50:38 -05:00
Jan Oberhauser 2f7ad6968e Fix credential overwrite via environment variables 2021-10-20 20:49:07 -05:00
Ahsan Virani 421dd72224
Introduce telemetry (#2099)
* 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>

* Survey new options (#2300)

* split up options

* fix quotes

* remove unused import

* add user created workflow event (#2301)

* simplify env vars

* fix versionCli on FE

* update personalization env

* fix event User opened Credentials panel

* fix select modal 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

* improve telemetry process exit

* fix merge

* improve n8n stop events

Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com>
Co-authored-by: Mutasem <mutdmour@gmail.com>
Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2021-10-19 05:57:49 +02:00