Commit Graph

271 Commits

Author SHA1 Message Date
कारतोफ्फेलस्क्रिप्ट™
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