Commit Graph

447 Commits

Author SHA1 Message Date
Csaba Tuncsik
1ec85b7d57 test(editor): Test personal settings view (#6119) 2023-04-27 17:26:20 +02:00
Csaba Tuncsik
3e9ecd9397 fix(editor): Disable changing of email and pw when SAML login enabled (#6104) 2023-04-27 12:48:53 +02:00
Csaba Tuncsik
0c9ce3a2ec feat(editor): Add version controls settings (WIP) (#6036)
* feat(editor): Version control paywall (WIP)

* fix(editor): remove version control docs link

* feat(editor): Adding version control settings (WIP)

* feat(editor): Adding version control settings (WIP)

* fix(editor): use rest api root path in version control

* fix(editor): adding preferences

* fix(editor): adding preferences

* fix(editor): change store action name
2023-04-26 17:52:53 +02:00
OlegIvaniv
390841bbf0 feat(editor): Enhance Node Creator actions view (#5954)
* WIP

* WIP

* Extract actions into composable

* WIP: Preserve categories when searching

* WIP

* WIP: Tweak styles

* WIP: Refactor node creator

* WIP: Finish Node Creator node view/subcategories refactor

* WIP: Finished actions refactor

* Cleanup & Lintfix

* WIP: Improve memory managment

* Fix interactions

* WIP

* WIP: Keyboard navigation

* Improve keyboard navigation and memory managment

* Finished view refactor

* FIx custom api calls and activation callouts

* Fix actions tracking and cleanup

* Product review fixes

* Telemetry fixes

* Fix node creator e2es

* Set action name font size and actionsEmpty font weight

* Fix failing credentials spec

* Make sure to select first action item when switching from nodes panel to actions panel

* Add actions panel e2e tests

* Cleanup

* Fix actions generation and cleanup

* Add correct Learn More link and adjust displaying of trigger icon

* Change trigger icon condition to use nodeType group

* Cleanup nodeTypesUtils and snapshots and lintfixes

* Lint fixes

* Refine logic to show trigger icon in node creator

* Add unit tests & clean up

* Add `003_auto_insert_action` experiment, hide empty sections for opposite root view

* Lintfix

* Do not show empty category tooltips and only show activation callout in triger root view

* Fix no-results node creator view

* Spacings tweaks and root rendering logic adjustment

* Add unit tests

* Lint and e2e fixes

* Revert CLI changes, fix unit tests

* Remove useless comments

* Sync master, replace $externalHooks mixin

* Lint fix

* Focus first action when panel slides in, not category

* Address PR comments

* Lint fix

* Remove `setAddedNodeActionParameters` optional track param

* Further simplify setAddedNodeActionParameters

* Fix pnpn lock file

* Fix types imports

* Fix 13-pinning spec
2023-04-26 09:18:10 +02:00
Iván Ovejero
88724bb056 ci: Enforce no unused imports (no-changelog) (#6073) 2023-04-25 11:47:03 +02:00
Csaba Tuncsik
8a3b3e53e1 fix(editor): Update LDAP and Log streaming paywalls (#6069) 2023-04-24 15:37:36 +02:00
कारतोफ्फेलस्क्रिप्ट™
308a94311f refactor: Async functions don't need to explicitly return promises (no-changelog) (#6041) 2023-04-24 13:17:08 +02:00
Iván Ovejero
57aab63c10 refactor: Integrate consistent-type-imports in FE packages (no-changelog) (#6060)
* 👕 Move `consistent-type-imports` to top level

* 👕 Apply lintfixes

* 👕 Apply more lintfixes

* 👕 More lintfixes

* 👕 More lintfixes
2023-04-24 12:18:24 +02:00
Milorad FIlipović
59db96771e refactor(editor): Remove the restApi mixin (#6065)
*  Removing the `makeApiRequest` method from `restAPI` mixin, removing the mixing from the App component
*  Removing `restApi` mixin
* 👕 Fixing lint errors
* ✔️ Fixing execution list unit tests and merge bug in workflowRun mixin
* 🐛 Added missing useStore
2023-04-24 10:50:49 +02:00
Alex Grozav
9c94050deb feat: Replace Vue.extend with defineComponent in editor-ui (no-changelog) (#6033)
* refactor: replace Vue.extend with defineComponent in editor-ui

* fix: change $externalHooks extractions from mixins

* fix: refactor externalHooks mixin
2023-04-21 18:51:08 +03:00
Alex Grozav
54f99a7d0d feat: Replace this.$refs.refName as Vue with InstanceType<T> (no-changelog) (#6050)
* refactor: use InstanceType<T> for all this.$refs types

* refactor: update refs type in N8nSelect

* fix: remove inputRef non-null assertion

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

* fix: remove non-null assertion

---------

Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com>
2023-04-21 16:59:04 +03:00
Csaba Tuncsik
19f540ecf9 refactor(editor): Turn titleChange mixin to composable (#6059) 2023-04-21 15:48:07 +02:00
Csaba Tuncsik
ef79b03f38 feat(editor): Version control paywall (WIP) (#6030)
* feat(editor): Version control paywall (WIP)

* fix(editor): remove version control docs link
2023-04-21 11:25:39 +02:00
Alex Grozav
723f81bab0 feat: Add variables e2e tests (no-changelog) (#6027)
* fix: fix n8n-checkbox alignment

* fix: use css variables in checkbox inner margin-top

* test: update snapshots

* feat: add variables e2e tests (no-changelog)

* test: update snapshot
2023-04-20 15:08:13 +03:00
Csaba Tuncsik
9b59f1df9c fix(editor): Fix typo in SSO upgrade link (#6031)
* fix(editor): Fix typo in SSO upgrade link

* fix(editor): remove unused import
2023-04-20 13:25:57 +02:00
Alex Grozav
6d64e3d40e fix(editor): Add correct add variable button message when no variables created (no-changelog) (#6028)
fix: add correct add variable button message when no variables created
2023-04-20 14:05:50 +03:00
Mutasem Aldmour
4ee508385a fix(editor): Clean up demo and template callouts from workflows page (#6023)
* fix(editor): clean up demo callouts

* fix(editor): clean up i18n
2023-04-20 12:33:32 +02:00
OlegIvaniv
0970ec066d fix(editor): Fix memory leak in Node Detail View by correctly unsubscribing from event buses (#6021) 2023-04-20 12:26:14 +02:00
कारतोफ्फेलस्क्रिप्ट™
41660d9e28 fix(editor): SettingsSidebar should disconnect from push when navigating away (#6025) 2023-04-20 12:23:17 +02:00
Csaba Tuncsik
953198e092 fix(editor): Update SSO upgrade link (#6016)
fix(editor): update SSO upgrade link
2023-04-19 17:05:58 +02:00
Csaba Tuncsik
0e0a064fa7 feat(editor): Version control (WIP) (#6013)
* feat(editor): Version control settings (with feature flag)

* feat(editor): replace posthog feature flag with local storage key
2023-04-19 16:01:32 +02:00
Csaba Tuncsik
9eeba13156 refactor(editor): Go to upgrade page (#5994)
* refactor(editor): Go to upgrade page

* test(editor): add UI store upgrade link tests

* fix(editor): update execution filter links

* fix(editor): update unit test

* fix(editor): update unit test

* fix(editor): remove unused variables
2023-04-19 11:00:09 +02:00
Ricardo Espinoza
c171365d2a fix(editor): Cleanup demo/video experiment (#5974) 2023-04-18 07:28:12 -04:00
Val
1bb987140a feat: Add variables feature (#5602)
* feat: add variables db models and migrations

* feat: variables api endpoints

* feat: add $variables to expressions

* test: fix ActiveWorkflowRunner tests failing

* test: a different fix for the tests broken by $variables

* feat: variables licensing

* fix: could create one extra variable than licensed for

* feat: Add Variables UI page and $vars global property (#5750)

* feat: add support for row slot to datatable

* feat: add variables create, read, update, delete

* feat: add vars autocomplete

* chore: remove alert

* feat: add variables autocomplete for code and expressions

* feat: add tests for variable components

* feat: add variables search and sort

* test: update tests for variables view

* chore: fix test and linting issue

* refactor: review changes

* feat: add variable creation telemetry

* fix: Improve variables listing and disabled case, fix resource sorting (no-changelog) (#5903)

* fix: Improve variables disabled experience and fix sorting

* fix: update action box margin

* test: update tests for variables row and datatable

* fix: Add ee controller to base controller

* fix: variables.ee routes not being added

* feat: add variables validation

* fix: fix vue-fragment bug that breaks everything

* chore: Update lock

* feat: Add variables input validation and permissions (no-changelog) (#5910)

* feat: add input validation

* feat: handle variables view for non-instance-owner users

* test: update variables tests

* fix: fix data-testid pattern

* feat: improve overflow styles

* test: fix variables row snapshot

* feat: update sorting to take newly created variables into account

* fix: fix list layout overflow

* fix: fix adding variables on page other than 1. fix validation

* feat: add docs link

* fix: fix default displayName function for resource-list-layout

* feat: improve vars expressions ux, cm-tooltip

* test: fix datatable test

* feat: add MATCH_REGEX validation rule

* fix: overhaul how datatable pagination selector works

* feat: update  completer description

* fix: conditionally update usage syntax based on key validation

* test: update datatable snapshot

* fix: fix variables-row button margins

* fix: fix pagination overflow

* test: Fix broken test

* test: Update snapshot

* fix: Remove duplicate declaration

* feat: add custom variables icon

---------

Co-authored-by: Alex Grozav <alex@grozav.com>
Co-authored-by: Omar Ajoue <krynble@gmail.com>
2023-04-18 12:41:55 +02:00
Csaba Tuncsik
ee7d5a841e test(editor): Set 'data-test-id' in unit tests, so they match with Cypress (#5976) 2023-04-14 13:17:20 +02:00
Csaba Tuncsik
dc0055fc5c test(editor): Move test utils to the proper place (#5975) 2023-04-14 13:17:03 +02:00
Csaba Tuncsik
bc1db5e16a test(editor): SSO tests (#5946)
* test(editor): SSO tests

* test(editor): move store tests to __tests__ folder

* test(editor): move tests in a different PR

* test(editor): add SSO tests

* test(editor): add SSO settings page tests

* test(editor): add SSO onboarding page base test

* test(editor): add SSO onboarding page test

* test(editor): fix router spy
2023-04-13 16:17:47 +02:00
Csaba Tuncsik
02ab1e7eef fix(editor): Redirect to home page after saving data on SAML onboarding page (no-changelog) (#5961)
fix(editor): redirect to home page after saving data on SAML onboarding page
2023-04-13 09:32:06 +02:00
Csaba Tuncsik
3fdc4413c2 feat(editor): SAML login disables Invite button (#5922) 2023-04-07 13:29:48 +02:00
Csaba Tuncsik
d40e86aabc feat(editor): SAML paywall state (#5906)
* feat(editor): SAML paywall state

* fix(editor): fix translation

* fix(editor): SSO update links
2023-04-07 13:29:22 +02:00
Alex Grozav
5651a52364 feat: Replace new Vue() with custom event bus (no-changelog) (#5780)
* refactor: replace new Vue() with custom event bus (no-changelog)

* fix: export types from design system main

* fix: update component types

* fix: update form inputs event bus
2023-04-06 16:32:45 +03:00
Csaba Tuncsik
04f8600bbd feat(editor): SSO onboarding (#5756)
* feat(editor): SSO onboarding

* fix(editor): add SAML onboarding page

* fix(editor): submit user name on SAML onboarding
2023-04-04 18:18:16 +02:00
Csaba Tuncsik
f4e59499fc feat(editor): SSO setup (#5736)
* feat(editor): SSO settings page

* feat(editor): SSO settings page

* feat(editor): SSO settings page

* feat(editor): SSO settings page

* feat(editor): SSO settings page

* feat(editor): SSO settings page

* Merge remote-tracking branch 'origin/master' into pay-170-sso-set-up-page

# Conflicts:
#	packages/cli/src/sso/saml/routes/saml.controller.ee.ts

* feat(editor): Prevent SSO settings page route

* feat(editor): some UI improvements

* fix(editor): SSO settings saml config optional chaining

* fix return values saml controller

* fix(editor): drop dompurify

* fix(editor): save xml as is

* return authenticationMethod with settings

* fix(editor): add missing prop to server

* chore(editor): code formatting

* fix ldap/saml enable toggle endpoint

* fix missing import

* prevent faulty ldap setting from breaking startup

* remove sso fake-door from users page

* fix(editor): update SSO settings route permissions + unit testing

* fix(editor): update vite config for test

* fix(editor): add paddings to SSO settings page buttons, add translation

* fix(editor): fix saml unit test

* fix(core): Improve saml test connection function (#5899)

improve-saml-test-connection return

---------

Co-authored-by: Michael Auerswald <michael.auerswald@gmail.com>
Co-authored-by: Romain Minaud <romain.minaud@gmail.com>
2023-04-04 14:28:29 +02:00
Alex Grozav
df2ea0f5ec fix: Add optional chaining for 'isArtificalRecoveredEventItem' (no-changelog) (#5860)
* fix: add optional chaining for isArtificalRecoveredEventItem

* fix: fix isArtificalRecoveredEventItem typo
2023-04-03 16:04:59 +03:00
Milorad FIlipović
0a59002ef8 feat(editor): Enable saving workflow when node details view is open (#5856)
* feat(editor): Enable saving workflow when node details view is open
*  Preventing event propagation
*  Move save event handler to `NodeDetailsView`
*  Added e2e tests
* 👕 Fixing linting and removing unnecessary event logic

---------

Co-authored-by: Oleg Ivaniv <oleg@n8n.io>
2023-03-31 13:59:09 +02:00
Csaba Tuncsik
96533a995c fix(editor): Disable password reset on desktop with no user management (#5853)
* fix(editor): disable password reset on desktop if there is no user management

* fix(editor): disable password reset on desktop if there is no user management
2023-03-31 11:42:11 +02:00
Jon
d86e693019 fix(editor): Fix issue preventing execution preview loading when in an iframe (#5817) 2023-03-30 12:17:12 +01:00
OlegIvaniv
78c9707fa7 refactor(editor): Migrate mouseSelect & deviceSupportHelpers mixins to composables (no-changelog) (#5775)
* refactor(editor): Migrate mouseSelect & deviceSupportHelpers mixins to composables (no-changelog)

* Fix node drop position and correct event listeners
2023-03-24 14:52:06 +01:00
OlegIvaniv
02810a9ba3 feat(editor): Fix ResourceLocator dropdown style (#5714)
* fix(editor): Fix ResourceLocator dropdown style

* Fix other popper classes

* Fix app hanging if loading many remote parameter options

* Make ResourceLocatorDropdown flex

* Override scrollbar styles

* Hide resource locator on outside click not input blur
2023-03-22 15:36:10 +01:00
OlegIvaniv
cb2ba97f38 fix(editor): Fix the canvas node distance when automatically injecting manual trigger (#5716)
fix(editor): Fix the canvas node distance when automatically adding manual trigger
2023-03-20 11:11:32 +01:00
Csaba Tuncsik
6916628a9f feat(editor): SSO login button (#5615)
* feat(editor): SSO login button

* feat(editor): SSO login button

* feat(editor): SSO login button
2023-03-17 21:07:08 +01:00
Milorad FIlipović
19dded18c9 feat(editor): Move canvas by holding Space or Middle mouse button (#5719)
*  Implemented canvas move on space+drag
*  Added middle mouse key canvas move
*  Handling cursor changes when moving canvas with middle mouse button
* 💄 Consolidate naming
2023-03-17 17:38:54 +01:00
OlegIvaniv
a9c63f980f feat(editor): Only redirect new users to blank canvas (no-changelog) (#5654)
* feat(editor): Bring new users to empty canvas

* fix(editor): Revert empty /workflows redirect

* Provide `COMMIT_INFO_BRANCH` and uncomment demo experiment

* Only change redirect after set-up/sign-up to new canvas

* Fix failing specs

* Prevent redirect for demo experiment

* Fix workflows cards spacing
2023-03-09 15:26:27 +01:00
OlegIvaniv
ac2f89a18a feat(editor): Do not automatically add manual trigger on node plus (#5644)
* feat(editor): Do not add manual trigger node if node creator trigger via canvas actions

* Add e2e tests

* Install cypress-plugin-tab, do not use cy.realPress as it hangs the tests

* Exclude tab tests
2023-03-09 15:22:12 +01:00
Alex Grozav
493f7a1c92 fix: Fetch credentials on workflows view to include in duplicated workflows (#5532)
fix: fetch credentials on workflows view to include in duplicated workflows
2023-03-09 14:23:38 +02:00
romainminaud
5b9c521d04 fix(editor): Only fetch new versions at app launch (#5647)
only call nextVersions once
2023-03-09 11:01:30 +01:00
OlegIvaniv
354edf6886 feat(editor): Redirect users to canvas if they don't have any workflows (#5629)
* feat(editor): Bring new users to empty canvas

* Fix failing e2e tests and revert CLI implementation

* Revert editor-ui Interface changes

* Try to mock /settings and /active

* Revert canvas test changes, reload after executions in 20-workflow-executions

* Make sure we include manual executiosn before running them in 20-workflow-executions

* Make sure to re-init node view when replacing empty workflows route, show phantom loader
2023-03-08 15:11:13 +01:00
कारतोफ्फेलस्क्रिप्ट™
3c57062571 refactor: Fix some typos (no-changelog) (#5616) 2023-03-03 18:49:19 +01:00
OlegIvaniv
0004dc7ee8 ci(editor): Run e2e tests in parallel and improve build caching (#5445)
* WIP: Cypress parallel CI run test

* Trigger action on branch push

* Change build artifacts path

* Make sure to checkout the repo for testing job

* Use Cypress action for installing

* Lock cypress action userd version

* Skip node install step since we're using cypress node16 container

* Let Cypress handle pnpm install

* Use setup-node action for caching pnpm

* Set CYPRESS_CACHE_FOLDER

* Set CYPRESS_CACHE_FOLDER

* Manually cache pnpm store

* Dont fix pnpm version

* Use caching action also in testing job

* Zip packages dist before uploading the artifacts and change caching key

* Use absolute build paths for zipping job

* Use zip command in action

* Use tar for zipping packages

* Debuggin directory ls

* Debugging caching of modules

* Attempt to fix permissions issue

* Porivde Cypress executable via `CYPRESS_RUN_BINARY`

* Cache /github/home

* Adjust caching keys

* Debug: search for cypress exec

* Debugging: List dirs

* Use pnpm install action to install node_modules

* Do not log /home/runner

* Use node_modules/.bin Cypress binary

* Use absolute path to nodue modules

* Run Cypress via custom command

* Try with patched cypress action

* Revert logging

* Manually specify cypress config file

* Use absolute paths

* Fix cypress config name

* Debug print cypress config

* Remove debugging, increase to 4 containers

* Increase amount of containers

* Add env-version matrix

* Replace node14 with node18 in testing matrix

* Remove debugging and add node 14

* Use just node14

* Use cypress:base and remove browser req

* Give more general timeouts

* Try with node16

* Change cache directive position

* Replace zip artifact upload with cache

* Cache full packages not just dist

* Test with variable inputs

* Add commit info message

* Remove wrongly commited code

* Allow WF API dispatch

* Try Chrome browser again for comparison

* Include Monaco in the build

* Make e2e workflow re-usable

* Comment out invalid reusable workflow args

* Use electron and add node 14 run

* Fix env arg

* Provide custom ci-build-id

* Refactor remaining e2e workflow to use reusable action

* Remove single matrix directive

* Refactor ci-pull-req

* Make lint job dependant on test jobs

* Disable debugging job

* Make containers dynamic

* Cleanup & install git for linting action

* Use regular buntu image for PR linting

* Debugging failing tests

* Remove fixed spec name

* Debug e2e env var

* Do not use realkeypress which crashes electron runner

* Debugging

* chore: remove console

* chore: remove console

* test: remove node 14 tests

* test: replace test branch with master

* test: use tests in current branch

* test: use relative path

* chore: clean up

* test: only trigger on approval

* ci: update test PR

* ci: use curr branch

* ci: only run 14 on schedule, not for slack command

* ci: only run test on approval

* ci: clean up branch, rename step

* ci: rename steps

* ci: clean up cancel

* ci: clean up env var

* ci: set var

* ci: use chromef

* ci: use electron

* chore: add console log

* chore: add console log

* ci: update to string

* ci: set all env options

* test: build

* ci: fix step issue

* Fix failing tests & upgrade to Cypress 12

* Allow WF dispatch of e2e reusable

* Fix wrong naming in e2e-tests workflow

* Redeploy

* Fix tests

* Fix NDV tests and remove skipping of webhooks execution tests

* Fix clipboard read command

* Fix execution failing tests

* Reset before each 15 and 3

* Fix flaky tests

* Cleanup and log envs

* Test fixes

* Default owner spec fixes

* Get rid of CYPRESS_RUN_ENV

* Increase amount of containers, cleanup and add mock for credentials test call

* Cleanup & fix PR tests unit tests

* Wait for WF to loade in sharing spec

* Do linting and unit tests first

* Use frozen lockfile

* Revert back ci pull request jobs order

* Refine credential input selector and move cy.waitForLoad to correct position in 15-scheduler spec

* test: build

* Wait for WF execution instead of arbitraty timeout in WF execution spec, change order of jobs for ci pull request

* Fix flaky 3-default owner spec and wait for execution list to load in 20-workflow-executions

* Use setup node action

* Remove caching for lint/unit tests

* Experiment with parallel test & lint on ci

* Provide cache key dynamically

* Run e2e in parallel on pr

* Only run node14 e2e on daily schedule

* Make sure to generate generate new ci-build-id on re-runs

* Remove debugging prints

* Address PR comments

* Rename custom onBeforeUnload handler

* Make sure 19-execution spec waits for wf to load properly before import fixtures

---------

Co-authored-by: Mutasem <mutdmour@gmail.com>
2023-03-02 16:50:21 +01:00
Mutasem Aldmour
20c4919513 feat: Add events to enable onboarding checklist (#5536)
* feat: Add new event hooks

* fix: update event

* feat: Add more functionality for webhooks

*  Not sending onboarding checklist event from templates page

* 🔥 Removing quotes added by mistake

*  Added rest of events needed for onboarding checklist

* 💄 Hiding appcues checklist inside iframes

* 💄 Updating appcues selector

* fix: remove unnessary fix

* fix: fix schedule node

* refactor: bake events into segment store

* refactor: rename store

* refactor: use node keys

* refactor: remove unnessary

* chore: clean up store

* refactor: add key for event

* fix: allow tracking on template pages

* chore: remove comment

* fix: buidl

* refactor: block event if in iframe

* fix: fix tracking nodes

* refactor: track experiments once

* fix: ensure tracking works

* chore: remove comment

* fix: lint

* fix: lint

---------

Co-authored-by: Milorad Filipovic <milorad@n8n.io>
2023-02-28 13:44:37 +03:00