Commit graph

453 commits

Author SHA1 Message Date
Csaba Tuncsik 42ba8841c4
fix(editor): Enable moving resources only if team projects are available by the license (#10271) 2024-08-01 17:33:10 +02:00
Mutasem Aldmour de015ff297
fix(editor): Fix updating/uninstalling community nodes (#10138)
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2024-07-23 11:25:56 +02:00
Elias Meire a036aa43dc
feat(editor): Connect adjacent nodes when a node is deleted in canvas v2 (no-changelog) (#10125) 2024-07-22 12:41:43 +02:00
Elias Meire 2e5c548452
feat(editor): Add duplicate and copy/paste to canvas v2 (no-changelog) (#10112) 2024-07-19 14:49:52 +02:00
Ricardo Espinoza ba27c987dc
refactor(editor): Migrate settings.store to composition API (no-changelog) (#10022)
Co-authored-by: Elias Meire <elias@meire.dev>
2024-07-19 08:35:36 -04:00
Csaba Tuncsik 5a9a2713b4
fix(editor): Remove "move" action from workflow and credential on community plan (#10057) 2024-07-18 15:34:39 +02:00
Alex Grozav 45affe5d89
feat(editor): Add ability to import workflows in new canvas (no-changelog) (#10051)
Co-authored-by: Elias Meire <elias@meire.dev>
2024-07-18 11:59:11 +03:00
Elias Meire 1d2b403644
fix(editor): Use selected input item for autocomplete (#10019) 2024-07-12 10:11:59 +02:00
Alex Grozav 1aae65dfdc
feat(editor): Add ability to add a node between two nodes in new canvas (no-changelog) (#10006) 2024-07-11 17:05:51 +03:00
Alex Grozav 57dfefd0f6
feat(editor): Add support for fallback nodes and new addNodes node render type in new canvas (no-changelog) (#10004) 2024-07-11 13:03:46 +03:00
Ricardo Espinoza f40f9b0287
refactor(editor): Migrate users.store to composition API (no-changelog) (#9960) 2024-07-08 10:21:03 -04:00
Ricardo Espinoza 4ff4534454
refactor(editor): Remove getters with arguments from communityNodes.store.ts (#9964) 2024-07-08 10:13:30 -04:00
Alex Grozav 8f970b5d37
feat(editor): Add execute workflow functionality and statuses to new canvas (no-changelog) (#9902)
Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
Co-authored-by: Oleg Ivaniv <me@olegivaniv.com>
2024-07-08 13:25:18 +03:00
कारतोफ्फेलस्क्रिप्ट™ 9e92a5774e
refactor(core): Remove Onboarding call prompts (no-changelog) (#9933) 2024-07-04 13:51:26 +02:00
कारतोफ्फेलस्क्रिप्ट™ 86018aa6e0
refactor(core): Remove Ask AI HTTP request feature (no-changelog) (#9931) 2024-07-04 12:09:45 +02:00
Ricardo Espinoza f64ca621e1
refactor(editor): Migrate ui.store to use composition API (no-changelog) (#9892) 2024-07-03 15:11:40 -04:00
कारतोफ्फेलस्क्रिप्ट™ 22990342df
refactor(core): Delete all collaboration related code (no-changelog) (#9929) 2024-07-03 18:46:24 +02:00
Iván Ovejero be9a247577
feat: Introduce debug info button (#9895) 2024-07-03 09:38:21 +02:00
Ricardo Espinoza 8debac755e
refactor(editor): Migrate tags.store to use composition API (no-changelog) (#9891) 2024-07-02 14:15:20 -04:00
Csaba Tuncsik f229577209
fix(editor): Fix frontend project roles (#9901) 2024-07-02 14:17:09 +02:00
Michael Kret af69c80bf5
feat(Merge Node): Overhaul, v3 (#9528)
Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
Co-authored-by: Shireen Missi <94372015+ShireenMissi@users.noreply.github.com>
2024-07-02 13:47:04 +03:00
Mutasem Aldmour 10f7d4b5b9
feat(editor): Remove Segment (#9878) 2024-06-28 10:52:36 +02:00
Alex Grozav 13d83f2037
fix(editor): Fix performance issues related to expressions and pinned data (#9882)
Co-authored-by: Mutasem Aldmour <mutasem@n8n.io>
2024-06-27 18:50:09 +02:00
Iván Ovejero 6cb3072a5d
fix(editor): Use pinned data to resolve expressions in unexecuted nodes (#9693)
Co-authored-by: Milorad Filipovic <milorad@n8n.io>
Co-authored-by: Mutasem Aldmour <mutasem@n8n.io>
2024-06-27 10:49:53 +02:00
कारतोफ्फेलस्क्रिप्ट™ 803895360c
refactor(editor): Delete unused code (no-changelog) (#9866) 2024-06-26 11:45:41 +02:00
Alex Grozav 31c456700a
feat(editor): Compute node position and connections when creating new nodes in new canvas (no-changelog) (#9830) 2024-06-25 12:11:44 +03:00
Csaba Tuncsik 1ba656ef4a
fix(editor): Properly update workflow info in main header (#9789) 2024-06-24 15:08:24 +02:00
Ricardo Espinoza 89b8d04fcd
refactor(editor): Migrate nodeTypes.store to use composition API (no-changelog) (#9795) 2024-06-19 12:34:38 -07:00
Ricardo Espinoza f6b8b8d956
refactor(editor): Migrate versions.store to use composition API (no-changelog) (#9798) 2024-06-19 08:34:58 -07:00
कारतोफ्फेलस्क्रिप्ट™ 65c5609ab5
feat(core): Use WebCrypto to generate all random numbers and strings (#9786) 2024-06-19 13:33:57 +02:00
Ricardo Espinoza 41e06be6fd
refactor(editor): Migrate n8nRootStore to use composition API (no-changelog) (#9770) 2024-06-18 13:15:12 -04:00
कारतोफ्फेलस्क्रिप्ट™ 876bcbb04c
fix(core): Make enterprise trial requests via the backend (no-changelog) (#9784) 2024-06-17 19:56:52 +02:00
Alex Grozav 12604fe1da
feat(editor): Add capability to open NDV and rename node (no-changelog) (#9712) 2024-06-17 15:46:55 +03:00
Ricardo Espinoza 60491d979d
refactor(editor): Migrate Credentials.store to use composition API (no-changelog) (#9767) 2024-06-17 04:54:38 -04:00
Ricardo Espinoza 4a1ff4878f
refactor(editor): Migrate CommunityNodes.store to use composition API (no-changelog) (#9766) 2024-06-17 04:53:25 -04:00
Danny Martini 2cf4364ee0
fix: When editing nodes only show the credentials in the dropdown that the user is allowed to use in that workflow (#9718) 2024-06-14 14:48:49 +02:00
Csaba Tuncsik bc35e8c33d
feat(editor): Add move resources option to workflows and credentials on (#9654) 2024-06-11 14:21:16 +02:00
Mutasem Aldmour 50bd5b9080
feat: Update NPS Value Survey (#9638)
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
Co-authored-by: Tomi Turtiainen <10324676+tomi@users.noreply.github.com>
2024-06-11 10:23:30 +02:00
Iván Ovejero 817167cf4b
refactor(core): Merge event bus controllers and remove dead code (no-changelog) (#9688) 2024-06-10 17:38:02 +02:00
Ricardo Espinoza 22bdb0568e
refactor(editor): Fix remaining FE type check errors (no-changelog) (#9607)
Co-authored-by: Alex Grozav <alex@grozav.com>
2024-06-10 16:23:06 +03:00
Iván Ovejero b0b4093072
refactor(editor): Stop expecting null execution status (no-changelog) (#9672) 2024-06-10 10:19:40 +02:00
Csaba Tuncsik ed963011c9
fix(editor): Move projects and rbac files (no-changelog) (#9651) 2024-06-06 15:30:17 +02:00
Csaba Tuncsik c92765dcdb
fix(editor): Filter credentials by project ID also for new workflow (#9615) 2024-06-05 15:58:15 +02:00
Tomi Turtiainen d6a046b8ad
refactor: Update typings of /me/settings and /users/:id/settings endpoints (no-changelog) (#9620) 2024-06-05 09:35:43 +03:00
Alex Grozav f6a466cd87
feat(editor): Add remove node and connections functionality to canvas v2 (#9602) 2024-06-04 15:36:27 +03:00
Milorad FIlipović 245c63f216
fix(editor): Skip disabled nodes when detecting workflow issues (#9610) 2024-06-04 13:26:57 +02:00
oleg 68420ca6be
refactor(editor): Fix NodeView/Canvas related TS errors (#9581)
Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
2024-06-03 16:33:20 +02:00
Tomi Turtiainen 09472fb9ee
feat(editor): Clean up lead enrichment experiment (no-changelog) (#9572) 2024-06-03 10:35:55 +03:00
Elias Meire e23420d89d
refactor(editor): Fix TypeScript issues in views (no-changelog) (#9573) 2024-05-31 15:52:00 +02:00
Tomi Turtiainen 93fb9b5393
fix(editor): Fix ts errors across the board (no-changelog) (#9561) 2024-05-31 10:48:09 +03:00
oleg be4f54de15
feat(editor): Node Creator AI nodes improvements (#9484)
Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
2024-05-30 16:53:33 +02:00
Alex Grozav 70948ec71b
feat(editor): Add initial code for NodeView and Canvas rewrite (no-changelog) (#9135)
Co-authored-by: Csaba Tuncsik <csaba.tuncsik@gmail.com>
2024-05-23 11:42:10 +03:00
Mutasem Aldmour b2c17034c2
refactor: Fix Enteprise type errors (#9442) 2024-05-17 13:58:26 +02:00
Csaba Tuncsik 596c472ecc
feat: RBAC (#8922)
Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
Co-authored-by: Val <68596159+valya@users.noreply.github.com>
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
Co-authored-by: Valya Bullions <valya@n8n.io>
Co-authored-by: Danny Martini <danny@n8n.io>
Co-authored-by: Danny Martini <despair.blue@gmail.com>
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
Co-authored-by: Omar Ajoue <krynble@gmail.com>
Co-authored-by: oleg <me@olegivaniv.com>
Co-authored-by: Michael Kret <michael.k@radency.com>
Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com>
Co-authored-by: Elias Meire <elias@meire.dev>
Co-authored-by: Giulio Andreini <andreini@netseven.it>
Co-authored-by: Giulio Andreini <g.andreini@gmail.com>
Co-authored-by: Ayato Hayashi <go12limchangyong@gmail.com>
2024-05-17 10:53:15 +02:00
Elias Meire dc5994b185
feat(editor): Add item selector to expression output (#9281) 2024-05-09 14:45:31 +02:00
Milorad FIlipović cda062bde6
feat(editor): Remove AI Error Debugging (#9337) 2024-05-08 14:13:47 +02:00
Alex Grozav f64a41d617
refactor(editor): Migrate workflows store to setup function with composition API (no-changelog) (#9270) 2024-05-08 14:35:29 +03:00
Milorad FIlipović 491c6ec546
feat(editor): Implement AI Assistant chat UI (#9300) 2024-05-07 15:43:19 +02:00
Alex Grozav ff0955c995
refactor(editor): Migrate pushConnection mixin to composable and remove collaboration store side effects (no-changelog) (#9249) 2024-05-03 10:26:15 +03:00
Alex Grozav cd9bc44bdd
feat: Add Ask AI to HTTP Request Node (#8917) 2024-05-02 13:52:15 +03:00
Iván Ovejero 11a3572144
fix(editor): Fix and report settings being null in workflow payloads (no-changelog) (#9227) 2024-04-26 15:30:51 +02:00
Iván Ovejero fec04d5f79
fix(editor): Throw expression error on attempting to set variables at runtime (#9229) 2024-04-26 14:03:27 +02:00
Alex Grozav a3eea3ac5e
feat(editor): Refactor and unify executions views (no-changelog) (#8538) 2024-04-19 07:50:18 +02:00
Michael Kret 3dd70a17e2
fix(editor): Drop outgoing connections on order changed event for nodes with dynamic outputs (#9055) 2024-04-09 04:46:52 +03:00
कारतोफ्फेलस्क्रिप्ट™ 072c3db97d
refactor(core): Rename push sessionId to pushRef (#8905) 2024-04-03 13:43:14 +02:00
Milorad FIlipović 4619dec285 feat(editor): Update templates links (#9024) 2024-04-03 12:15:08 +02:00
Elias Meire 160dfd383d
feat(editor): Show tip when user can type dot after an expression (#8931) 2024-03-26 15:23:30 +01:00
कारतोफ्फेलस्क्रिप्ट™ 372d5c7d01
ci: Upgrade eslint, prettier, typescript, and some other dev tooling (no-changelog) (#8895)
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
2024-03-26 14:22:57 +01:00
Milorad FIlipović 666867a236
feat: Fetch user cloud role and pass it on in website links (#8942) 2024-03-22 11:33:39 +01:00
oleg 5f53d76e39
fix(editor): Fix opening of chat window when executing a child node (#8789)
Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
Co-authored-by: Michael Kret <michael.k@radency.com>
2024-03-21 09:23:15 +01:00
Elias Meire 5e84c2ab89
feat(editor): Add missing extension methods for expressions (#8845) 2024-03-20 12:05:54 +01:00
कारतोफ्फेलस्क्रिप्ट™ 669bd830e9
feat(editor): Block the frontend when trying to access n8n from another host over http (#8906) 2024-03-18 18:34:41 +01:00
Csaba Tuncsik 6955e8991c
fix(editor): Remove isOwner from IUser interface (#8888) 2024-03-18 11:39:15 +01:00
Alex Grozav 948c383999
feat: Add AI Error Debugging using OpenAI (#8805) 2024-03-13 16:48:00 +02:00
Elias Meire e78cc2d8d2
feat(editor): Help users discover expressions when using drag n drop (#8869) 2024-03-13 12:57:08 +01:00
Omar Ajoue 261b9c73d6
fix: Display readable error when manual executions contains large payload (#8834) 2024-03-08 12:23:27 +00:00
Giulio Andreini 5301323906
feat(editor): Improve errors in output panel (#8644)
Co-authored-by: Michael Kret <michael.k@radency.com>
2024-03-07 18:08:01 +02:00
Elias Meire f9a99ec029
feat: No expression error when node hasn’t executed (#8448)
Co-authored-by: Giulio Andreini <andreini@netseven.it>
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2024-02-27 10:29:16 +01:00
Milorad FIlipović 27f3166272
fix: Send user id when setting up an account (#8639) 2024-02-27 09:21:16 +01:00
Alex Grozav c0be43bdbe
fix(editor): Fix various typecheck issues (no-changelog) (#8739) 2024-02-26 16:05:12 +02:00
Alex Grozav 4b01335aa4
feat: Add env variables to support exposing /workflows/demo route and /nodes.json route (#8506)
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2024-02-23 18:20:12 +02:00
oleg 246f8cfcc3
feat(editor): Retrieve previous chat message on arrow-up (#8696)
Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
2024-02-22 09:32:34 +01:00
कारतोफ्फेलस्क्रिप्ट™ 059d281fd1
feat(core): Move execution permission checks earlier in the lifecycle (#8677) 2024-02-21 14:47:02 +01:00
Milorad FIlipović a573146135
fix(editor): Send protocol and n8n version in templates destination parameter, stop redirecting template preview page to website (#8691) 2024-02-21 13:09:16 +01:00
कारतोफ्फेलस्क्रिप्ट™ 8c665e4d20
refactor(editor): Re-organize n8n logo files (no-changelog) (#8483) 2024-02-16 10:42:32 +01:00
Milorad FIlipović 79b09fdf84
feat(editor): Use website as the main templates repository (#8591) 2024-02-09 13:47:43 +01:00
Elias Meire 2799de491b
feat: Add assignment component with drag and drop to Set node (#8283)
Co-authored-by: Giulio Andreini <andreini@netseven.it>
2024-02-06 18:34:34 +01:00
कारतोफ्फेलस्क्रिप्ट™ d6deceacde
refactor(core): Remove roleId indirection (no-changelog) (#8413) 2024-01-24 13:38:57 +01:00
Iván Ovejero 49b52c4f1d
refactor(core): Bring active executions into executions controller (no-changelog) (#8371) 2024-01-23 09:48:50 +01:00
Tomi Turtiainen e606e841ee
fix(editor): Use web native <a> element in nav menus (#8385) 2024-01-19 12:52:39 +02:00
Tomi Turtiainen 1aa35b190a
fix: Set '@typescript-eslint/return-await' rule to 'always' for FE (no-changelog) (#8373) 2024-01-18 11:28:01 +02:00
Ricardo Espinoza 4277e92ec0
feat(editor): Add new /templates/search endpoint (#8227)
Updating n8n front-end to use the new search endpoint powered by TypeSense.

Endpoint is deployed on staging API so, in order to test it, use this env var:
```export N8N_TEMPLATES_HOST=https://api-staging.n8n.io/api```

**NOTE**: This PR should not be merged until [backend changes](https://github.com/n8n-io/creators-site/pull/118) are merged and released.

## Related tickets and issues
https://linear.app/n8n/issue/ADO-1555/update-in-app-search-to-work-with-the-new-back-end


## Review / Merge checklist
- [x] PR title and summary are descriptive. **Remember, the title automatically goes into the changelog. Use `(no-changelog)` otherwise.** ([conventions](https://github.com/n8n-io/n8n/blob/master/.github/pull_request_title_conventions.md))
- [ ] Tests included.
   > A bug is not considered fixed, unless a test is added to prevent it from happening again.
   > A feature is not complete without tests.
2024-01-15 16:19:24 -05:00
Tomi Turtiainen 135553bd6b
feat: Redirect users without feature flag from template cred setup (no-changelog) (#8302) 2024-01-12 12:10:39 +02:00
Iván Ovejero 0dabe5c74e
fix: Fix user reinvites on FE and BE (#8261) 2024-01-09 13:52:34 +01:00
Alex Grozav 8c8caac4e8
feat(editor): Migrate debounce mixin to useDebounce composable (no-changelog) (#8244) 2024-01-08 14:00:49 +02:00
Tomi Turtiainen 7899f7aca5
fix: Adjust telemetry from canvas (no-changelog) (#8252) 2024-01-08 13:56:16 +02:00
Tomi Turtiainen 3cf6704dbb
feat: Enable cred setup for workflows created from templates (no-changelog) (#8240)
## Summary

Enable users to open credential setup for workflows that have been
created from templates if they skip it.

Next steps (will be their own PRs):
- Add telemetry events
- Add e2e test
- Hide the button when user sets up all the credentials
- Change the feature flag to a new one

## Related tickets and issues

https://linear.app/n8n/issue/ADO-1637/feature-support-template-credential-setup-for-http-request-nodes-that
2024-01-05 18:07:57 +02:00
oleg 184ed8e17d
refactor: Migrate genericHelpers mixin to composable (#8220)
## Summary
- Moved out canvas loading handling to canvas store
- Tag editable routes via meta to remove router dependency from generic
helpers
- Replace all occurrences of `genericHelpers` mixin with composable and
audit usage
- Moved out `isRedirectSafe` and `getRedirectQueryParameter` out of
genericHelpers to remove dependency on router

Removing the router dependency is important, because `useRouter` and
`useRoute` compostables are only available if called from component
instance. So if composable is nested within another composable, we
wouldn't be able to use these. In this case we'd always need to inject
the router and pass it through several composables. That's why I moved
the `readonly` logic to router meta and `isRedirectSafe` and
`getRedirectQueryParameter` out as they were only used in a single
component.

---------

Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
2024-01-05 12:23:28 +01:00
Tomi Turtiainen 6e78d2346e
fix: Adjust 'use template' feature telemetry (no-changelog) (#8232)
- Add extra params to 'User closed cred setup' event
- Fire 'User closed cred setup' only when template has creds
- Skip cred setup page if template has no creds required
- Fire 'User inserted workflow template' also in cred setup
2024-01-05 11:52:10 +02:00
Ricardo Espinoza 8f22a265d6
fix(editor): Only load suggested templates for owners (#8228)
## Summary
Title is self explanatory
2024-01-04 10:19:25 -05:00
Alex Grozav b50d8058cf
feat(editor): Migrate pinData mixin to usePinnedData composable (no-changelog) (#8207)
## Summary
Required as part of NodeView refactoring:
- Migrates `pinData` mixin to `usePinnedData` composable.
- Adds `useActiveNode` and `useNodeType` composables 

## Related tickets and issues
https://linear.app/n8n/issue/N8N-6355/pindata

## Review / Merge checklist
- [x] PR title and summary are descriptive. **Remember, the title
automatically goes into the changelog. Use `(no-changelog)` otherwise.**
([conventions](https://github.com/n8n-io/n8n/blob/master/.github/pull_request_title_conventions.md))
- [x] [Docs updated](https://github.com/n8n-io/n8n-docs) or follow-up
ticket created.
- [x] Tests included.
> A bug is not considered fixed, unless a test is added to prevent it
from happening again.
   > A feature is not complete without tests.
2024-01-04 11:22:56 +02:00
Ricardo Espinoza 8a3c87f69c
fix(editor): Items count display in running workflow (#8148)
## Summary
> Describe what the PR does and how to test. Photos and videos are
recommended.

Every time the `MainHeader` component is created, we register a new
handler for the "push" messages. Unfortunately this becomes an issue if
you go multiple times to a page that renders the `MainHeader`, e.g
`/workflow/:id`, without refreshing the page; because all handlers will
be called, causing behavior duplication.

I added the possibility of passing an ID, and made impossible to have
multiple handlers with the same ID However, it does not seems to be
needed to support an array of handlers in the pushConnection store. If
that is the case:

1. We might want to have only one handler for the push connections at
all times, which would be a much simpler approach.
2. Register the handler on app.mount instead.

The issue seems to have been introduced
[here](https://github.com/n8n-io/n8n/pull/7763/files#diff-f5dae80a64b9951bb6691f1b9d439423cf84fa0cc9601b3f2c00904f3135e8deR48)

Before the change:

https://www.loom.com/share/85cf8ef896254d848a13a6c6438daa47

With the change:

https://www.loom.com/share/f5c4ffac421d46cc8e389364e1c357d3

## Related tickets and issues

https://linear.app/n8n/issue/ADO-1596/bug-items-count-display-in-running-workflow


## Review / Merge checklist
- [x] PR title and summary are descriptive. **Remember, the title
automatically goes into the changelog. Use `(no-changelog)` otherwise.**
([conventions](https://github.com/n8n-io/n8n/blob/master/.github/pull_request_title_conventions.md))
- [ ] [Docs updated](https://github.com/n8n-io/n8n-docs) or follow-up
ticket created.
- [ ] Tests included.
> A bug is not considered fixed, unless a test is added to prevent it
from happening again.
   > A feature is not complete without tests.
2024-01-03 11:31:33 -05:00
कारतोफ्फेलस्क्रिप्ट™ 5c078f1b3d
fix(editor): Fix UI urls when hosted behind a path prefix (#8198)
fixes #8061
2024-01-03 11:37:01 +01:00
कारतोफ्फेलस्क्रिप्ट™ cfe9525dd4
fix(core): Better input validation for the changeRole endpoint (#8189)
also refactored the code to
1. stop passing around `scope === 'global'`, since this code can be used
only for changing globalRole.
2. leak less details when input validation fails.

## Review / Merge checklist
- [x] PR title and summary are descriptive
- [x] Tests included
2024-01-03 09:33:35 +01:00
Alex Grozav 405e26757e
fix(editor): Prevent storing pairedItem data inside of pinData (#8173)
## Summary
When pinning data after an execution, the pairedItem data gets stored in
the pinData field. This creates problems during executions.

Before:
<img width="1141" alt="image"
src="https://github.com/n8n-io/n8n/assets/6179477/e555d00a-6ff2-4601-8072-3194a0c5e1c2">

After: 
<img width="1140" alt="image"
src="https://github.com/n8n-io/n8n/assets/6179477/d97e9d90-28f5-4dcc-b63e-62497c646994">


## Related tickets and issues

https://linear.app/n8n/issue/PAY-812/wrong-error-shown-when-paireditem-fails-because-of-incorrect-pinned


## Review / Merge checklist
- [x] PR title and summary are descriptive. **Remember, the title
automatically goes into the changelog. Use `(no-changelog)` otherwise.**
([conventions](https://github.com/n8n-io/n8n/blob/master/.github/pull_request_title_conventions.md))
- [x] [Docs updated](https://github.com/n8n-io/n8n-docs) or follow-up
ticket created.
- [x] Tests included.
> A bug is not considered fixed, unless a test is added to prevent it
from happening again.
   > A feature is not complete without tests.
2023-12-28 12:59:01 +02:00
कारतोफ्फेलस्क्रिप्ट™ 68cff4c59e
refactor(editor): Improve linting for component and prop names (no-changelog) (#8169) 2023-12-28 09:49:58 +01:00
Milorad FIlipović 517b050d0a
feat(editor): Add template Id to workflow metadata (#8088)
## Summary
Adding a link between the workflow and the template it originated from
by saving `templateId` in the workflow metadata

## Related tickets and issues
ADO-1537

## Review / Merge checklist
- [x] PR title and summary are descriptive. **Remember, the title
automatically goes into the changelog. Use `(no-changelog)` otherwise.**
([conventions](https://github.com/n8n-io/n8n/blob/master/.github/pull_request_title_conventions.md))
- [ ] [Docs updated](https://github.com/n8n-io/n8n-docs) or follow-up
ticket created.
- [x] Tests included.
> A bug is not considered fixed, unless a test is added to prevent it
from happening again.
   > A feature is not complete without tests.
2023-12-22 15:07:05 +01:00
कारतोफ्फेलस्क्रिप्ट™ 021add0f39
refactor(core): Move active workflows endpoints to a decorated controller class (no-changelog) (#8101)
This is a continuation of migrating all rest endpoints to decorated controller classes
2023-12-22 11:28:42 +01:00
Milorad FIlipović 39e45d8b92
fix(editor): Prevent canvas undo/redo when NDV is open (#8118)
## Summary
Preventing canvas undo/redo while NDV or any modal is open. We already
had a NDV open check in place but looks like it was broken by unreactive
ref inside `useHistoryHelper` composable.
This PR fixes this by using store getter directly inside the helper
method and adds modal open check.

## Related tickets and issues
Fixes ADO-657

## Review / Merge checklist
- [ ] PR title and summary are descriptive. **Remember, the title
automatically goes into the changelog. Use `(no-changelog)` otherwise.**
([conventions](https://github.com/n8n-io/n8n/blob/master/.github/pull_request_title_conventions.md))
- [ ] [Docs updated](https://github.com/n8n-io/n8n-docs) or follow-up
ticket created.
- [ ] Tests included.
> A bug is not considered fixed, unless a test is added to prevent it
from happening again.
   > A feature is not complete without tests.
2023-12-22 08:42:53 +01:00
Iván Ovejero edfa78414d
feat(editor): Finalize workers view (#8052)
https://linear.app/n8n/issue/PAY-1065
2023-12-20 17:49:14 +01:00
Alex Grozav fcff34c401
fix(editor): Move versions check to init function and refactor store (no-changelog) (#8067) 2023-12-20 12:49:40 +02:00
Mutasem Aldmour 4b86926752
fix(editor): Fix copy/paste issue when switch node is in workflow (#8103)
## Summary
Fix bug where copy/pasting a node breaks the view. Issue seems to be
that copied workflow does not have Switch node when workflow is
rerendering..

<img width="1942" alt="Screenshot 2023-12-19 at 18 16 23"
src="https://github.com/n8n-io/n8n/assets/4711238/ad53b8ae-3693-4733-8f6b-7bc9e7b9d216">




## Related tickets and issues
[Linear ticket
ADO-1504](https://linear.app/n8n/issue/ADO-1504/unwanted-nodes-connections-after-copypaste-of-n8n-form-trigger)


## Review / Merge checklist
- [X] PR title and summary are descriptive. **Remember, the title
automatically goes into the changelog. Use `(no-changelog)` otherwise.**
([conventions](https://github.com/n8n-io/n8n/blob/master/.github/pull_request_title_conventions.md))
- [ ] [Docs updated](https://github.com/n8n-io/n8n-docs) or follow-up
ticket created.
- [x] Tests included.
> A bug is not considered fixed, unless a test is added to prevent it
from happening again.
   > A feature is not complete without tests.
2023-12-20 10:13:59 +01:00
Milorad FIlipović 36a923cf7b
feat(editor): Add lead enrichment suggestions to workflow list (#8042)
## Summary
We want to show lead enrichment template suggestions to cloud users that
agreed to this. This PR introduces the front-end part of this feature
- Handoff document
- Figma Hi-fi
- [How to
test](https://linear.app/n8n/issue/ADO-1549/[n8n-fe]-update-workflows-list-page-to-show-fake-door-templates#comment-b6644c99)

Tests are being worked on in a separate PR

## Related tickets and issues
Fixes ADO-1546
Fixes ADO-1549
Fixes ADO-1604

## Review / Merge checklist
- [ ] PR title and summary are descriptive. **Remember, the title
automatically goes into the changelog. Use `(no-changelog)` otherwise.**
([conventions](https://github.com/n8n-io/n8n/blob/master/.github/pull_request_title_conventions.md))
- [ ] [Docs updated](https://github.com/n8n-io/n8n-docs) or follow-up
ticket created.
- [ ] Tests included.
> A bug is not considered fixed, unless a test is added to prevent it
from happening again.
   > A feature is not complete without tests.

---------

Co-authored-by: ricardo <ricardoespinoza105@gmail.com>
2023-12-19 09:10:03 -05:00
Alex Grozav 5ed4d19059
feat: Add opt-in enterprise license trial checkbox (no-changelog) (#7826)
<img width="518" alt="image"
src="https://github.com/n8n-io/n8n/assets/6179477/6422a057-de94-49dc-90fd-7381b5642902">

---------

Co-authored-by: Omar Ajoue <krynble@gmail.com>
2023-12-19 14:58:30 +02:00
Csaba Tuncsik 329e5bf9ee
fix(editor): Add back credential use permission (#8023)
## Summary
A shared credential is not selectable in NDV

Aim

If a credential is shared with a user they should be able to select it
in node details view
2023-12-14 13:36:36 +01:00
oleg b780436a6b
perf(editor): Improve canvas rendering performance (#8022)
## Summary
- Refactor usage of `setSuspendDrawing`, removing it from loops and only
calling it after batch operations are done
- Batch adding of nodes to improve copy/paste and workflow load
performance
- Cache i18n calls
- Debounce connections dragging handler if there are more than 20 nodes


## Related tickets and issues
> Include links to **Linear ticket** or Github issue or Community forum
post. Important in order to close *automatically* and provide context to
reviewers.
- https://community.n8n.io/t/slow-ui-in-big-scenarios/33830/8

---------

Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
2023-12-14 12:01:00 +01:00
Michael Kret 953a58f18b
feat(n8n Form Trigger Node): Improvements (#7571)
Github issue / Community forum post (link here to close automatically):

---------

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
Co-authored-by: Giulio Andreini <andreini@netseven.it>
2023-12-13 17:00:51 +02:00
Elias Meire 8a5343401d
feat(editor): Filter component + implement in If node (#7490)
New Filter component + implementation in If node (v2)

<img width="3283" alt="image"
src="https://github.com/n8n-io/n8n/assets/8850410/35c379ef-4b62-4d06-82e7-673d4edcd652">

---------

Co-authored-by: Giulio Andreini <andreini@netseven.it>
Co-authored-by: Michael Kret <michael.k@radency.com>
2023-12-13 14:45:22 +01:00
Tomi Turtiainen 08ee307209
feat(editor): Show template credential setup based on feature flag (#7989)
Replace the local storage based feature flag with posthog feature flag.

Also:
- Fix bunch of eslint warnings in posthog store
2023-12-11 20:21:10 +02:00
Csaba Tuncsik dbd62a4992
feat: Introduce advanced permissions (#7844)
This PR introduces the possibility of inviting new users with an `admin`
role and changing the role of already invited users.
Also using scoped permission checks where applicable instead of using
user role checks.

---------

Co-authored-by: Val <68596159+valya@users.noreply.github.com>
Co-authored-by: Alex Grozav <alex@grozav.com>
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
2023-12-08 12:52:25 +01:00
Csaba Tuncsik 132d691cbf
fix(editor): Replace isInstanceOwner checks with scopes where applicable (#7858)
Co-authored-by: Alex Grozav <alex@grozav.com>
2023-12-04 10:02:54 +01:00
Tomi Turtiainen 627ddb91fb
feat(editor): Open template credential setup from collection (#7882)
Open the template credential setup when using a template from the
collection view.

NOTE! This feature is still behind a feature flag. To test, set:

```js
localStorage.setItem('template-credentials-setup', 'true')
```


https://github.com/n8n-io/n8n/assets/10324676/46ccec7c-5a44-429e-99ad-1c10640e99e5
2023-11-30 14:09:12 +02:00
Milorad FIlipović 8b99384367
fix(editor): Fix cloud plan data loading on instance (#7841)
Moving cloud hooks and store initialization logic after users are
authenticated. This will ensure user local account is available when
their cloud plan data is being fetched.
This PR also adds the following error handling improvements:
- Added error handling to the same initialization logic
- Fixed empty `catch` clauses inside the cloud store which caused it to
silently fail and complicated debugging of this bug
2023-11-29 10:51:15 +01:00
Alex Grozav 72852a60eb
feat(editor): Replace middleware for Role checks with Scope checks (#7847) 2023-11-29 10:35:40 +02:00
कारतोफ्फेलस्क्रिप्ट™ 117962d473
feat(core): Update LLM applications building support (no-changelog) (#7710)
extracted out of #7336

---------

Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
Co-authored-by: Oleg Ivaniv <me@olegivaniv.com>
Co-authored-by: Alex Grozav <alex@grozav.com>
2023-11-28 16:47:28 +01:00
Tomi Turtiainen 4074107511
fix(editor): Fix credential icon for old node type version (#7843)
If a credential was for a node's older version, its icon was not shown.
2023-11-28 15:14:22 +02:00
कारतोफ्फेलस्क्रिप्ट™ 753cbc1e96
refactor(editor): Delete some barrel files and reduce circular dependencies (no-changelog) (#7838) 2023-11-28 12:15:08 +01:00
Csaba Tuncsik 3ab3ec9da8
fix(editor): Allow owners and admins to share workflows and credentials they don't own (#7833) 2023-11-28 11:44:55 +01:00
Tomi Turtiainen aae45b043b
feat: Ado 1296 spike credential setup in templates (#7786)
- Add a 'Setup template credentials' view to setup the credentials of a
template before it is created
2023-11-27 16:30:28 +02:00
Csaba Tuncsik 137e23853f
feat: Add user role select to users list settings page (#7796)
![CleanShot 2023-11-27 at 07 20
58](https://github.com/n8n-io/n8n/assets/5410822/40be0505-32ee-48a7-923e-ba6b4dbce670)
2023-11-27 13:38:03 +01:00
कारतोफ्फेलस्क्रिप्ट™ 2807ddcd0d
fix(editor): Setup push connection in NodeView (no-changelog) (#7821) 2023-11-27 12:48:48 +01:00
Csaba Tuncsik 152883eed1
build: Upgrade lint related packages (#7790) 2023-11-27 09:11:52 +01:00
Elias Meire da851986f6
feat(editor): Add node name and version to NDV node settings (#7731)
<img width="580" alt="image"
src="https://github.com/n8n-io/n8n/assets/8850410/85ac1c6e-9116-436a-a2ed-8d0ac162a287">

<img width="580" alt="image"
src="https://github.com/n8n-io/n8n/assets/8850410/08b37377-cef5-4f80-80c0-addfdd37f728">

---------

Co-authored-by: Giulio Andreini <andreini@netseven.it>
2023-11-23 18:28:07 +01:00
Alex Grozav 67a88914f2
feat(editor): Add routing middleware, permission checks, RBAC store, RBAC component (#7702)
Github issue / Community forum post (link here to close automatically):

---------

Co-authored-by: Csaba Tuncsik <csaba@n8n.io>
2023-11-23 13:22:47 +02:00
Csaba Tuncsik e128b23a2b
build: Upgrade to Vite 5 (#7784) 2023-11-23 11:55:02 +01:00
Milorad FIlipović 77bc8ecd4b
feat(editor): Show avatars for users currently working on the same workflow (#7763)
This PR introduces the following changes:
- New Vue stores: `collaborationStore` and `pushConnectionStore`
- Front-end push connection handling overhaul: Keep only a singe
connection open and handle it from the new store
- Add user avatars in the editor header when there are multiple users
working on the same workflow
- Sending a heartbeat event to back-end service periodically to confirm
user is still active

- Back-end overhauls (authored by @tomi):
  - Implementing a cleanup procedure that removes inactive users
  - Refactoring collaboration service current implementation

---------

Co-authored-by: Tomi Turtiainen <10324676+tomi@users.noreply.github.com>
2023-11-23 10:14:34 +01:00
Csaba Tuncsik 50f568560f
perf: Make frontend linting faster (no-changelog) (#7717)
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-11-22 15:01:22 +01:00
Elias Meire 8d12c1ad8d
feat(editor): Add node context menu (#7620)
![image](https://github.com/n8n-io/n8n/assets/8850410/5a601fae-cb8e-41bb-beca-ac9ab7065b75)
2023-11-20 14:37:12 +01:00
Iván Ovejero 4c4082503c
feat(core): Coordinate manual workflow activation and deactivation in multi-main scenario (#7643)
Followup to #7566 | Story: https://linear.app/n8n/issue/PAY-926

### Manual workflow activation and deactivation

In a multi-main scenario, if the user manually activates or deactivates
a workflow, the process (whether leader or follower) that handles the
PATCH request and updates its internal state should send a message into
the command channel, so that all other main processes update their
internal state accordingly:

- Add to `ActiveWorkflows` if activating
- Remove from `ActiveWorkflows` if deactivating
- Remove and re-add to `ActiveWorkflows` if the update did not change
activation status.

After updating their internal state, if activating or deactivating, the
recipient main processes should push a message to all connected
frontends so that these can update their stores and so reflect the value
in the UI.

### Workflow activation errors

On failure to activate a workflow, the main instance should record the
error in Redis - main instances should always pull activation errors
from Redis in a multi-main scenario.

### Leadership change

On leadership change...

- The old leader should stop pruning and the new leader should start
pruning.
- The old leader should remove trigger- and poller-based workflows and
the new leader should add them.
2023-11-17 15:58:50 +01:00
कारतोफ्फेलस्क्रिप्ट™ 2d039010db
fix(editor): Fix Admin panel icon in the sidebar for cloud deployments (no-changelog) (#7738)
Co-authored-by: ricardo <ricardoespinoza105@gmail.com>
Co-authored-by: Mutasem Aldmour <mutasem@n8n.io>
2023-11-17 14:44:47 +01:00
कारतोफ्फेलस्क्रिप्ट™ fc60e9a809
refactor(core): Convert dynamic node-parameter routes to a decorated controller (no-changelog) (#7284)
1. Reduce a lot of code duplication
2. Move more endpoints out of `Server.ts`
3. Move all query-param parsing and validation into a middleware to make
the route handlers simpler.
2023-11-17 12:03:05 +01:00
Ricardo Espinoza 8e0ae3cf8c
refactor: Extract Invitation routes to InvitationController (no-changelog) (#7726)
This PR:

- Creates `InvitationController`
- Moves `POST /users` to `POST /invitations` and move related test to
`invitations.api.tests`
- Moves `POST /users/:id` to `POST /invitations/:id/accept` and move
related test to `invitations.api.tests`
- Adjusts FE to use new endpoints
- Moves all the invitation logic to the `UserService`

---------

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-11-16 12:39:43 -05:00
Ricardo Espinoza 4020c14d59
refactor: Use POST /users to re-invite users (no-changelog) (#7714) 2023-11-15 06:40:57 -05:00
Alex Grozav a262c450f7
feat: Rewrite Front End cloud and posthog hooks using TypeScript (no-changelog) (#5491) 2023-11-13 15:10:42 +02:00
Elias Meire 14035e1244
feat(editor): Add HTTP request nodes for credentials without a node (#7157)
Github issue / Community forum post (link here to close automatically):

---------

Co-authored-by: Giulio Andreini <g.andreini@gmail.com>
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-11-13 12:11:16 +01:00
Michael Auerswald cbc690907f
feat(editor): Adds a EE view to show worker details and job status (#7600)
This change expands on the command channel communication introduced
lately between the main instance(s) and the workers. The frontend gets a
new menu entry "Workers" which will, when opened, trigger a regular call
to getStatus from the workers. The workers then respond via their
response channel to the backend, which then pushes the status to the
frontend.
This introduces the use of ChartJS for metrics.
This feature is still in MVP state and thus disabled by default for the
moment.
2023-11-10 23:48:31 +01:00
Mutasem Aldmour 151e60f829
fix(editor): Fix local storage flags defaulting to undefined string (#7603)
useStorage takes the default value `undefined` and sets it in local
storage.. also returns "undefined" as string which breaks onboarding
flows

Github issue / Community forum post (link here to close automatically):
2023-11-07 10:06:08 +01:00
Alex Grozav 24dfc95974
feat(editor): Improve performance by importing routes dynamically and add route guards (no-changelog) (#7567)
**Before:**
<img width="657" alt="image"
src="https://github.com/n8n-io/n8n/assets/6179477/0bcced2b-9d3a-43b3-80d7-3c72619941fa">


**After:**
<img width="660" alt="image"
src="https://github.com/n8n-io/n8n/assets/6179477/e74e0bbf-bf33-49b4-ae11-65f640405ac8">
2023-11-03 16:22:37 +02:00
Mutasem Aldmour 2854a0cf46
fix(editor): Allow overriding theme from query params (#7591)
Allow overriding theme through query params.. to be able to override it
from preview iframe in webcomponent

Github issue / Community forum post (link here to close automatically):
2023-11-02 16:06:33 +01:00
Alex Grozav 721a36637c
feat(editor): Handle pin data edge cases and unify validation (no-changelog) (#6685)
Github issue / Community forum post (link here to close automatically):
2023-11-02 10:43:02 +02:00