n8n/packages/cli/src/WorkflowHelpers.ts

687 lines
20 KiB
TypeScript
Raw Normal View History

feat: Add User Management (#2636) * ✅ adjust tests * 🛠 refactor user invites to be indempotent (#2791) * 🔐 Encrypt SMTP pass for user management backend (#2793) * :package: Add crypto-js to /cli * :package: Update package-lock.json * :sparkles: Create type for SMTP config * :zap: Encrypt SMTP pass * :zap: Update format for `userManagement.emails.mode` * :zap: Update format for `binaryDataManager.mode` * :zap: Update format for `logs.level` * :fire: Remove logging * :shirt: Fix lint * 👰 n8n 2826 um wedding FE<>BE (#2789) * remove mocks * update authorization func * lock down default role * 🐛 fix requiring authentication for OPTIONS requests * :bug: fix cors and cookie issues in dev * update setup route Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * update telemetry * 🐛 preload role for users * :bug: remove auth for password reset routes * 🐛 fix forgot-password flow * :zap: allow workflow tag disabling * update telemetry init * add reset * clear error notifications on signin * remove load settings from node view * remove user id from user state * inherit existing user props * go back in history on button click * use replace to force redirect * update stories * :zap: add env check for tag create * :test_tube: Add `/users` tests for user management backend (#2790) * :zap: Refactor users namespace * :zap: Adjust fillout endpoint * :zap: Refactor initTestServer arg * :pencil2: Specify agent type * :pencil2: Specify role type * :zap: Tighten `/users/:id` check * :sparkles: Add initial tests * :truck: Reposition init server map * :zap: Set constants in `validatePassword()` * :zap: Tighten `/users/:id` check * :zap: Improve checks in `/users/:id` * :sparkles: Add tests for `/users/:id` * :package: Update package-lock.json * :zap: Simplify expectation * :zap: Reuse util for authless agent * :truck: Make role names consistent * :blue_book: Tighten namespaces map type * :fire: Remove unneeded default arg * :sparkles: Add tests for `POST /users` * :blue_book: Create test SMTP account type * :pencil2: Improve wording * :art: Formatting * :fire: Remove temp fix * :zap: Replace helper with config call * :zap: Fix failing tests * :fire: Remove outdated test * :fire: Remove unused helper * :zap: Increase readability of domain fetcher * :zap: Refactor payload validation * :fire: Remove repetition * :rewind: Restore logging * :zap: Initialize logger in tests * :fire: Remove redundancy from check * :truck: Move `globalOwnerRole` fetching to global scope * :fire: Remove unused imports * :truck: Move random utils to own module * :truck: Move test types to own module * :pencil2: Add dividers to utils * :pencil2: Reorder `initTestServer` param docstring * :pencil2: Add TODO comment * :zap: Dry up member creation * :zap: Tighten search criteria * :test_tube: Add expectation to `GET /users` * :zap: Create role fetcher utils * :zap: Create one more role fetch util * :fire: Remove unneeded DB query * :test_tube: Add expectation to `POST /users` * :test_tube: Add expectation to `DELETE /users/:id` * :test_tube: Add another expectation to `DELETE /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :test_tube: Adjust expectations in `POST /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :shirt: Fix build * :zap: Update method * :blue_book: Fix `userToDelete` type * :zap: Refactor `createAgent()` * :zap: Make role fetching global * :zap: Optimize roles fetching * :zap: Centralize member creation * :zap: Refactor truncation helper * :test_tube: Add teardown to `DELETE /users/:id` * :test_tube: Add DB expectations to users tests * :fire: Remove pass validation due to hash * :pencil2: Improve pass validation error message * :zap: Improve owner pass validation * :zap: Create logger initialization helper * :zap: Optimize helpers * :zap: Restructure `getAllRoles` helper * :test_tube: Add password reset flow tests for user management backend (#2807) * :zap: Refactor users namespace * :zap: Adjust fillout endpoint * :zap: Refactor initTestServer arg * :pencil2: Specify agent type * :pencil2: Specify role type * :zap: Tighten `/users/:id` check * :sparkles: Add initial tests * :truck: Reposition init server map * :zap: Set constants in `validatePassword()` * :zap: Tighten `/users/:id` check * :zap: Improve checks in `/users/:id` * :sparkles: Add tests for `/users/:id` * :package: Update package-lock.json * :zap: Simplify expectation * :zap: Reuse util for authless agent * :truck: Make role names consistent * :blue_book: Tighten namespaces map type * :fire: Remove unneeded default arg * :sparkles: Add tests for `POST /users` * :blue_book: Create test SMTP account type * :pencil2: Improve wording * :art: Formatting * :fire: Remove temp fix * :zap: Replace helper with config call * :zap: Fix failing tests * :fire: Remove outdated test * :sparkles: Add tests for password reset flow * :pencil2: Fix test wording * :zap: Set password reset namespace * :fire: Remove unused helper * :zap: Increase readability of domain fetcher * :zap: Refactor payload validation * :fire: Remove repetition * :rewind: Restore logging * :zap: Initialize logger in tests * :fire: Remove redundancy from check * :truck: Move `globalOwnerRole` fetching to global scope * :fire: Remove unused imports * :truck: Move random utils to own module * :truck: Move test types to own module * :pencil2: Add dividers to utils * :pencil2: Reorder `initTestServer` param docstring * :pencil2: Add TODO comment * :zap: Dry up member creation * :zap: Tighten search criteria * :test_tube: Add expectation to `GET /users` * :zap: Create role fetcher utils * :zap: Create one more role fetch util * :fire: Remove unneeded DB query * :test_tube: Add expectation to `POST /users` * :test_tube: Add expectation to `DELETE /users/:id` * :test_tube: Add another expectation to `DELETE /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :test_tube: Adjust expectations in `POST /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :blue_book: Add namespace name to type * :truck: Adjust imports * :zap: Optimize `globalOwnerRole` fetching * :test_tube: Add expectations * :shirt: Fix build * :shirt: Fix build * :zap: Update method * :zap: Update method * :test_tube: Fix `POST /change-password` test * :blue_book: Fix `userToDelete` type * :zap: Refactor `createAgent()` * :zap: Make role fetching global * :zap: Optimize roles fetching * :zap: Centralize member creation * :zap: Refactor truncation helper * :test_tube: Add teardown to `DELETE /users/:id` * :test_tube: Add DB expectations to users tests * :zap: Refactor as in users namespace * :test_tube: Add expectation to `POST /change-password` * :fire: Remove pass validation due to hash * :pencil2: Improve pass validation error message * :zap: Improve owner pass validation * :zap: Create logger initialization helper * :zap: Optimize helpers * :zap: Restructure `getAllRoles` helper * :zap: Update `truncate` calls * :bug: return 200 for non-existing user * ✅ fix tests for forgot-password and user creation * Update packages/editor-ui/src/components/MainSidebar.vue Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/components/Telemetry.vue Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * :truck: Fix imports * :zap: reset password just if password exists * Fix validation at `PATCH /workfows/:id` (#2819) * :bug: Validate entity only if workflow * :shirt: Fix build * 🔨 refactor response from user creation * 🐛 um email invite fix (#2833) * update users invite * fix notificaitons stacking on top of each other * remove unnessary check * fix type issues * update structure * fix types * 🐘 database migrations UM + password reset expiration (#2710) * Add table prefix and assign existing workflows and credentials to owner for sqlite * Added user management migration to MySQL * Fixed some missing table prefixes and removed unnecessary user id * Created migration for postgres and applies minor fixes * Fixed migration for sqlite by removing the unnecessary index and for mysql by removing unnecessary user data * Added password reset token expiration * Addressing comments made by Ben * ⚡️ add missing tablePrefix * ✅ fix tests + add tests for expiring pw-reset-token Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :zap: treat skipped personalizationSurvey as not answered * :bug: removing active workflows when deleting user, :bug: fix reinvite, :bug: fix resolve-signup-token, 🐘 remove workflowname uniqueness * ✅ Add DB state check tests (#2841) * :fire: Remove unneeded import * :fire: Remove unneeded vars * :pencil2: Improve naming * :test_tube: Add expectations to `POST /owner` * :test_tube: Add expectations to `PATCH /me` * :test_tube: Add expectation to `PATCH /me/password` * :pencil2: Clarify when owner is owner shell * :test_tube: Add more expectations * :rewind: Restore package-lock to parent branch state * Add logging to user management endpoints v2 (#2836) * :zap: Initialize logger in tests * :zap: Add logs to mailer * :zap: Add logs to middleware * :zap: Add logs to me endpoints * :zap: Add logs to owner endpoints * :zap: Add logs to pass flow endpoints * :zap: Add logs to users endpoints * :blue_book: Improve typings * :zap: Merge two logs into one * :zap: Adjust log type * :zap: Add password reset email log * :pencil2: Reword log message * :zap: Adjust log meta object * :zap: Add total to log * :pencil2: Add detail to log message * :pencil2: Reword log message * :pencil2: Reword log message * :bug: Make total users to set up accurate * :pencil2: Reword `Logger.debug()` messages * :pencil2: Phrasing change for consistency * :bug: Fix ID overridden in range query * :hammer: small refactoring * 🔐 add auth to push-connection * 🛠 ✅ Create credentials namespace and add tests (#2831) * :test_tube: Fix failing test * :blue_book: Improve `createAgent` signature * :truck: Fix `LoggerProxy` import * :sparkles: Create credentials endpoints namespace * :test_tube: Set up initial tests * :zap: Add validation to model * :zap: Adjust validation * :test_tube: Add test * :truck: Sort creds endpoints * :pencil2: Plan out pending tests * :test_tube: Add deletion tests * :test_tube: Add patch tests * :test_tube: Add get cred tests * :truck: Hoist import * :pencil2: Make test descriptions consistent * :pencil2: Adjust description * :test_tube: Add missing test * :pencil2: Make get descriptions consistent * :rewind: Undo line break * :zap: Refactor to simplify `saveCredential` * :test_tube: Add non-owned tests for owner * :pencil2: Improve naming * :pencil2: Add clarifying comments * :truck: Improve imports * :zap: Initialize config file * :fire: Remove unneeded import * :truck: Rename dir * :zap: Adjust deletion call * :zap: Adjust error code * :pencil2: Touch up comment * :zap: Optimize fetching with `@RelationId` * :test_tube: Add expectations * :zap: Simplify mock calls * :blue_book: Set deep readonly to object constants * :fire: Remove unused param and encryption key * :zap: Add more `@RelationId` calls in models * :rewind: Restore * :bug: no auth for .svg * 🛠 move auth cookie name to constant; 🐛 fix auth for push-connection * ✅ Add auth middleware tests (#2853) * :zap: Simplify existing suite * :test_tube: Validate that auth cookie exists * :pencil2: Move comment * :fire: Remove unneeded imports * :pencil2: Add clarifying comments * :pencil2: Document auth endpoints * :test_tube: Add middleware tests * :pencil2: Fix typos Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com> * 🔥 Remove test description wrappers (#2874) * :fire: Remove /owner test wrappers * :fire: Remove auth middleware test wrappers * :fire: Remove auth endpoints test wrappers * :fire: Remove overlooked middleware wrappers * :fire: Remove me namespace test wrappers Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * ✨ Runtime checks for credentials load and execute workflows (#2697) * Runtime checks for credentials load and execute workflows * Fixed from reviewers * Changed runtime validation for credentials to be on start instead of on demand * Refactored validations to use user id instead of whole User instance * Removed user entity from workflow project because it is no longer needed * General fixes and improvements to runtime checks * Remove query builder and improve styling * Fix lint issues * :zap: remove personalizationAnswers when fetching all users * ✅ fix failing get all users test * ✅ check authorization routes also for authentication * :bug: fix defaults in reset command * 🛠 refactorings from walkthrough (#2856) * :zap: Make `getTemplate` async * :zap: Remove query builder from `getCredentials` * :zap: Add save manual executions log message * :rewind: Restore and hide migrations logs * :zap: Centralize ignore paths check * :shirt: Fix build * :truck: Rename `hasOwner` to `isInstanceOwnerSetUp` * :zap: Add `isSetUp` flag to `User` * :zap: Add `isSetUp` to FE interface * :zap: Adjust `isSetUp` checks on FE * :shirt: Fix build * :zap: Adjust `isPendingUser()` check * :truck: Shorten helper name * :zap: Refactor as `isPending` per feedback * :pencil2: Update log message * :zap: Broaden check * :fire: Remove unneeded relation * :zap: Refactor query * :fire: Re-remove logs from migrations * 🛠 set up credentials router (#2882) * :zap: Refactor creds endpoints into router * :test_tube: Refactor creds tests to use router * :truck: Rename arg for consistency * :truck: Move `credentials.api.ts` outside /public * :truck: Rename constant for consistency * :blue_book: Simplify types * :fire: Remove unneeded arg * :truck: Rename router to controller * :zap: Shorten endpoint * :zap: Update `initTestServer()` arg * :zap: Mutate response body in GET /credentials * 🏎 improve performance of type cast for FE Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :bug: remove GET /login from auth * 🔀 merge master + FE update (#2905) * :sparkles: Add Templates (#2720) * Templates Bugs / Fixed Various Bugs / Multiply Api Request, Carousel Gradient, Core Nodes Filters ... * Updated MainSidebar Paddings * N8N-Templates Bugfixing - Remove Unnecesairy Icon (Shape), Refatctor infiniteScrollEnabled Prop + updated infiniterScroll functinality * N8N-2853 Fixed Carousel Arrows Bug after Cleaning the SearchBar * fix telemetry init * fix search tracking issues * N8N-2853 Created FilterTemplateNode Constant Array, Filter PlayButton and WebhookRespond from Nodes, Added Box for showing more nodes inside TemplateList, Updated NewWorkflowButton to primary, Fixed Markdown issue with Code * N8N-2853 Removed Placeholder if Workflows Or Collections are not found, Updated the Logic * fix telemetry events * clean up session id * update user inserted event * N8N-2853 Fixed Categories to Moving if the names are long * Add todos * Update Routes on loading * fix spacing * Update Border Color * Update Border Readius * fix filter fn * fix constant, console error * N8N-2853 PR Fixes, Refactoring, Removing unnecesairy code .. * N8N-2853 PR Fixes - Editor-ui Fixes, Refactoring, Removing Dead Code ... * N8N-2853 Refactor Card to LongCard * clean up spacing, replace css var * clean up spacing * set categories as optional in node * replace vars * refactor store * remove unnesssary import * fix error * fix templates view to start * add to cache * fix coll view data * fix categories * fix category event * fix collections carousel * fix initial load and search * fix infinite load * fix query param * fix scrolling issues * fix scroll to top * fix search * fix collections search * fix navigation bug * rename view * update package lock * rename workflow view * rename coll view * update routes * add wrapper component * set session id * fix search tracking * fix session tracking * remove deleted mutation * remove check for unsupported nodes * refactor filters * lazy load template * clean up types * refactor infinte scroll * fix end of search * Fix spacing * fix coll loading * fix types * fix coll view list * fix navigation * rename types * rename state * fix search responsiveness * fix coll view spacing * fix search view spacing * clean up views * set background color * center page not vert * fix workflow view * remove import * fix background color * fix background * clean props * clean up imports * refactor button * update background color * fix spacing issue * rename event * update telemetry event * update endpoints, add loading view, check for endpoint health * remove conolse log * N8N-2853 Fixed Menu Items Padding * replace endpoints * fix type issues * fix categories * N8N-2853 Fixed ParameterInput Placeholder after ElementUI Upgrade * update createdAt * :zap: Fix placeholder in creds config modal * :pencil2: Adjust docstring to `credText` placeholder version * N8N-2853 Optimized * N8N-2853 Optimized code * :zap: Add deployment type to FE settings * :zap: Add deployment type to interfaces * N8N-2853 Removed Animated prop from components * :zap: Add deployment type to store module * :sparkles: Create hiring banner * :zap: Display hiring banner * :rewind: Undo unrelated change * N8N-2853 Refactor TemplateFilters * :zap: Fix indentation * N8N-2853 Reorder items / TemplateList * :shirt: Fix lint * N8N-2853 Refactor TemplateFilters Component * N8N-2853 Reorder TemplateList * refactor template card * update timeout * fix removelistener * fix spacing * split enabled from offline * add spacing to go back * N8N-2853 Fixed Screens for Tablet & Mobile * N8N-2853 Update Stores Order * remove image componet * remove placeholder changes * N8N-2853 Fixed Chinnese Placeholders for El Select Component that comes from the Library Upgrade * N8N-2853 Fixed Vue Agile Console Warnings * N8N-2853 Update Collection Route * :pencil2: Update jobs URL * :truck: Move logging to root component * :zap: Refactor `deploymentType` to `isInternalUser` * :zap: Improve syntax * fix cut bug in readonly view * N8N-3012 Fixed Details section in templates with lots of description, Fixed Mardown Block with overflox-x * N8N-3012 Increased Font-size, Spacing and Line-height of the Categories Items * N8N-3012 Fixed Vue-agile client width error on resize * only delay redirect for root path * N8N-3012 Fixed Carousel Arrows that Disappear * N8N-3012 Make Loading Screen same color as Templates * N8N-3012 Markdown renders inline block as block code * add offline warning * hide log from workflow iframe * update text * make search button larger * N8N-3012 Categories / Tags extended all the way in details section * load data in cred modals * remove deleted message * add external hook * remove import * update env variable description * fix markdown width issue * disable telemetry for demo, add session id to template pages * fix telemetery bugs * N8N-3012 Not found Collections/Wokrkflow * N8N-3012 Checkboxes change order when categories are changed * N8N-3012 Refactor SortedCategories inside TemplateFilters component * fix firefox bug * add telemetry requirements * add error check * N8N-3012 Update GoBackButton to check if Route History is present * N8N-3012 Fixed WF Nodes Icons * hide workflow screenshots * remove unnessary mixins * rename prop * fix design a bit * rename data * clear workspace on destroy * fix copy paste bug * fix disabled state * N8N-3012 Fixed Saving/Leave without saving Modal * fix telemetry issue * fix telemetry issues, error bug * fix error notification * disable workflow menu items on templates * fix i18n elementui issue * Remove Emit - NodeType from HoverableNodeIcon component * TechnicalFixes: NavigateTo passed down as function should be helper * TechnicalFixes: Update NavigateTo function * TechnicalFixes: Add FilterCoreNodes directly as function * check for empty connecitions * fix titles * respect new lines * increase categories to be sliced * rename prop * onUseWorkflow * refactor click event * fix bug, refactor * fix loading story * add default * fix styles at right level of abstraction * add wrapper with width * remove loading blocks component * add story * rename prop * fix spacing * refactor tag, add story * move margin to container * fix tag redirect, remove unnessary check * make version optional * rename view * move from workflows to templates store * remove unnessary change * remove unnessary css * rename component * refactor collection card * add boolean to prevent shrink * clean up carousel * fix redirection bug on save * remove listeners to fix multiple listeners bug * remove unnessary types * clean up boolean set * fix node select bug * rename component * remove unnessary class * fix redirection bug * remove unnessary error * fix typo * fix blockquotes, pre * refactor markdown rendering * remove console log * escape markdown * fix safari bug * load active workflows to fix modal bug * :arrow_up: Update package-lock.json file * :zap: Add n8n version as header Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com> Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :bookmark: Release n8n-workflow@0.88.0 * :arrow_up: Set n8n-workflow@0.88.0 on n8n-core * :bookmark: Release n8n-core@0.106.0 * :arrow_up: Set n8n-core@0.106.0 and n8n-workflow@0.88.0 on n8n-node-dev * :bookmark: Release n8n-node-dev@0.45.0 * :arrow_up: Set n8n-core@0.106.0 and n8n-workflow@0.88.0 on n8n-nodes-base * :bookmark: Release n8n-nodes-base@0.163.0 * :bookmark: Release n8n-design-system@0.12.0 * :arrow_up: Set n8n-design-system@0.12.0 and n8n-workflow@0.88.0 on n8n-editor-ui * :bookmark: Release n8n-editor-ui@0.132.0 * :arrow_up: Set n8n-core@0.106.0, n8n-editor-ui@0.132.0, n8n-nodes-base@0.163.0 and n8n-workflow@0.88.0 on n8n * :bookmark: Release n8n@0.165.0 * fix default user bug * fix bug * update package lock * fix duplicate import * fix settings * fix templates access Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :zap: n8n 2952 personalisation (#2911) * refactor/update survey * update customers * Fix up personalization survey * fix recommendation logic * set to false * hide suggested nodes when empty * use keys * add missing logic * switch types * Fix logic * remove unused constants * add back constant * refactor filtering inputs * hide last input on personal * fix other * ✨ add current pw check for change password (#2912) * fix back button * Add current password input * add to modal * update package.json * delete mock file * delete mock file * get settings func * update router * update package lock * update package lock * Fix invite text * update error i18n * open personalization on search if not set * update error view i18n * update change password * update settings sidebar * remove import * fix sidebar * :goal_net: fix error for credential/workflow not found * update invite modal * ✨ persist skipping owner setup (#2894) * 🚧 added skipInstanceOwnerSetup to DB + route to save skipping * ✨ skipping owner setup persists * ✅ add tests for authorization and /owner/skip-setup * 🛠 refactor FE settings getter * 🛠 move setting setup stop to owner creation * :bug: fix wrong setting of User.isPending * :bug: fix isPending * 🏷 add isPending to PublicUser * :bug: fix unused import * update delete modal * change password modal * remove _label * sort keys * remove key * update key names * fix test endpoint * 🥅 Handle error workflows permissions (#2908) * Handle error workflows permissions * Fixed wrong query format * 🛠 refactor query Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com> * fix ts issue * fix list after ispending changes * fix error page bugs * fix error redirect * fix notification * :bug: fix survey import in migration * fix up spacing * update keys spacing * update keys * add space * update key * fix up more spacing * 🔐 add current password (#2919) * add curr pass * update key names * :bug: stringify tag ids * 🔐 check current password before update * add package lock * fix dep version * update version * 🐛 fix access for instance owner to credentials (#2927) * 🛠 stringify tag id on entity * 🔐 Update password requirements (#2920) * :zap: Update password requirements * :zap: Adjust random helpers * ✅ fix tests for currentPassword check * change redirection, add homepage * fix error view redirection * updated wording * fix setup redirection * update validator * remove successfully * update consumers * update settings redirect * on signup, redirect to homepage * update empty state * add space to emails * remove brackets * add opacity * update spacing * remove border from last user * personal details updated * update redirect on sign up * prevent text wrap * fix notification title line height * remove console log * 🐘 Support testing with Postgres and MySQL (#2886) * :card_file_box: Fix Postgres migrations * :zap: Add DB-specific scripts * :sparkles: Set up test connections * :zap: Add Postgres UUID check * :test_tube: Make test adjustments for Postgres * :zap: Refactor connection logic * :sparkles: Set up double init for Postgres * :pencil2: Add TODOs * :zap: Refactor DB dropping logic * :sparkles: Implement global teardown * :sparkles: Create TypeORM wrappers * :sparkles: Initial MySQL setup * :zap: Clean up Postgres connection options * :zap: Simplify by sharing bootstrap connection name * :card_file_box: Fix MySQL migrations * :fire: Remove comments * :zap: Use ES6 imports * :fire: Remove outdated comments * :zap: Centralize bootstrap connection name handles * :zap: Centralize database types * :pencil2: Update comment * :truck: Rename `findRepository` * :construction: Attempt to truncate MySQL * :sparkles: Implement creds router * :bug: Fix duplicated MySQL bootstrap * :bug: Fix misresolved merge conflict * :card_file_box: Fix tags migration * :card_file_box: Fix MySQL UM migration * :bug: Fix MySQL parallelization issues * :blue_book: Augment TypeORM to prevent error * :fire: Remove comments * :sparkles: Support one sqlite DB per suite run * :truck: Move `testDb` to own module * :fire: Deduplicate bootstrap Postgres logic * :fire: Remove unneeded comment * :zap: Make logger init calls consistent * :pencil2: Improve comment * :pencil2: Add dividers * :art: Improve formatting * :fire: Remove duplicate MySQL global setting * :truck: Move comment * :zap: Update default test script * :fire: Remove unneeded helper * :zap: Unmarshal answers from Postgres * :bug: Phase out `isTestRun` * :zap: Refactor `isEmailSetup` * :fire: Remove unneeded imports * :zap: Handle bootstrap connection errors * :fire: Remove unneeded imports * :fire: Remove outdated comments * :pencil2: Fix typos * :truck: Relocate `answersFormatter` * :rewind: Undo package.json miscommit * :fire: Remove unneeded import * :zap: Refactor test DB prefixing * :zap: Add no-leftover check to MySQL * :package: Update package.json * :zap: Autoincrement on simulated MySQL truncation * :fire: Remove debugging queries * ✏️ fix email template link expiry * 🔥 remove unused import * ✅ fix testing email not sent error * fix duplicate import * add package lock * fix export * change opacity * fix text issue * update action box * update error title * update forgot password * update survey * update product text * remove unset fields * add category to page events * remove duplicate import * update key * update key * update label type * 🎨 um/fe review (#2946) * :whale: Update Node.js versions of Docker images to 16 * :bug: Fix that some keyboard shortcuts did no longer work * N8N-3057 Fixed Keyboard shortcuts no longer working on / Fixed callDebounced function * N8N-3057 Update Debounce Function * N8N-3057 Refactor callDebounce function * N8N-3057 Update Dobounce Function * :bug: Fix issue with tooltips getting displayed behind node details view * fix tooltips z-index * move all element ui components * update package lock * :bug: Fix credentials list load issue (#2931) * always fetch credentials * only fetch credentials once * :zap: Allow to disable hiring banner (#2902) * :sparkles: Add flag * :zap: Adjust interfaces * :zap: Adjust store module * :zap: Adjust frontend settings * :zap: Adjust frontend display * :bug: Fix issue that ctrl + o did behave wrong on workflow templates page (#2934) * N8N-3094 Workflow Templates cmd-o acts on the Preview/Iframe * N8N-3094 Workflow Templates cmd-o acts on the Preview/Iframe * disable shortcuts for preview Co-authored-by: Mutasem <mutdmour@gmail.com> * :arrow_up: Update package-lock.json file * :bug: Fix sorting by field in Baserow Node (#2942) This fixes a bug which currently leads to the "Sorting" option of the node to be ignored. * :bug: Fix some i18n line break issues * :sparkles: Add Odoo Node (#2601) * added odoo scaffolding * update getting data from odoo instance * added scaffolding for main loop and request functions * added functions for CRUD opperations * improoved error handling for odooJSONRPCRequest * updated odoo node and fixing nodelinter issues * fixed alpabetical order * fixed types in odoo node * fixing linter errors * fixing linter errors * fixed data shape returned from man loop * updated node input types, added fields list to models * update when custom resource is selected options for fields list will be populated dynamicly * minor fixes * :hammer: fixed credential test, updating CRUD methods * :hammer: added additional fields to crm resource * :hammer: added descriptions, fixed credentials test bug * :hammer: standardize node and descriptions design * :hammer: removed comments * :hammer: added pagination to getAll operation * :zap: removed leftover function from previous implementation, removed required from optional fields * :zap: fixed id field, added indication of type and if required to field description, replaced string input in filters to fetched list of fields * :hammer: fetching list of models from odoo, added selection of fields to be returned to predefined models, fixes accordingly to review * :zap: Small improvements * :hammer: extracted adress fields into collection, changed fields to include in descriptions, minor tweaks * :zap: Improvements * :hammer: working on review * :hammer: fixed linter errors * :hammer: review wip * :hammer: review wip * :hammer: review wip * :zap: updated display name for URL in credentials * :hammer: added checks for valid id to delete and update * :zap: Minor improvements Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :bug: Handle Wise SCA requests (#2734) * :zap: Improve Wise error message after previous change * fix duplicate import * add package lock * fix export * change opacity * fix text issue * update action box * update error title * update forgot password * update survey * update product text * remove unset fields * add category to page events * remove duplicate import * update key * update key Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Tom <19203795+that-one-tom@users.noreply.github.com> Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com> Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: pemontto <939704+pemontto@users.noreply.github.com> * Move owner skip from settings * 🐛 SMTP fixes (#2937) * :fire: Remove `UM_` from SMTP env vars * :fire: Remove SMTP host default value * :zap: Update sender value * :zap: Update invite template * :zap: Update password reset template * :zap: Update `N8N_EMAIL_MODE` default value * :fire: Remove `EMAIL` from all SMTP vars * :sparkles: Implement `verifyConnection()` * :truck: Reposition comment * :pencil2: Fix typo * :pencil2: Minor env var documentation improvements * :art: Fix spacing * :art: Fix spacing * :card_file_box: Remove SMTP settings cache * :zap: Adjust log message * :zap: Update error message * :pencil2: Fix template typo * :pencil2: Adjust wording * :zap: Interpolate email into success toast * :pencil2: Adjust base message in `verifyConnection()` * :zap: Verify connection on password reset * :zap: Bring up POST /users SMTP check * :bug: remove cookie if cookie is not valid * :zap: verify connection on instantiation Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * 🔊 create logger helper for migrations (#2944) * 🔥 remove unused database * :loud_sound: add migration logging for sqlite * 🔥 remove unnecessary index creation * ⚡️ change log level to warn * 🐛 Fix issue with workflow process to initialize db connection correctly (#2948) * ✏️ update error messages for webhhook run/activation * 📈 Implement telemetry events (#2868) * Implement basic telemetry events * Fixing user id as part of the telemetry data * Added user id to be part of the tracked data * :sparkles: Create telemetry mock * :test_tube: Fix tests with telemetry mock * :test_tube: Fix missing key in authless endpoint * :blue_book: Create authless request type * :fire: Remove log * :bug: Fix `migration_strategy` assignment * :blue_book: Remove `instance_id` from `ITelemetryUserDeletionData` * :zap: Simplify concatenation * :zap: Simplify `track()` call signature * Fixed payload of telemetry to always include user_id * Fixing minor issues Co-authored-by: Iván Ovejero <ivov.src@gmail.com> * 🔊 Added logs to credentials, executions and workflows (#2915) * Added logs to credentials, executions and workflows * Some updates according to ivov's feedback * :zap: update log levels * ✅ fix tests Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :bug: fix telemetry error * fix conflicts with master * fix duplicate * add package-lock * :bug: Um/fixes (#2952) * add initials to avatar * redirect to signin if invalid token * update pluralization * add auth page category * data transferred * touch up setup page * update button to add cursor * fix personalization modal not closing * ✏️ fix environment name * 🐛 fix disabling UM * 🐛 fix email setup flag * 🐛 FE fixes 1 (#2953) * add initials to avatar * redirect to signin if invalid token * update pluralization * add auth page category * data transferred * touch up setup page * update button to add cursor * fix personalization modal not closing * capitalize labels, refactor text * Fixed the issue with telemetry data missing for personalization survey * Changed invite email text * 🐛 Fix quotes issue with postgres migration (#2958) * Changed text for invite link * 🐛 fix reset command for mysql * ✅ fix race condition in test DB creation * 🔐 block user creation if UM is disabled * 🥅 improve smtp setup issue error * :zap: update error message * refactor route rules * set package lock * fix access * remove capitalize * update input labels * refactor heading * change span to fragment * add route types * refactor views * ✅ fix increase timeout for mysql * :zap: correct logic of error message * refactor view names * :zap: update randomString * 📈 Added missing event regarding failed emails (#2964) * replace label with info * 🛠 refactor JWT-secret creation * remove duplicate key * remove unused part * remove semicolon * fix up i18n pattern * update translation keys * update urls * support i18n in nds * fix how external keys are handled * add source * 💥 update timestamp of UM migration * ✏️ small message updates * fix tracking * update notification line-height * fix avatar opacity * fix up empty state * shift focus to input * 🔐 Disable basic auth after owner has been set up (#2973) * Disable basic auth after owner has been set up * Remove unnecessary comparison * rename modal title * 🐛 use pgcrypto extension for uuid creation (#2977) * 📧 Added public url variable for emails (#2967) * Added public url variable for emails * Fixed base url for reset password - the current implementation overrides possibly existing path * Change variable name to editorUrl * Using correct name editorUrl for emails * Changed variable description * Improved base url naming and appending path so it remains consistent * Removed trailing slash from editor base url * 🌐 fix i18n pattern (#2970) * fix up i18n pattern * update translation keys * update urls * support i18n in nds * fix how external keys are handled * add source * Um/fixes 1000 (#2980) * fix select issue * 😫 hacky solution to circumvent pgcrypto (#2979) * fix owner bug after transfer. always fetch latest credentials * add confirmation modal to setup * Use webhook url as fallback when editor url is not defined * fix enter bug * update modal * update modal * update modal text, fix bug in settings view * Updating editor url to not append path * rename keys Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com> Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> Co-authored-by: Omar Ajoue <krynble@gmail.com> Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> Co-authored-by: Tom <19203795+that-one-tom@users.noreply.github.com> Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com> Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: pemontto <939704+pemontto@users.noreply.github.com>
2022-03-14 06:46:32 -07:00
/* eslint-disable import/no-cycle */
:sparkles: Updated node design and node versioning (#1961) * :zap: introduce versioned nodes * Export versioned nodes for separate process run * Add bse node for versioned nodes * fix node name for versioned nodes * extend node from nodeVersionedType * improve nodes base and flow to FE * revert lib es2019 to es2017 * include version in key to prevent duplicate key * handle type versions on FE * clean up * cleanup nodes base * add type versions in getNodeParameterOptions * cleanup * code review * code review + add default version to node type description * remove node default types from store * :lipstick: cleanups * Draft for migrated Mattermost node * First version of Mattermost node versioned according to node standards * Correcting deactivate operations name to match currently used one * :sparkles: Create utility types * :zap: Simplify Mattermost types * :zap: Rename exports for consistency * :zap: Type channel properties * :zap: Type message properties * :zap: Type reaction properties * :zap: Type user properties * :zap: Add type import to router * :bug: Add missing key * :hammer: Adjust typo in operation name * :hammer: Inline exports for channel properties * :hammer: Inline exports for message properties * :hammer: Inline exports for reaction properties * :hammer: Inline exports for user properties * :hammer: Inline exports for load options * :shirt: Fix lint issue * :hammer: Inline export for description * :hammer: Rename descriptions for clarity * :hammer: Refactor imports/exports for methods * :hammer: Refactor latest version retrieval * :fire: Remove unneeded else clause When the string literal union is exhausted, the resource key becomes never, so TS disallows wrong key usage. * :sparkles: Add overloads to getNodeParameter * :zap: Improve overload * :fire: Remove superfluous INodeVersions type * :hammer: Relocate pre-existing interface * :fire: Remove JSDoc arg descriptions * :zap: Minor reformatting in transport file * :zap: Fix API call function type * Created first draft for Axios requests * Working version of mattermost node with Axios * Work in progress for replacing request library * Improvements to request translations * Fixed sending files via multipart / form-data * Fixing translation from request to axios and loading node parameter options * Improved typing for new http helper * Added ignore any for specific lines for linting * Fixed follow redirects changes on http request node and manual execution of previously existing workflow with older node versions * Adding default headers according to body on httpRequest helper * Spec error handling and fixed workflows with older node versions * Showcase how to export errors in a standard format * Merging master * Refactored mattermost node to keep files in a uniform structure. Also fix bugs with merges * Reverting changes to http request node * Changed nullish comparison and removed repeated code from nodes * Renamed queryString back to qs and simplified node output * Simplified some comparisons * Changed header names to be uc first * Added default user agent to requests and patch http method support * Fixed indentation, remove unnecessary file and console log * Fixed mattermost node name * Fixed lint issues * Further fix linting issues * Further fix lint issues * Fixed http request helper's return type Co-authored-by: ahsan-virani <ahsan.virani@gmail.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
2021-09-21 10:38:24 -07:00
/* eslint-disable @typescript-eslint/no-unsafe-call */
/* eslint-disable @typescript-eslint/no-unsafe-return */
/* eslint-disable @typescript-eslint/no-unsafe-assignment */
:art: Set up linting and formatting (#2120) * :arrow_up: Upgrade TS to 4.3.5 * :shirt: Add ESLint configs * :art: Add Prettier config * :package: Add deps and commands * :zap: Adjust global .editorconfig to new ruleset * :fire: Remove unneeded local .editorconfig * :package: Update deps in editor-ui * :hammer: Limit Prettier to only TS files * :zap: Add recommended VSCode extensions * :shirt: Fix build * :fire: Remove Vue setting from global config * :zap: Disable prefer-default-export per feedback * :pencil2: Add forgotten divider * :shirt: Disable no-plusplus * :shirt: Disable class-methods-use-this * :pencil2: Alphabetize overrides * :shirt: Add one-var consecutive override * :rewind: Revert one-var consecutive override This reverts commit b9252cf935659ba6d76727ad484a1d3c00008fcc. * 🎨 👕 Lint and format workflow package (#2121) * :art: Format /workflow package * :shirt: Lint /workflow package * :art: Re-format /workflow package * :shirt: Re-lint /workflow package * :pencil2: Fix typo * :zap: Consolidate if-checks * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format node-dev package (#2122) * :art: Format /node-dev package * :zap: Exclude templates from ESLint config This keeps the templates consistent with the codebase while preventing lint exceptions from being made part of the templates. * :shirt: Lint /node-dev package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * 🎨 👕 Lint and format core package (#2123) * :art: Format /core package * :shirt: Lint /core package * :art: Re-format /core package * :shirt: Re-lint /core package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format cli package (#2124) * :art: Format /cli package * :shirt: Exclude migrations from linting * :shirt: Lint /cli package * :art: Re-format /cli package * :shirt: Re-lint /cli package * :shirt: Fix build * :fire: Remove prefer-default-export exceptions * :zap: Update exceptions in ActiveExecutions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 👕 fix lint issues * :wrench: use package specific linter, remove tslint command * :hammer: resolve build issue, sync dependencies * :wrench: change lint command Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>
2021-08-29 11:58:11 -07:00
/* eslint-disable @typescript-eslint/no-non-null-assertion */
/* eslint-disable no-underscore-dangle */
/* eslint-disable no-continue */
/* eslint-disable @typescript-eslint/no-unsafe-member-access */
/* eslint-disable @typescript-eslint/restrict-template-expressions */
/* eslint-disable no-restricted-syntax */
/* eslint-disable no-param-reassign */
feat(editor): Improve n8n welcome experience (#3289) * ✨ Injecting a welcome sticky note if a corresponding flag has been received from backend * 🔒 Allowing resources from `/static` route to be displayed in markown component. * ✨ Implemented image width control via markdown URLs * 💄Updating quickstart video thumbnail images. * 🔨 Updated new workflow action name and quickstart sticky name * ✨ Added quickstart menu item in the Help menu * 🔨 Moving quickstart video thumbnail to the translation file. * 🔒 Limiting http static resource requests in markdown img tags only to image files. * 🔒 Adding more file types to supported image list in markown component. * 👌 Extracting quickstart note name to constant. * 🐘 add DB migration sqlite * ⚡️ add logic for onboarding flow flag * 🐘 add postgres migration for user settings * 🐘 add mysql migration for user settings * ✨ Injecting a welcome sticky note if a corresponding flag has been received from backend * 🔒 Allowing resources from `/static` route to be displayed in markown component. * ✨ Implemented image width control via markdown URLs * 💄Updating quickstart video thumbnail images. * 🔨 Updated new workflow action name and quickstart sticky name * ✨ Added quickstart menu item in the Help menu * 🔨 Moving quickstart video thumbnail to the translation file. * 🔒 Limiting http static resource requests in markdown img tags only to image files. * 🔒 Adding more file types to supported image list in markown component. * 👌 Extracting quickstart note name to constant. * 📈 Added telemetry events to quickstart sticky note. * ⚡ Disable sticky node type from showing in expression editor * 🔨 Improving welcome video link detecton when triggering telemetry events * 👌Moved sticky links click handling logic outside of the design system, removed user and instance id from telemetry events. * 👌Improving sticky note link telemetry tracking. * 🔨 Refactoring markdown component click event logic. * 🔨 Moving bits of clicked link detection logic to Markdown component. * 💄Fixing code spacing. * remove transpileonly option * update package lock * 💄Changing the default route to `/workflow`, updating welcome sticky content. * remove hardcoded * 🐛 Fixing the onboarding threshold logic so sticky notes are skipped when counting nodes. * 👕 Fixing linting errors. Co-authored-by: Milorad Filipović <milorad.filipovic19@gmail.com> Co-authored-by: Milorad Filipović <miloradfilipovic19@gmail.com> Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> Co-authored-by: Milorad Filipović <milorad@n8n.io>
2022-05-16 09:19:33 -07:00
import { In } from 'typeorm';
:art: Set up linting and formatting (#2120) * :arrow_up: Upgrade TS to 4.3.5 * :shirt: Add ESLint configs * :art: Add Prettier config * :package: Add deps and commands * :zap: Adjust global .editorconfig to new ruleset * :fire: Remove unneeded local .editorconfig * :package: Update deps in editor-ui * :hammer: Limit Prettier to only TS files * :zap: Add recommended VSCode extensions * :shirt: Fix build * :fire: Remove Vue setting from global config * :zap: Disable prefer-default-export per feedback * :pencil2: Add forgotten divider * :shirt: Disable no-plusplus * :shirt: Disable class-methods-use-this * :pencil2: Alphabetize overrides * :shirt: Add one-var consecutive override * :rewind: Revert one-var consecutive override This reverts commit b9252cf935659ba6d76727ad484a1d3c00008fcc. * 🎨 👕 Lint and format workflow package (#2121) * :art: Format /workflow package * :shirt: Lint /workflow package * :art: Re-format /workflow package * :shirt: Re-lint /workflow package * :pencil2: Fix typo * :zap: Consolidate if-checks * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format node-dev package (#2122) * :art: Format /node-dev package * :zap: Exclude templates from ESLint config This keeps the templates consistent with the codebase while preventing lint exceptions from being made part of the templates. * :shirt: Lint /node-dev package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * 🎨 👕 Lint and format core package (#2123) * :art: Format /core package * :shirt: Lint /core package * :art: Re-format /core package * :shirt: Re-lint /core package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format cli package (#2124) * :art: Format /cli package * :shirt: Exclude migrations from linting * :shirt: Lint /cli package * :art: Re-format /cli package * :shirt: Re-lint /cli package * :shirt: Fix build * :fire: Remove prefer-default-export exceptions * :zap: Update exceptions in ActiveExecutions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 👕 fix lint issues * :wrench: use package specific linter, remove tslint command * :hammer: resolve build issue, sync dependencies * :wrench: change lint command Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>
2021-08-29 11:58:11 -07:00
import {
IDataObject,
IExecuteData,
INode,
INodeCredentialsDetails,
:art: Set up linting and formatting (#2120) * :arrow_up: Upgrade TS to 4.3.5 * :shirt: Add ESLint configs * :art: Add Prettier config * :package: Add deps and commands * :zap: Adjust global .editorconfig to new ruleset * :fire: Remove unneeded local .editorconfig * :package: Update deps in editor-ui * :hammer: Limit Prettier to only TS files * :zap: Add recommended VSCode extensions * :shirt: Fix build * :fire: Remove Vue setting from global config * :zap: Disable prefer-default-export per feedback * :pencil2: Add forgotten divider * :shirt: Disable no-plusplus * :shirt: Disable class-methods-use-this * :pencil2: Alphabetize overrides * :shirt: Add one-var consecutive override * :rewind: Revert one-var consecutive override This reverts commit b9252cf935659ba6d76727ad484a1d3c00008fcc. * 🎨 👕 Lint and format workflow package (#2121) * :art: Format /workflow package * :shirt: Lint /workflow package * :art: Re-format /workflow package * :shirt: Re-lint /workflow package * :pencil2: Fix typo * :zap: Consolidate if-checks * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format node-dev package (#2122) * :art: Format /node-dev package * :zap: Exclude templates from ESLint config This keeps the templates consistent with the codebase while preventing lint exceptions from being made part of the templates. * :shirt: Lint /node-dev package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * 🎨 👕 Lint and format core package (#2123) * :art: Format /core package * :shirt: Lint /core package * :art: Re-format /core package * :shirt: Re-lint /core package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format cli package (#2124) * :art: Format /cli package * :shirt: Exclude migrations from linting * :shirt: Lint /cli package * :art: Re-format /cli package * :shirt: Re-lint /cli package * :shirt: Fix build * :fire: Remove prefer-default-export exceptions * :zap: Update exceptions in ActiveExecutions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 👕 fix lint issues * :wrench: use package specific linter, remove tslint command * :hammer: resolve build issue, sync dependencies * :wrench: change lint command Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>
2021-08-29 11:58:11 -07:00
IRun,
IRunExecutionData,
ITaskData,
LoggerProxy as Logger,
Workflow,
} from 'n8n-workflow';
import { v4 as uuid } from 'uuid';
:art: Set up linting and formatting (#2120) * :arrow_up: Upgrade TS to 4.3.5 * :shirt: Add ESLint configs * :art: Add Prettier config * :package: Add deps and commands * :zap: Adjust global .editorconfig to new ruleset * :fire: Remove unneeded local .editorconfig * :package: Update deps in editor-ui * :hammer: Limit Prettier to only TS files * :zap: Add recommended VSCode extensions * :shirt: Fix build * :fire: Remove Vue setting from global config * :zap: Disable prefer-default-export per feedback * :pencil2: Add forgotten divider * :shirt: Disable no-plusplus * :shirt: Disable class-methods-use-this * :pencil2: Alphabetize overrides * :shirt: Add one-var consecutive override * :rewind: Revert one-var consecutive override This reverts commit b9252cf935659ba6d76727ad484a1d3c00008fcc. * 🎨 👕 Lint and format workflow package (#2121) * :art: Format /workflow package * :shirt: Lint /workflow package * :art: Re-format /workflow package * :shirt: Re-lint /workflow package * :pencil2: Fix typo * :zap: Consolidate if-checks * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format node-dev package (#2122) * :art: Format /node-dev package * :zap: Exclude templates from ESLint config This keeps the templates consistent with the codebase while preventing lint exceptions from being made part of the templates. * :shirt: Lint /node-dev package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * 🎨 👕 Lint and format core package (#2123) * :art: Format /core package * :shirt: Lint /core package * :art: Re-format /core package * :shirt: Re-lint /core package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format cli package (#2124) * :art: Format /cli package * :shirt: Exclude migrations from linting * :shirt: Lint /cli package * :art: Re-format /cli package * :shirt: Re-lint /cli package * :shirt: Fix build * :fire: Remove prefer-default-export exceptions * :zap: Update exceptions in ActiveExecutions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 👕 fix lint issues * :wrench: use package specific linter, remove tslint command * :hammer: resolve build issue, sync dependencies * :wrench: change lint command Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>
2021-08-29 11:58:11 -07:00
// eslint-disable-next-line import/no-cycle
2019-06-23 03:35:23 -07:00
import {
CredentialTypes,
2019-06-23 03:35:23 -07:00
Db,
ICredentialsTypeData,
2019-12-19 14:07:55 -08:00
ITransferNodeTypes,
2019-06-23 03:35:23 -07:00
IWorkflowErrorData,
2020-10-22 06:46:03 -07:00
IWorkflowExecutionDataProcess,
2019-06-23 03:35:23 -07:00
NodeTypes,
feat: Add User Management (#2636) * ✅ adjust tests * 🛠 refactor user invites to be indempotent (#2791) * 🔐 Encrypt SMTP pass for user management backend (#2793) * :package: Add crypto-js to /cli * :package: Update package-lock.json * :sparkles: Create type for SMTP config * :zap: Encrypt SMTP pass * :zap: Update format for `userManagement.emails.mode` * :zap: Update format for `binaryDataManager.mode` * :zap: Update format for `logs.level` * :fire: Remove logging * :shirt: Fix lint * 👰 n8n 2826 um wedding FE<>BE (#2789) * remove mocks * update authorization func * lock down default role * 🐛 fix requiring authentication for OPTIONS requests * :bug: fix cors and cookie issues in dev * update setup route Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * update telemetry * 🐛 preload role for users * :bug: remove auth for password reset routes * 🐛 fix forgot-password flow * :zap: allow workflow tag disabling * update telemetry init * add reset * clear error notifications on signin * remove load settings from node view * remove user id from user state * inherit existing user props * go back in history on button click * use replace to force redirect * update stories * :zap: add env check for tag create * :test_tube: Add `/users` tests for user management backend (#2790) * :zap: Refactor users namespace * :zap: Adjust fillout endpoint * :zap: Refactor initTestServer arg * :pencil2: Specify agent type * :pencil2: Specify role type * :zap: Tighten `/users/:id` check * :sparkles: Add initial tests * :truck: Reposition init server map * :zap: Set constants in `validatePassword()` * :zap: Tighten `/users/:id` check * :zap: Improve checks in `/users/:id` * :sparkles: Add tests for `/users/:id` * :package: Update package-lock.json * :zap: Simplify expectation * :zap: Reuse util for authless agent * :truck: Make role names consistent * :blue_book: Tighten namespaces map type * :fire: Remove unneeded default arg * :sparkles: Add tests for `POST /users` * :blue_book: Create test SMTP account type * :pencil2: Improve wording * :art: Formatting * :fire: Remove temp fix * :zap: Replace helper with config call * :zap: Fix failing tests * :fire: Remove outdated test * :fire: Remove unused helper * :zap: Increase readability of domain fetcher * :zap: Refactor payload validation * :fire: Remove repetition * :rewind: Restore logging * :zap: Initialize logger in tests * :fire: Remove redundancy from check * :truck: Move `globalOwnerRole` fetching to global scope * :fire: Remove unused imports * :truck: Move random utils to own module * :truck: Move test types to own module * :pencil2: Add dividers to utils * :pencil2: Reorder `initTestServer` param docstring * :pencil2: Add TODO comment * :zap: Dry up member creation * :zap: Tighten search criteria * :test_tube: Add expectation to `GET /users` * :zap: Create role fetcher utils * :zap: Create one more role fetch util * :fire: Remove unneeded DB query * :test_tube: Add expectation to `POST /users` * :test_tube: Add expectation to `DELETE /users/:id` * :test_tube: Add another expectation to `DELETE /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :test_tube: Adjust expectations in `POST /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :shirt: Fix build * :zap: Update method * :blue_book: Fix `userToDelete` type * :zap: Refactor `createAgent()` * :zap: Make role fetching global * :zap: Optimize roles fetching * :zap: Centralize member creation * :zap: Refactor truncation helper * :test_tube: Add teardown to `DELETE /users/:id` * :test_tube: Add DB expectations to users tests * :fire: Remove pass validation due to hash * :pencil2: Improve pass validation error message * :zap: Improve owner pass validation * :zap: Create logger initialization helper * :zap: Optimize helpers * :zap: Restructure `getAllRoles` helper * :test_tube: Add password reset flow tests for user management backend (#2807) * :zap: Refactor users namespace * :zap: Adjust fillout endpoint * :zap: Refactor initTestServer arg * :pencil2: Specify agent type * :pencil2: Specify role type * :zap: Tighten `/users/:id` check * :sparkles: Add initial tests * :truck: Reposition init server map * :zap: Set constants in `validatePassword()` * :zap: Tighten `/users/:id` check * :zap: Improve checks in `/users/:id` * :sparkles: Add tests for `/users/:id` * :package: Update package-lock.json * :zap: Simplify expectation * :zap: Reuse util for authless agent * :truck: Make role names consistent * :blue_book: Tighten namespaces map type * :fire: Remove unneeded default arg * :sparkles: Add tests for `POST /users` * :blue_book: Create test SMTP account type * :pencil2: Improve wording * :art: Formatting * :fire: Remove temp fix * :zap: Replace helper with config call * :zap: Fix failing tests * :fire: Remove outdated test * :sparkles: Add tests for password reset flow * :pencil2: Fix test wording * :zap: Set password reset namespace * :fire: Remove unused helper * :zap: Increase readability of domain fetcher * :zap: Refactor payload validation * :fire: Remove repetition * :rewind: Restore logging * :zap: Initialize logger in tests * :fire: Remove redundancy from check * :truck: Move `globalOwnerRole` fetching to global scope * :fire: Remove unused imports * :truck: Move random utils to own module * :truck: Move test types to own module * :pencil2: Add dividers to utils * :pencil2: Reorder `initTestServer` param docstring * :pencil2: Add TODO comment * :zap: Dry up member creation * :zap: Tighten search criteria * :test_tube: Add expectation to `GET /users` * :zap: Create role fetcher utils * :zap: Create one more role fetch util * :fire: Remove unneeded DB query * :test_tube: Add expectation to `POST /users` * :test_tube: Add expectation to `DELETE /users/:id` * :test_tube: Add another expectation to `DELETE /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :test_tube: Adjust expectations in `POST /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :blue_book: Add namespace name to type * :truck: Adjust imports * :zap: Optimize `globalOwnerRole` fetching * :test_tube: Add expectations * :shirt: Fix build * :shirt: Fix build * :zap: Update method * :zap: Update method * :test_tube: Fix `POST /change-password` test * :blue_book: Fix `userToDelete` type * :zap: Refactor `createAgent()` * :zap: Make role fetching global * :zap: Optimize roles fetching * :zap: Centralize member creation * :zap: Refactor truncation helper * :test_tube: Add teardown to `DELETE /users/:id` * :test_tube: Add DB expectations to users tests * :zap: Refactor as in users namespace * :test_tube: Add expectation to `POST /change-password` * :fire: Remove pass validation due to hash * :pencil2: Improve pass validation error message * :zap: Improve owner pass validation * :zap: Create logger initialization helper * :zap: Optimize helpers * :zap: Restructure `getAllRoles` helper * :zap: Update `truncate` calls * :bug: return 200 for non-existing user * ✅ fix tests for forgot-password and user creation * Update packages/editor-ui/src/components/MainSidebar.vue Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/components/Telemetry.vue Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * :truck: Fix imports * :zap: reset password just if password exists * Fix validation at `PATCH /workfows/:id` (#2819) * :bug: Validate entity only if workflow * :shirt: Fix build * 🔨 refactor response from user creation * 🐛 um email invite fix (#2833) * update users invite * fix notificaitons stacking on top of each other * remove unnessary check * fix type issues * update structure * fix types * 🐘 database migrations UM + password reset expiration (#2710) * Add table prefix and assign existing workflows and credentials to owner for sqlite * Added user management migration to MySQL * Fixed some missing table prefixes and removed unnecessary user id * Created migration for postgres and applies minor fixes * Fixed migration for sqlite by removing the unnecessary index and for mysql by removing unnecessary user data * Added password reset token expiration * Addressing comments made by Ben * ⚡️ add missing tablePrefix * ✅ fix tests + add tests for expiring pw-reset-token Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :zap: treat skipped personalizationSurvey as not answered * :bug: removing active workflows when deleting user, :bug: fix reinvite, :bug: fix resolve-signup-token, 🐘 remove workflowname uniqueness * ✅ Add DB state check tests (#2841) * :fire: Remove unneeded import * :fire: Remove unneeded vars * :pencil2: Improve naming * :test_tube: Add expectations to `POST /owner` * :test_tube: Add expectations to `PATCH /me` * :test_tube: Add expectation to `PATCH /me/password` * :pencil2: Clarify when owner is owner shell * :test_tube: Add more expectations * :rewind: Restore package-lock to parent branch state * Add logging to user management endpoints v2 (#2836) * :zap: Initialize logger in tests * :zap: Add logs to mailer * :zap: Add logs to middleware * :zap: Add logs to me endpoints * :zap: Add logs to owner endpoints * :zap: Add logs to pass flow endpoints * :zap: Add logs to users endpoints * :blue_book: Improve typings * :zap: Merge two logs into one * :zap: Adjust log type * :zap: Add password reset email log * :pencil2: Reword log message * :zap: Adjust log meta object * :zap: Add total to log * :pencil2: Add detail to log message * :pencil2: Reword log message * :pencil2: Reword log message * :bug: Make total users to set up accurate * :pencil2: Reword `Logger.debug()` messages * :pencil2: Phrasing change for consistency * :bug: Fix ID overridden in range query * :hammer: small refactoring * 🔐 add auth to push-connection * 🛠 ✅ Create credentials namespace and add tests (#2831) * :test_tube: Fix failing test * :blue_book: Improve `createAgent` signature * :truck: Fix `LoggerProxy` import * :sparkles: Create credentials endpoints namespace * :test_tube: Set up initial tests * :zap: Add validation to model * :zap: Adjust validation * :test_tube: Add test * :truck: Sort creds endpoints * :pencil2: Plan out pending tests * :test_tube: Add deletion tests * :test_tube: Add patch tests * :test_tube: Add get cred tests * :truck: Hoist import * :pencil2: Make test descriptions consistent * :pencil2: Adjust description * :test_tube: Add missing test * :pencil2: Make get descriptions consistent * :rewind: Undo line break * :zap: Refactor to simplify `saveCredential` * :test_tube: Add non-owned tests for owner * :pencil2: Improve naming * :pencil2: Add clarifying comments * :truck: Improve imports * :zap: Initialize config file * :fire: Remove unneeded import * :truck: Rename dir * :zap: Adjust deletion call * :zap: Adjust error code * :pencil2: Touch up comment * :zap: Optimize fetching with `@RelationId` * :test_tube: Add expectations * :zap: Simplify mock calls * :blue_book: Set deep readonly to object constants * :fire: Remove unused param and encryption key * :zap: Add more `@RelationId` calls in models * :rewind: Restore * :bug: no auth for .svg * 🛠 move auth cookie name to constant; 🐛 fix auth for push-connection * ✅ Add auth middleware tests (#2853) * :zap: Simplify existing suite * :test_tube: Validate that auth cookie exists * :pencil2: Move comment * :fire: Remove unneeded imports * :pencil2: Add clarifying comments * :pencil2: Document auth endpoints * :test_tube: Add middleware tests * :pencil2: Fix typos Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com> * 🔥 Remove test description wrappers (#2874) * :fire: Remove /owner test wrappers * :fire: Remove auth middleware test wrappers * :fire: Remove auth endpoints test wrappers * :fire: Remove overlooked middleware wrappers * :fire: Remove me namespace test wrappers Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * ✨ Runtime checks for credentials load and execute workflows (#2697) * Runtime checks for credentials load and execute workflows * Fixed from reviewers * Changed runtime validation for credentials to be on start instead of on demand * Refactored validations to use user id instead of whole User instance * Removed user entity from workflow project because it is no longer needed * General fixes and improvements to runtime checks * Remove query builder and improve styling * Fix lint issues * :zap: remove personalizationAnswers when fetching all users * ✅ fix failing get all users test * ✅ check authorization routes also for authentication * :bug: fix defaults in reset command * 🛠 refactorings from walkthrough (#2856) * :zap: Make `getTemplate` async * :zap: Remove query builder from `getCredentials` * :zap: Add save manual executions log message * :rewind: Restore and hide migrations logs * :zap: Centralize ignore paths check * :shirt: Fix build * :truck: Rename `hasOwner` to `isInstanceOwnerSetUp` * :zap: Add `isSetUp` flag to `User` * :zap: Add `isSetUp` to FE interface * :zap: Adjust `isSetUp` checks on FE * :shirt: Fix build * :zap: Adjust `isPendingUser()` check * :truck: Shorten helper name * :zap: Refactor as `isPending` per feedback * :pencil2: Update log message * :zap: Broaden check * :fire: Remove unneeded relation * :zap: Refactor query * :fire: Re-remove logs from migrations * 🛠 set up credentials router (#2882) * :zap: Refactor creds endpoints into router * :test_tube: Refactor creds tests to use router * :truck: Rename arg for consistency * :truck: Move `credentials.api.ts` outside /public * :truck: Rename constant for consistency * :blue_book: Simplify types * :fire: Remove unneeded arg * :truck: Rename router to controller * :zap: Shorten endpoint * :zap: Update `initTestServer()` arg * :zap: Mutate response body in GET /credentials * 🏎 improve performance of type cast for FE Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :bug: remove GET /login from auth * 🔀 merge master + FE update (#2905) * :sparkles: Add Templates (#2720) * Templates Bugs / Fixed Various Bugs / Multiply Api Request, Carousel Gradient, Core Nodes Filters ... * Updated MainSidebar Paddings * N8N-Templates Bugfixing - Remove Unnecesairy Icon (Shape), Refatctor infiniteScrollEnabled Prop + updated infiniterScroll functinality * N8N-2853 Fixed Carousel Arrows Bug after Cleaning the SearchBar * fix telemetry init * fix search tracking issues * N8N-2853 Created FilterTemplateNode Constant Array, Filter PlayButton and WebhookRespond from Nodes, Added Box for showing more nodes inside TemplateList, Updated NewWorkflowButton to primary, Fixed Markdown issue with Code * N8N-2853 Removed Placeholder if Workflows Or Collections are not found, Updated the Logic * fix telemetry events * clean up session id * update user inserted event * N8N-2853 Fixed Categories to Moving if the names are long * Add todos * Update Routes on loading * fix spacing * Update Border Color * Update Border Readius * fix filter fn * fix constant, console error * N8N-2853 PR Fixes, Refactoring, Removing unnecesairy code .. * N8N-2853 PR Fixes - Editor-ui Fixes, Refactoring, Removing Dead Code ... * N8N-2853 Refactor Card to LongCard * clean up spacing, replace css var * clean up spacing * set categories as optional in node * replace vars * refactor store * remove unnesssary import * fix error * fix templates view to start * add to cache * fix coll view data * fix categories * fix category event * fix collections carousel * fix initial load and search * fix infinite load * fix query param * fix scrolling issues * fix scroll to top * fix search * fix collections search * fix navigation bug * rename view * update package lock * rename workflow view * rename coll view * update routes * add wrapper component * set session id * fix search tracking * fix session tracking * remove deleted mutation * remove check for unsupported nodes * refactor filters * lazy load template * clean up types * refactor infinte scroll * fix end of search * Fix spacing * fix coll loading * fix types * fix coll view list * fix navigation * rename types * rename state * fix search responsiveness * fix coll view spacing * fix search view spacing * clean up views * set background color * center page not vert * fix workflow view * remove import * fix background color * fix background * clean props * clean up imports * refactor button * update background color * fix spacing issue * rename event * update telemetry event * update endpoints, add loading view, check for endpoint health * remove conolse log * N8N-2853 Fixed Menu Items Padding * replace endpoints * fix type issues * fix categories * N8N-2853 Fixed ParameterInput Placeholder after ElementUI Upgrade * update createdAt * :zap: Fix placeholder in creds config modal * :pencil2: Adjust docstring to `credText` placeholder version * N8N-2853 Optimized * N8N-2853 Optimized code * :zap: Add deployment type to FE settings * :zap: Add deployment type to interfaces * N8N-2853 Removed Animated prop from components * :zap: Add deployment type to store module * :sparkles: Create hiring banner * :zap: Display hiring banner * :rewind: Undo unrelated change * N8N-2853 Refactor TemplateFilters * :zap: Fix indentation * N8N-2853 Reorder items / TemplateList * :shirt: Fix lint * N8N-2853 Refactor TemplateFilters Component * N8N-2853 Reorder TemplateList * refactor template card * update timeout * fix removelistener * fix spacing * split enabled from offline * add spacing to go back * N8N-2853 Fixed Screens for Tablet & Mobile * N8N-2853 Update Stores Order * remove image componet * remove placeholder changes * N8N-2853 Fixed Chinnese Placeholders for El Select Component that comes from the Library Upgrade * N8N-2853 Fixed Vue Agile Console Warnings * N8N-2853 Update Collection Route * :pencil2: Update jobs URL * :truck: Move logging to root component * :zap: Refactor `deploymentType` to `isInternalUser` * :zap: Improve syntax * fix cut bug in readonly view * N8N-3012 Fixed Details section in templates with lots of description, Fixed Mardown Block with overflox-x * N8N-3012 Increased Font-size, Spacing and Line-height of the Categories Items * N8N-3012 Fixed Vue-agile client width error on resize * only delay redirect for root path * N8N-3012 Fixed Carousel Arrows that Disappear * N8N-3012 Make Loading Screen same color as Templates * N8N-3012 Markdown renders inline block as block code * add offline warning * hide log from workflow iframe * update text * make search button larger * N8N-3012 Categories / Tags extended all the way in details section * load data in cred modals * remove deleted message * add external hook * remove import * update env variable description * fix markdown width issue * disable telemetry for demo, add session id to template pages * fix telemetery bugs * N8N-3012 Not found Collections/Wokrkflow * N8N-3012 Checkboxes change order when categories are changed * N8N-3012 Refactor SortedCategories inside TemplateFilters component * fix firefox bug * add telemetry requirements * add error check * N8N-3012 Update GoBackButton to check if Route History is present * N8N-3012 Fixed WF Nodes Icons * hide workflow screenshots * remove unnessary mixins * rename prop * fix design a bit * rename data * clear workspace on destroy * fix copy paste bug * fix disabled state * N8N-3012 Fixed Saving/Leave without saving Modal * fix telemetry issue * fix telemetry issues, error bug * fix error notification * disable workflow menu items on templates * fix i18n elementui issue * Remove Emit - NodeType from HoverableNodeIcon component * TechnicalFixes: NavigateTo passed down as function should be helper * TechnicalFixes: Update NavigateTo function * TechnicalFixes: Add FilterCoreNodes directly as function * check for empty connecitions * fix titles * respect new lines * increase categories to be sliced * rename prop * onUseWorkflow * refactor click event * fix bug, refactor * fix loading story * add default * fix styles at right level of abstraction * add wrapper with width * remove loading blocks component * add story * rename prop * fix spacing * refactor tag, add story * move margin to container * fix tag redirect, remove unnessary check * make version optional * rename view * move from workflows to templates store * remove unnessary change * remove unnessary css * rename component * refactor collection card * add boolean to prevent shrink * clean up carousel * fix redirection bug on save * remove listeners to fix multiple listeners bug * remove unnessary types * clean up boolean set * fix node select bug * rename component * remove unnessary class * fix redirection bug * remove unnessary error * fix typo * fix blockquotes, pre * refactor markdown rendering * remove console log * escape markdown * fix safari bug * load active workflows to fix modal bug * :arrow_up: Update package-lock.json file * :zap: Add n8n version as header Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com> Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :bookmark: Release n8n-workflow@0.88.0 * :arrow_up: Set n8n-workflow@0.88.0 on n8n-core * :bookmark: Release n8n-core@0.106.0 * :arrow_up: Set n8n-core@0.106.0 and n8n-workflow@0.88.0 on n8n-node-dev * :bookmark: Release n8n-node-dev@0.45.0 * :arrow_up: Set n8n-core@0.106.0 and n8n-workflow@0.88.0 on n8n-nodes-base * :bookmark: Release n8n-nodes-base@0.163.0 * :bookmark: Release n8n-design-system@0.12.0 * :arrow_up: Set n8n-design-system@0.12.0 and n8n-workflow@0.88.0 on n8n-editor-ui * :bookmark: Release n8n-editor-ui@0.132.0 * :arrow_up: Set n8n-core@0.106.0, n8n-editor-ui@0.132.0, n8n-nodes-base@0.163.0 and n8n-workflow@0.88.0 on n8n * :bookmark: Release n8n@0.165.0 * fix default user bug * fix bug * update package lock * fix duplicate import * fix settings * fix templates access Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :zap: n8n 2952 personalisation (#2911) * refactor/update survey * update customers * Fix up personalization survey * fix recommendation logic * set to false * hide suggested nodes when empty * use keys * add missing logic * switch types * Fix logic * remove unused constants * add back constant * refactor filtering inputs * hide last input on personal * fix other * ✨ add current pw check for change password (#2912) * fix back button * Add current password input * add to modal * update package.json * delete mock file * delete mock file * get settings func * update router * update package lock * update package lock * Fix invite text * update error i18n * open personalization on search if not set * update error view i18n * update change password * update settings sidebar * remove import * fix sidebar * :goal_net: fix error for credential/workflow not found * update invite modal * ✨ persist skipping owner setup (#2894) * 🚧 added skipInstanceOwnerSetup to DB + route to save skipping * ✨ skipping owner setup persists * ✅ add tests for authorization and /owner/skip-setup * 🛠 refactor FE settings getter * 🛠 move setting setup stop to owner creation * :bug: fix wrong setting of User.isPending * :bug: fix isPending * 🏷 add isPending to PublicUser * :bug: fix unused import * update delete modal * change password modal * remove _label * sort keys * remove key * update key names * fix test endpoint * 🥅 Handle error workflows permissions (#2908) * Handle error workflows permissions * Fixed wrong query format * 🛠 refactor query Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com> * fix ts issue * fix list after ispending changes * fix error page bugs * fix error redirect * fix notification * :bug: fix survey import in migration * fix up spacing * update keys spacing * update keys * add space * update key * fix up more spacing * 🔐 add current password (#2919) * add curr pass * update key names * :bug: stringify tag ids * 🔐 check current password before update * add package lock * fix dep version * update version * 🐛 fix access for instance owner to credentials (#2927) * 🛠 stringify tag id on entity * 🔐 Update password requirements (#2920) * :zap: Update password requirements * :zap: Adjust random helpers * ✅ fix tests for currentPassword check * change redirection, add homepage * fix error view redirection * updated wording * fix setup redirection * update validator * remove successfully * update consumers * update settings redirect * on signup, redirect to homepage * update empty state * add space to emails * remove brackets * add opacity * update spacing * remove border from last user * personal details updated * update redirect on sign up * prevent text wrap * fix notification title line height * remove console log * 🐘 Support testing with Postgres and MySQL (#2886) * :card_file_box: Fix Postgres migrations * :zap: Add DB-specific scripts * :sparkles: Set up test connections * :zap: Add Postgres UUID check * :test_tube: Make test adjustments for Postgres * :zap: Refactor connection logic * :sparkles: Set up double init for Postgres * :pencil2: Add TODOs * :zap: Refactor DB dropping logic * :sparkles: Implement global teardown * :sparkles: Create TypeORM wrappers * :sparkles: Initial MySQL setup * :zap: Clean up Postgres connection options * :zap: Simplify by sharing bootstrap connection name * :card_file_box: Fix MySQL migrations * :fire: Remove comments * :zap: Use ES6 imports * :fire: Remove outdated comments * :zap: Centralize bootstrap connection name handles * :zap: Centralize database types * :pencil2: Update comment * :truck: Rename `findRepository` * :construction: Attempt to truncate MySQL * :sparkles: Implement creds router * :bug: Fix duplicated MySQL bootstrap * :bug: Fix misresolved merge conflict * :card_file_box: Fix tags migration * :card_file_box: Fix MySQL UM migration * :bug: Fix MySQL parallelization issues * :blue_book: Augment TypeORM to prevent error * :fire: Remove comments * :sparkles: Support one sqlite DB per suite run * :truck: Move `testDb` to own module * :fire: Deduplicate bootstrap Postgres logic * :fire: Remove unneeded comment * :zap: Make logger init calls consistent * :pencil2: Improve comment * :pencil2: Add dividers * :art: Improve formatting * :fire: Remove duplicate MySQL global setting * :truck: Move comment * :zap: Update default test script * :fire: Remove unneeded helper * :zap: Unmarshal answers from Postgres * :bug: Phase out `isTestRun` * :zap: Refactor `isEmailSetup` * :fire: Remove unneeded imports * :zap: Handle bootstrap connection errors * :fire: Remove unneeded imports * :fire: Remove outdated comments * :pencil2: Fix typos * :truck: Relocate `answersFormatter` * :rewind: Undo package.json miscommit * :fire: Remove unneeded import * :zap: Refactor test DB prefixing * :zap: Add no-leftover check to MySQL * :package: Update package.json * :zap: Autoincrement on simulated MySQL truncation * :fire: Remove debugging queries * ✏️ fix email template link expiry * 🔥 remove unused import * ✅ fix testing email not sent error * fix duplicate import * add package lock * fix export * change opacity * fix text issue * update action box * update error title * update forgot password * update survey * update product text * remove unset fields * add category to page events * remove duplicate import * update key * update key * update label type * 🎨 um/fe review (#2946) * :whale: Update Node.js versions of Docker images to 16 * :bug: Fix that some keyboard shortcuts did no longer work * N8N-3057 Fixed Keyboard shortcuts no longer working on / Fixed callDebounced function * N8N-3057 Update Debounce Function * N8N-3057 Refactor callDebounce function * N8N-3057 Update Dobounce Function * :bug: Fix issue with tooltips getting displayed behind node details view * fix tooltips z-index * move all element ui components * update package lock * :bug: Fix credentials list load issue (#2931) * always fetch credentials * only fetch credentials once * :zap: Allow to disable hiring banner (#2902) * :sparkles: Add flag * :zap: Adjust interfaces * :zap: Adjust store module * :zap: Adjust frontend settings * :zap: Adjust frontend display * :bug: Fix issue that ctrl + o did behave wrong on workflow templates page (#2934) * N8N-3094 Workflow Templates cmd-o acts on the Preview/Iframe * N8N-3094 Workflow Templates cmd-o acts on the Preview/Iframe * disable shortcuts for preview Co-authored-by: Mutasem <mutdmour@gmail.com> * :arrow_up: Update package-lock.json file * :bug: Fix sorting by field in Baserow Node (#2942) This fixes a bug which currently leads to the "Sorting" option of the node to be ignored. * :bug: Fix some i18n line break issues * :sparkles: Add Odoo Node (#2601) * added odoo scaffolding * update getting data from odoo instance * added scaffolding for main loop and request functions * added functions for CRUD opperations * improoved error handling for odooJSONRPCRequest * updated odoo node and fixing nodelinter issues * fixed alpabetical order * fixed types in odoo node * fixing linter errors * fixing linter errors * fixed data shape returned from man loop * updated node input types, added fields list to models * update when custom resource is selected options for fields list will be populated dynamicly * minor fixes * :hammer: fixed credential test, updating CRUD methods * :hammer: added additional fields to crm resource * :hammer: added descriptions, fixed credentials test bug * :hammer: standardize node and descriptions design * :hammer: removed comments * :hammer: added pagination to getAll operation * :zap: removed leftover function from previous implementation, removed required from optional fields * :zap: fixed id field, added indication of type and if required to field description, replaced string input in filters to fetched list of fields * :hammer: fetching list of models from odoo, added selection of fields to be returned to predefined models, fixes accordingly to review * :zap: Small improvements * :hammer: extracted adress fields into collection, changed fields to include in descriptions, minor tweaks * :zap: Improvements * :hammer: working on review * :hammer: fixed linter errors * :hammer: review wip * :hammer: review wip * :hammer: review wip * :zap: updated display name for URL in credentials * :hammer: added checks for valid id to delete and update * :zap: Minor improvements Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :bug: Handle Wise SCA requests (#2734) * :zap: Improve Wise error message after previous change * fix duplicate import * add package lock * fix export * change opacity * fix text issue * update action box * update error title * update forgot password * update survey * update product text * remove unset fields * add category to page events * remove duplicate import * update key * update key Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Tom <19203795+that-one-tom@users.noreply.github.com> Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com> Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: pemontto <939704+pemontto@users.noreply.github.com> * Move owner skip from settings * 🐛 SMTP fixes (#2937) * :fire: Remove `UM_` from SMTP env vars * :fire: Remove SMTP host default value * :zap: Update sender value * :zap: Update invite template * :zap: Update password reset template * :zap: Update `N8N_EMAIL_MODE` default value * :fire: Remove `EMAIL` from all SMTP vars * :sparkles: Implement `verifyConnection()` * :truck: Reposition comment * :pencil2: Fix typo * :pencil2: Minor env var documentation improvements * :art: Fix spacing * :art: Fix spacing * :card_file_box: Remove SMTP settings cache * :zap: Adjust log message * :zap: Update error message * :pencil2: Fix template typo * :pencil2: Adjust wording * :zap: Interpolate email into success toast * :pencil2: Adjust base message in `verifyConnection()` * :zap: Verify connection on password reset * :zap: Bring up POST /users SMTP check * :bug: remove cookie if cookie is not valid * :zap: verify connection on instantiation Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * 🔊 create logger helper for migrations (#2944) * 🔥 remove unused database * :loud_sound: add migration logging for sqlite * 🔥 remove unnecessary index creation * ⚡️ change log level to warn * 🐛 Fix issue with workflow process to initialize db connection correctly (#2948) * ✏️ update error messages for webhhook run/activation * 📈 Implement telemetry events (#2868) * Implement basic telemetry events * Fixing user id as part of the telemetry data * Added user id to be part of the tracked data * :sparkles: Create telemetry mock * :test_tube: Fix tests with telemetry mock * :test_tube: Fix missing key in authless endpoint * :blue_book: Create authless request type * :fire: Remove log * :bug: Fix `migration_strategy` assignment * :blue_book: Remove `instance_id` from `ITelemetryUserDeletionData` * :zap: Simplify concatenation * :zap: Simplify `track()` call signature * Fixed payload of telemetry to always include user_id * Fixing minor issues Co-authored-by: Iván Ovejero <ivov.src@gmail.com> * 🔊 Added logs to credentials, executions and workflows (#2915) * Added logs to credentials, executions and workflows * Some updates according to ivov's feedback * :zap: update log levels * ✅ fix tests Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :bug: fix telemetry error * fix conflicts with master * fix duplicate * add package-lock * :bug: Um/fixes (#2952) * add initials to avatar * redirect to signin if invalid token * update pluralization * add auth page category * data transferred * touch up setup page * update button to add cursor * fix personalization modal not closing * ✏️ fix environment name * 🐛 fix disabling UM * 🐛 fix email setup flag * 🐛 FE fixes 1 (#2953) * add initials to avatar * redirect to signin if invalid token * update pluralization * add auth page category * data transferred * touch up setup page * update button to add cursor * fix personalization modal not closing * capitalize labels, refactor text * Fixed the issue with telemetry data missing for personalization survey * Changed invite email text * 🐛 Fix quotes issue with postgres migration (#2958) * Changed text for invite link * 🐛 fix reset command for mysql * ✅ fix race condition in test DB creation * 🔐 block user creation if UM is disabled * 🥅 improve smtp setup issue error * :zap: update error message * refactor route rules * set package lock * fix access * remove capitalize * update input labels * refactor heading * change span to fragment * add route types * refactor views * ✅ fix increase timeout for mysql * :zap: correct logic of error message * refactor view names * :zap: update randomString * 📈 Added missing event regarding failed emails (#2964) * replace label with info * 🛠 refactor JWT-secret creation * remove duplicate key * remove unused part * remove semicolon * fix up i18n pattern * update translation keys * update urls * support i18n in nds * fix how external keys are handled * add source * 💥 update timestamp of UM migration * ✏️ small message updates * fix tracking * update notification line-height * fix avatar opacity * fix up empty state * shift focus to input * 🔐 Disable basic auth after owner has been set up (#2973) * Disable basic auth after owner has been set up * Remove unnecessary comparison * rename modal title * 🐛 use pgcrypto extension for uuid creation (#2977) * 📧 Added public url variable for emails (#2967) * Added public url variable for emails * Fixed base url for reset password - the current implementation overrides possibly existing path * Change variable name to editorUrl * Using correct name editorUrl for emails * Changed variable description * Improved base url naming and appending path so it remains consistent * Removed trailing slash from editor base url * 🌐 fix i18n pattern (#2970) * fix up i18n pattern * update translation keys * update urls * support i18n in nds * fix how external keys are handled * add source * Um/fixes 1000 (#2980) * fix select issue * 😫 hacky solution to circumvent pgcrypto (#2979) * fix owner bug after transfer. always fetch latest credentials * add confirmation modal to setup * Use webhook url as fallback when editor url is not defined * fix enter bug * update modal * update modal * update modal text, fix bug in settings view * Updating editor url to not append path * rename keys Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com> Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> Co-authored-by: Omar Ajoue <krynble@gmail.com> Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> Co-authored-by: Tom <19203795+that-one-tom@users.noreply.github.com> Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com> Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: pemontto <939704+pemontto@users.noreply.github.com>
2022-03-14 06:46:32 -07:00
WhereClause,
WorkflowRunner,
:art: Set up linting and formatting (#2120) * :arrow_up: Upgrade TS to 4.3.5 * :shirt: Add ESLint configs * :art: Add Prettier config * :package: Add deps and commands * :zap: Adjust global .editorconfig to new ruleset * :fire: Remove unneeded local .editorconfig * :package: Update deps in editor-ui * :hammer: Limit Prettier to only TS files * :zap: Add recommended VSCode extensions * :shirt: Fix build * :fire: Remove Vue setting from global config * :zap: Disable prefer-default-export per feedback * :pencil2: Add forgotten divider * :shirt: Disable no-plusplus * :shirt: Disable class-methods-use-this * :pencil2: Alphabetize overrides * :shirt: Add one-var consecutive override * :rewind: Revert one-var consecutive override This reverts commit b9252cf935659ba6d76727ad484a1d3c00008fcc. * 🎨 👕 Lint and format workflow package (#2121) * :art: Format /workflow package * :shirt: Lint /workflow package * :art: Re-format /workflow package * :shirt: Re-lint /workflow package * :pencil2: Fix typo * :zap: Consolidate if-checks * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format node-dev package (#2122) * :art: Format /node-dev package * :zap: Exclude templates from ESLint config This keeps the templates consistent with the codebase while preventing lint exceptions from being made part of the templates. * :shirt: Lint /node-dev package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * 🎨 👕 Lint and format core package (#2123) * :art: Format /core package * :shirt: Lint /core package * :art: Re-format /core package * :shirt: Re-lint /core package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format cli package (#2124) * :art: Format /cli package * :shirt: Exclude migrations from linting * :shirt: Lint /cli package * :art: Re-format /cli package * :shirt: Re-lint /cli package * :shirt: Fix build * :fire: Remove prefer-default-export exceptions * :zap: Update exceptions in ActiveExecutions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 👕 fix lint issues * :wrench: use package specific linter, remove tslint command * :hammer: resolve build issue, sync dependencies * :wrench: change lint command Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>
2021-08-29 11:58:11 -07:00
} from '.';
2019-06-23 03:35:23 -07:00
import config from '../config';
:art: Set up linting and formatting (#2120) * :arrow_up: Upgrade TS to 4.3.5 * :shirt: Add ESLint configs * :art: Add Prettier config * :package: Add deps and commands * :zap: Adjust global .editorconfig to new ruleset * :fire: Remove unneeded local .editorconfig * :package: Update deps in editor-ui * :hammer: Limit Prettier to only TS files * :zap: Add recommended VSCode extensions * :shirt: Fix build * :fire: Remove Vue setting from global config * :zap: Disable prefer-default-export per feedback * :pencil2: Add forgotten divider * :shirt: Disable no-plusplus * :shirt: Disable class-methods-use-this * :pencil2: Alphabetize overrides * :shirt: Add one-var consecutive override * :rewind: Revert one-var consecutive override This reverts commit b9252cf935659ba6d76727ad484a1d3c00008fcc. * 🎨 👕 Lint and format workflow package (#2121) * :art: Format /workflow package * :shirt: Lint /workflow package * :art: Re-format /workflow package * :shirt: Re-lint /workflow package * :pencil2: Fix typo * :zap: Consolidate if-checks * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format node-dev package (#2122) * :art: Format /node-dev package * :zap: Exclude templates from ESLint config This keeps the templates consistent with the codebase while preventing lint exceptions from being made part of the templates. * :shirt: Lint /node-dev package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * 🎨 👕 Lint and format core package (#2123) * :art: Format /core package * :shirt: Lint /core package * :art: Re-format /core package * :shirt: Re-lint /core package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format cli package (#2124) * :art: Format /cli package * :shirt: Exclude migrations from linting * :shirt: Lint /cli package * :art: Re-format /cli package * :shirt: Re-lint /cli package * :shirt: Fix build * :fire: Remove prefer-default-export exceptions * :zap: Update exceptions in ActiveExecutions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 👕 fix lint issues * :wrench: use package specific linter, remove tslint command * :hammer: resolve build issue, sync dependencies * :wrench: change lint command Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>
2021-08-29 11:58:11 -07:00
// eslint-disable-next-line import/no-cycle
:sparkles: Add tagging of workflows (#1647) * clean up dropdown * clean up focusoncreate * :zap: Ignore mistaken ID in POST /workflows * :zap: Fix undefined tag ID in PATCH /workflows * :zap: Shorten response for POST /tags * remove scss mixins * clean up imports * :zap: Implement validation with class-validator * address ivan's comments * implement modals * Fix lint issues * fix disabling shortcuts * fix focus issues * fix focus issues * fix focus issues with modal * fix linting issues * use dispatch * use constants for modal keys * fix focus * fix lint issues * remove unused prop * add modal root * fix lint issues * remove unused methods * fix shortcut * remove max width * :zap: Fix duplicate entry error for pg and MySQL * update rename messaging * update order of buttons * fix firefox overflow on windows * fix dropdown height * :hammer: refactor tag crud controllers * 🧹 remove unused imports * use variable for number of items * fix dropdown spacing * :zap: Restore type to fix build * :zap: Fix post-refactor PATCH /workflows/:id * :zap: Fix PATCH /workflows/:id for zero tags * :zap: Fix usage count becoming stringified * address max's comments * fix filter spacing * fix blur bug * address most of ivan's comments * address tags type concern * remove defaults * :zap: return tag id as string * :hammer: add hooks to tag CUD operations * 🏎 simplify timestamp pruning * remove blur event * fix onblur bug * :zap: Fix fs import to fix build * address max's comments * implement responsive tag container * fix lint issues * Set default dates in entities * :shirt: Fix lint in migrations * update tag limits * address ivan's comments * remove rename, refactor header, implement new designs for save, remove responsive tag container * update styling * update styling * implement responsive tag container * implement header tags edit * implement header tags edit * fix lint issues * implement expandable input * minor fixes * minor fixes * use variable * rename save as * duplicate fixes * :zap: Implement unique workflow names * :zap: Create /workflows/new endpoint * minor edit fixes * lint fixes * style fixes * hook up saving name * hook up tags * clean up impl * fix dirty state bug * update limit * update notification messages * on click outside * fix minor bug with count * lint fixes * :zap: Add query string params to /workflows/new * handle minor edge cases * handle minor edge cases * handle minor bugs; fix firefox dropdown issue * Fix min width * apply tags only after api success * remove count fix * :construction: Adjust to new qs requirements * clean up workflow tags impl, fix tags delete bug * fix minor issue * fix minor spacing issue * disable wrap for ops * fix viewport root; save on click in dropdown * save button loading when saving name/tags * implement max width on tags container * implement cleaner create experience * disable edit while updating * codacy hex color * refactor tags container * fix clickability * fix workflow open and count * clean up structure * fix up lint issues * :zap: Create migrations for unique workflow names * fix button size * increase workflow name limit for larger screen * tslint fixes * disable responsiveness for workflow modal * rename event * change min width for tags * clean up pr * :zap: Adjust quotes in MySQL migration * :zap: Adjust quotes in Postgres migration * address max's comments on styles * remove success toasts * add hover mode to name * minor fixes * refactor name preview * fix name input not to jiggle * finish up name input * Fix up add tags * clean up param * clean up scss * fix resizing name * fix resizing name * fix resize bug * clean up edit spacing * ignore on esc * fix input bug * focus input on clear * build * fix up add tags clickablity * remove scrollbars * move into folders * clean up multiple patch req * remove padding top from edit * update tags on enter * build * rollout blur on enter behavior * rollout esc behavior * fix tags bug when duplicating tags * move key to reload tags * update header spacing * build * update hex case * refactor workflow title * remove unusued prop * keep focus on error, fix bug on error * Fix bug with name / tags toggle on error * impl creating new workflow name * :zap: Refactor endpoint per new guidelines * support naming endpoint * :zap: Refactor to support numeric suffixes * :shirt: Lint migrations for unique workflow names * :zap: Add migrations set default dates to indexes * fix connection push bug * :zap: Lowercase default workflow name * :zap: Add prefixes to set default dates migration * :zap: Fix indentation on default dates migrations * :zap: Add temp ts-ignore for unrelated change * :zap: Adjust default dates migration for MySQL Remove change to data column in credentials_entity, already covered by Omar's migration. Also, fix quotes from table prefix addition. * :zap: Adjust quotes in dates migration for PG * fix safari color bug * fix count bug * fix scroll bugs in dropdown * expand filter size * apply box-sizing to main header * update workflow names in executions to be wrapped by quotes * fix bug where key is same in dropdown * fix firefox bug * move up push connection session * :hammer: Remove mistakenly added nullable property * :fire: Remove unneeded index drop-create (PG) * :fire: Remove unneeded table copying * :zap: Merge dates migration with tags migration * :hammer: Refactor endpoint and make wf name env * dropdown colors in firefox * update colors to use variables * update thumb color * change error message * remove 100 char maximum * fix bug with saving tags dropdowns multiple times * update error message when no name * :zap: Update name missing toast message * :zap: Update workflow already exists message * disable saving for executions * fix bug causing modal to close * make tags in workflow open clickable * increase workflow limit to 3 * remove success notifications * update header spacing * escape tag names * update tag and table colors * remove tags from export * build * clean up push connection dependencies * address ben's comments * revert tags optional interface * address comments * update duplicate message * build * fix eol * add one more eol * :zap: Update comment * add hover style for workflow open, fix up font weight Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com>
2021-05-29 11:31:21 -07:00
import { WorkflowEntity } from './databases/entities/WorkflowEntity';
feat: Add User Management (#2636) * ✅ adjust tests * 🛠 refactor user invites to be indempotent (#2791) * 🔐 Encrypt SMTP pass for user management backend (#2793) * :package: Add crypto-js to /cli * :package: Update package-lock.json * :sparkles: Create type for SMTP config * :zap: Encrypt SMTP pass * :zap: Update format for `userManagement.emails.mode` * :zap: Update format for `binaryDataManager.mode` * :zap: Update format for `logs.level` * :fire: Remove logging * :shirt: Fix lint * 👰 n8n 2826 um wedding FE<>BE (#2789) * remove mocks * update authorization func * lock down default role * 🐛 fix requiring authentication for OPTIONS requests * :bug: fix cors and cookie issues in dev * update setup route Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * update telemetry * 🐛 preload role for users * :bug: remove auth for password reset routes * 🐛 fix forgot-password flow * :zap: allow workflow tag disabling * update telemetry init * add reset * clear error notifications on signin * remove load settings from node view * remove user id from user state * inherit existing user props * go back in history on button click * use replace to force redirect * update stories * :zap: add env check for tag create * :test_tube: Add `/users` tests for user management backend (#2790) * :zap: Refactor users namespace * :zap: Adjust fillout endpoint * :zap: Refactor initTestServer arg * :pencil2: Specify agent type * :pencil2: Specify role type * :zap: Tighten `/users/:id` check * :sparkles: Add initial tests * :truck: Reposition init server map * :zap: Set constants in `validatePassword()` * :zap: Tighten `/users/:id` check * :zap: Improve checks in `/users/:id` * :sparkles: Add tests for `/users/:id` * :package: Update package-lock.json * :zap: Simplify expectation * :zap: Reuse util for authless agent * :truck: Make role names consistent * :blue_book: Tighten namespaces map type * :fire: Remove unneeded default arg * :sparkles: Add tests for `POST /users` * :blue_book: Create test SMTP account type * :pencil2: Improve wording * :art: Formatting * :fire: Remove temp fix * :zap: Replace helper with config call * :zap: Fix failing tests * :fire: Remove outdated test * :fire: Remove unused helper * :zap: Increase readability of domain fetcher * :zap: Refactor payload validation * :fire: Remove repetition * :rewind: Restore logging * :zap: Initialize logger in tests * :fire: Remove redundancy from check * :truck: Move `globalOwnerRole` fetching to global scope * :fire: Remove unused imports * :truck: Move random utils to own module * :truck: Move test types to own module * :pencil2: Add dividers to utils * :pencil2: Reorder `initTestServer` param docstring * :pencil2: Add TODO comment * :zap: Dry up member creation * :zap: Tighten search criteria * :test_tube: Add expectation to `GET /users` * :zap: Create role fetcher utils * :zap: Create one more role fetch util * :fire: Remove unneeded DB query * :test_tube: Add expectation to `POST /users` * :test_tube: Add expectation to `DELETE /users/:id` * :test_tube: Add another expectation to `DELETE /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :test_tube: Adjust expectations in `POST /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :shirt: Fix build * :zap: Update method * :blue_book: Fix `userToDelete` type * :zap: Refactor `createAgent()` * :zap: Make role fetching global * :zap: Optimize roles fetching * :zap: Centralize member creation * :zap: Refactor truncation helper * :test_tube: Add teardown to `DELETE /users/:id` * :test_tube: Add DB expectations to users tests * :fire: Remove pass validation due to hash * :pencil2: Improve pass validation error message * :zap: Improve owner pass validation * :zap: Create logger initialization helper * :zap: Optimize helpers * :zap: Restructure `getAllRoles` helper * :test_tube: Add password reset flow tests for user management backend (#2807) * :zap: Refactor users namespace * :zap: Adjust fillout endpoint * :zap: Refactor initTestServer arg * :pencil2: Specify agent type * :pencil2: Specify role type * :zap: Tighten `/users/:id` check * :sparkles: Add initial tests * :truck: Reposition init server map * :zap: Set constants in `validatePassword()` * :zap: Tighten `/users/:id` check * :zap: Improve checks in `/users/:id` * :sparkles: Add tests for `/users/:id` * :package: Update package-lock.json * :zap: Simplify expectation * :zap: Reuse util for authless agent * :truck: Make role names consistent * :blue_book: Tighten namespaces map type * :fire: Remove unneeded default arg * :sparkles: Add tests for `POST /users` * :blue_book: Create test SMTP account type * :pencil2: Improve wording * :art: Formatting * :fire: Remove temp fix * :zap: Replace helper with config call * :zap: Fix failing tests * :fire: Remove outdated test * :sparkles: Add tests for password reset flow * :pencil2: Fix test wording * :zap: Set password reset namespace * :fire: Remove unused helper * :zap: Increase readability of domain fetcher * :zap: Refactor payload validation * :fire: Remove repetition * :rewind: Restore logging * :zap: Initialize logger in tests * :fire: Remove redundancy from check * :truck: Move `globalOwnerRole` fetching to global scope * :fire: Remove unused imports * :truck: Move random utils to own module * :truck: Move test types to own module * :pencil2: Add dividers to utils * :pencil2: Reorder `initTestServer` param docstring * :pencil2: Add TODO comment * :zap: Dry up member creation * :zap: Tighten search criteria * :test_tube: Add expectation to `GET /users` * :zap: Create role fetcher utils * :zap: Create one more role fetch util * :fire: Remove unneeded DB query * :test_tube: Add expectation to `POST /users` * :test_tube: Add expectation to `DELETE /users/:id` * :test_tube: Add another expectation to `DELETE /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :test_tube: Adjust expectations in `POST /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :blue_book: Add namespace name to type * :truck: Adjust imports * :zap: Optimize `globalOwnerRole` fetching * :test_tube: Add expectations * :shirt: Fix build * :shirt: Fix build * :zap: Update method * :zap: Update method * :test_tube: Fix `POST /change-password` test * :blue_book: Fix `userToDelete` type * :zap: Refactor `createAgent()` * :zap: Make role fetching global * :zap: Optimize roles fetching * :zap: Centralize member creation * :zap: Refactor truncation helper * :test_tube: Add teardown to `DELETE /users/:id` * :test_tube: Add DB expectations to users tests * :zap: Refactor as in users namespace * :test_tube: Add expectation to `POST /change-password` * :fire: Remove pass validation due to hash * :pencil2: Improve pass validation error message * :zap: Improve owner pass validation * :zap: Create logger initialization helper * :zap: Optimize helpers * :zap: Restructure `getAllRoles` helper * :zap: Update `truncate` calls * :bug: return 200 for non-existing user * ✅ fix tests for forgot-password and user creation * Update packages/editor-ui/src/components/MainSidebar.vue Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/components/Telemetry.vue Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * :truck: Fix imports * :zap: reset password just if password exists * Fix validation at `PATCH /workfows/:id` (#2819) * :bug: Validate entity only if workflow * :shirt: Fix build * 🔨 refactor response from user creation * 🐛 um email invite fix (#2833) * update users invite * fix notificaitons stacking on top of each other * remove unnessary check * fix type issues * update structure * fix types * 🐘 database migrations UM + password reset expiration (#2710) * Add table prefix and assign existing workflows and credentials to owner for sqlite * Added user management migration to MySQL * Fixed some missing table prefixes and removed unnecessary user id * Created migration for postgres and applies minor fixes * Fixed migration for sqlite by removing the unnecessary index and for mysql by removing unnecessary user data * Added password reset token expiration * Addressing comments made by Ben * ⚡️ add missing tablePrefix * ✅ fix tests + add tests for expiring pw-reset-token Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :zap: treat skipped personalizationSurvey as not answered * :bug: removing active workflows when deleting user, :bug: fix reinvite, :bug: fix resolve-signup-token, 🐘 remove workflowname uniqueness * ✅ Add DB state check tests (#2841) * :fire: Remove unneeded import * :fire: Remove unneeded vars * :pencil2: Improve naming * :test_tube: Add expectations to `POST /owner` * :test_tube: Add expectations to `PATCH /me` * :test_tube: Add expectation to `PATCH /me/password` * :pencil2: Clarify when owner is owner shell * :test_tube: Add more expectations * :rewind: Restore package-lock to parent branch state * Add logging to user management endpoints v2 (#2836) * :zap: Initialize logger in tests * :zap: Add logs to mailer * :zap: Add logs to middleware * :zap: Add logs to me endpoints * :zap: Add logs to owner endpoints * :zap: Add logs to pass flow endpoints * :zap: Add logs to users endpoints * :blue_book: Improve typings * :zap: Merge two logs into one * :zap: Adjust log type * :zap: Add password reset email log * :pencil2: Reword log message * :zap: Adjust log meta object * :zap: Add total to log * :pencil2: Add detail to log message * :pencil2: Reword log message * :pencil2: Reword log message * :bug: Make total users to set up accurate * :pencil2: Reword `Logger.debug()` messages * :pencil2: Phrasing change for consistency * :bug: Fix ID overridden in range query * :hammer: small refactoring * 🔐 add auth to push-connection * 🛠 ✅ Create credentials namespace and add tests (#2831) * :test_tube: Fix failing test * :blue_book: Improve `createAgent` signature * :truck: Fix `LoggerProxy` import * :sparkles: Create credentials endpoints namespace * :test_tube: Set up initial tests * :zap: Add validation to model * :zap: Adjust validation * :test_tube: Add test * :truck: Sort creds endpoints * :pencil2: Plan out pending tests * :test_tube: Add deletion tests * :test_tube: Add patch tests * :test_tube: Add get cred tests * :truck: Hoist import * :pencil2: Make test descriptions consistent * :pencil2: Adjust description * :test_tube: Add missing test * :pencil2: Make get descriptions consistent * :rewind: Undo line break * :zap: Refactor to simplify `saveCredential` * :test_tube: Add non-owned tests for owner * :pencil2: Improve naming * :pencil2: Add clarifying comments * :truck: Improve imports * :zap: Initialize config file * :fire: Remove unneeded import * :truck: Rename dir * :zap: Adjust deletion call * :zap: Adjust error code * :pencil2: Touch up comment * :zap: Optimize fetching with `@RelationId` * :test_tube: Add expectations * :zap: Simplify mock calls * :blue_book: Set deep readonly to object constants * :fire: Remove unused param and encryption key * :zap: Add more `@RelationId` calls in models * :rewind: Restore * :bug: no auth for .svg * 🛠 move auth cookie name to constant; 🐛 fix auth for push-connection * ✅ Add auth middleware tests (#2853) * :zap: Simplify existing suite * :test_tube: Validate that auth cookie exists * :pencil2: Move comment * :fire: Remove unneeded imports * :pencil2: Add clarifying comments * :pencil2: Document auth endpoints * :test_tube: Add middleware tests * :pencil2: Fix typos Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com> * 🔥 Remove test description wrappers (#2874) * :fire: Remove /owner test wrappers * :fire: Remove auth middleware test wrappers * :fire: Remove auth endpoints test wrappers * :fire: Remove overlooked middleware wrappers * :fire: Remove me namespace test wrappers Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * ✨ Runtime checks for credentials load and execute workflows (#2697) * Runtime checks for credentials load and execute workflows * Fixed from reviewers * Changed runtime validation for credentials to be on start instead of on demand * Refactored validations to use user id instead of whole User instance * Removed user entity from workflow project because it is no longer needed * General fixes and improvements to runtime checks * Remove query builder and improve styling * Fix lint issues * :zap: remove personalizationAnswers when fetching all users * ✅ fix failing get all users test * ✅ check authorization routes also for authentication * :bug: fix defaults in reset command * 🛠 refactorings from walkthrough (#2856) * :zap: Make `getTemplate` async * :zap: Remove query builder from `getCredentials` * :zap: Add save manual executions log message * :rewind: Restore and hide migrations logs * :zap: Centralize ignore paths check * :shirt: Fix build * :truck: Rename `hasOwner` to `isInstanceOwnerSetUp` * :zap: Add `isSetUp` flag to `User` * :zap: Add `isSetUp` to FE interface * :zap: Adjust `isSetUp` checks on FE * :shirt: Fix build * :zap: Adjust `isPendingUser()` check * :truck: Shorten helper name * :zap: Refactor as `isPending` per feedback * :pencil2: Update log message * :zap: Broaden check * :fire: Remove unneeded relation * :zap: Refactor query * :fire: Re-remove logs from migrations * 🛠 set up credentials router (#2882) * :zap: Refactor creds endpoints into router * :test_tube: Refactor creds tests to use router * :truck: Rename arg for consistency * :truck: Move `credentials.api.ts` outside /public * :truck: Rename constant for consistency * :blue_book: Simplify types * :fire: Remove unneeded arg * :truck: Rename router to controller * :zap: Shorten endpoint * :zap: Update `initTestServer()` arg * :zap: Mutate response body in GET /credentials * 🏎 improve performance of type cast for FE Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :bug: remove GET /login from auth * 🔀 merge master + FE update (#2905) * :sparkles: Add Templates (#2720) * Templates Bugs / Fixed Various Bugs / Multiply Api Request, Carousel Gradient, Core Nodes Filters ... * Updated MainSidebar Paddings * N8N-Templates Bugfixing - Remove Unnecesairy Icon (Shape), Refatctor infiniteScrollEnabled Prop + updated infiniterScroll functinality * N8N-2853 Fixed Carousel Arrows Bug after Cleaning the SearchBar * fix telemetry init * fix search tracking issues * N8N-2853 Created FilterTemplateNode Constant Array, Filter PlayButton and WebhookRespond from Nodes, Added Box for showing more nodes inside TemplateList, Updated NewWorkflowButton to primary, Fixed Markdown issue with Code * N8N-2853 Removed Placeholder if Workflows Or Collections are not found, Updated the Logic * fix telemetry events * clean up session id * update user inserted event * N8N-2853 Fixed Categories to Moving if the names are long * Add todos * Update Routes on loading * fix spacing * Update Border Color * Update Border Readius * fix filter fn * fix constant, console error * N8N-2853 PR Fixes, Refactoring, Removing unnecesairy code .. * N8N-2853 PR Fixes - Editor-ui Fixes, Refactoring, Removing Dead Code ... * N8N-2853 Refactor Card to LongCard * clean up spacing, replace css var * clean up spacing * set categories as optional in node * replace vars * refactor store * remove unnesssary import * fix error * fix templates view to start * add to cache * fix coll view data * fix categories * fix category event * fix collections carousel * fix initial load and search * fix infinite load * fix query param * fix scrolling issues * fix scroll to top * fix search * fix collections search * fix navigation bug * rename view * update package lock * rename workflow view * rename coll view * update routes * add wrapper component * set session id * fix search tracking * fix session tracking * remove deleted mutation * remove check for unsupported nodes * refactor filters * lazy load template * clean up types * refactor infinte scroll * fix end of search * Fix spacing * fix coll loading * fix types * fix coll view list * fix navigation * rename types * rename state * fix search responsiveness * fix coll view spacing * fix search view spacing * clean up views * set background color * center page not vert * fix workflow view * remove import * fix background color * fix background * clean props * clean up imports * refactor button * update background color * fix spacing issue * rename event * update telemetry event * update endpoints, add loading view, check for endpoint health * remove conolse log * N8N-2853 Fixed Menu Items Padding * replace endpoints * fix type issues * fix categories * N8N-2853 Fixed ParameterInput Placeholder after ElementUI Upgrade * update createdAt * :zap: Fix placeholder in creds config modal * :pencil2: Adjust docstring to `credText` placeholder version * N8N-2853 Optimized * N8N-2853 Optimized code * :zap: Add deployment type to FE settings * :zap: Add deployment type to interfaces * N8N-2853 Removed Animated prop from components * :zap: Add deployment type to store module * :sparkles: Create hiring banner * :zap: Display hiring banner * :rewind: Undo unrelated change * N8N-2853 Refactor TemplateFilters * :zap: Fix indentation * N8N-2853 Reorder items / TemplateList * :shirt: Fix lint * N8N-2853 Refactor TemplateFilters Component * N8N-2853 Reorder TemplateList * refactor template card * update timeout * fix removelistener * fix spacing * split enabled from offline * add spacing to go back * N8N-2853 Fixed Screens for Tablet & Mobile * N8N-2853 Update Stores Order * remove image componet * remove placeholder changes * N8N-2853 Fixed Chinnese Placeholders for El Select Component that comes from the Library Upgrade * N8N-2853 Fixed Vue Agile Console Warnings * N8N-2853 Update Collection Route * :pencil2: Update jobs URL * :truck: Move logging to root component * :zap: Refactor `deploymentType` to `isInternalUser` * :zap: Improve syntax * fix cut bug in readonly view * N8N-3012 Fixed Details section in templates with lots of description, Fixed Mardown Block with overflox-x * N8N-3012 Increased Font-size, Spacing and Line-height of the Categories Items * N8N-3012 Fixed Vue-agile client width error on resize * only delay redirect for root path * N8N-3012 Fixed Carousel Arrows that Disappear * N8N-3012 Make Loading Screen same color as Templates * N8N-3012 Markdown renders inline block as block code * add offline warning * hide log from workflow iframe * update text * make search button larger * N8N-3012 Categories / Tags extended all the way in details section * load data in cred modals * remove deleted message * add external hook * remove import * update env variable description * fix markdown width issue * disable telemetry for demo, add session id to template pages * fix telemetery bugs * N8N-3012 Not found Collections/Wokrkflow * N8N-3012 Checkboxes change order when categories are changed * N8N-3012 Refactor SortedCategories inside TemplateFilters component * fix firefox bug * add telemetry requirements * add error check * N8N-3012 Update GoBackButton to check if Route History is present * N8N-3012 Fixed WF Nodes Icons * hide workflow screenshots * remove unnessary mixins * rename prop * fix design a bit * rename data * clear workspace on destroy * fix copy paste bug * fix disabled state * N8N-3012 Fixed Saving/Leave without saving Modal * fix telemetry issue * fix telemetry issues, error bug * fix error notification * disable workflow menu items on templates * fix i18n elementui issue * Remove Emit - NodeType from HoverableNodeIcon component * TechnicalFixes: NavigateTo passed down as function should be helper * TechnicalFixes: Update NavigateTo function * TechnicalFixes: Add FilterCoreNodes directly as function * check for empty connecitions * fix titles * respect new lines * increase categories to be sliced * rename prop * onUseWorkflow * refactor click event * fix bug, refactor * fix loading story * add default * fix styles at right level of abstraction * add wrapper with width * remove loading blocks component * add story * rename prop * fix spacing * refactor tag, add story * move margin to container * fix tag redirect, remove unnessary check * make version optional * rename view * move from workflows to templates store * remove unnessary change * remove unnessary css * rename component * refactor collection card * add boolean to prevent shrink * clean up carousel * fix redirection bug on save * remove listeners to fix multiple listeners bug * remove unnessary types * clean up boolean set * fix node select bug * rename component * remove unnessary class * fix redirection bug * remove unnessary error * fix typo * fix blockquotes, pre * refactor markdown rendering * remove console log * escape markdown * fix safari bug * load active workflows to fix modal bug * :arrow_up: Update package-lock.json file * :zap: Add n8n version as header Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com> Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :bookmark: Release n8n-workflow@0.88.0 * :arrow_up: Set n8n-workflow@0.88.0 on n8n-core * :bookmark: Release n8n-core@0.106.0 * :arrow_up: Set n8n-core@0.106.0 and n8n-workflow@0.88.0 on n8n-node-dev * :bookmark: Release n8n-node-dev@0.45.0 * :arrow_up: Set n8n-core@0.106.0 and n8n-workflow@0.88.0 on n8n-nodes-base * :bookmark: Release n8n-nodes-base@0.163.0 * :bookmark: Release n8n-design-system@0.12.0 * :arrow_up: Set n8n-design-system@0.12.0 and n8n-workflow@0.88.0 on n8n-editor-ui * :bookmark: Release n8n-editor-ui@0.132.0 * :arrow_up: Set n8n-core@0.106.0, n8n-editor-ui@0.132.0, n8n-nodes-base@0.163.0 and n8n-workflow@0.88.0 on n8n * :bookmark: Release n8n@0.165.0 * fix default user bug * fix bug * update package lock * fix duplicate import * fix settings * fix templates access Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :zap: n8n 2952 personalisation (#2911) * refactor/update survey * update customers * Fix up personalization survey * fix recommendation logic * set to false * hide suggested nodes when empty * use keys * add missing logic * switch types * Fix logic * remove unused constants * add back constant * refactor filtering inputs * hide last input on personal * fix other * ✨ add current pw check for change password (#2912) * fix back button * Add current password input * add to modal * update package.json * delete mock file * delete mock file * get settings func * update router * update package lock * update package lock * Fix invite text * update error i18n * open personalization on search if not set * update error view i18n * update change password * update settings sidebar * remove import * fix sidebar * :goal_net: fix error for credential/workflow not found * update invite modal * ✨ persist skipping owner setup (#2894) * 🚧 added skipInstanceOwnerSetup to DB + route to save skipping * ✨ skipping owner setup persists * ✅ add tests for authorization and /owner/skip-setup * 🛠 refactor FE settings getter * 🛠 move setting setup stop to owner creation * :bug: fix wrong setting of User.isPending * :bug: fix isPending * 🏷 add isPending to PublicUser * :bug: fix unused import * update delete modal * change password modal * remove _label * sort keys * remove key * update key names * fix test endpoint * 🥅 Handle error workflows permissions (#2908) * Handle error workflows permissions * Fixed wrong query format * 🛠 refactor query Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com> * fix ts issue * fix list after ispending changes * fix error page bugs * fix error redirect * fix notification * :bug: fix survey import in migration * fix up spacing * update keys spacing * update keys * add space * update key * fix up more spacing * 🔐 add current password (#2919) * add curr pass * update key names * :bug: stringify tag ids * 🔐 check current password before update * add package lock * fix dep version * update version * 🐛 fix access for instance owner to credentials (#2927) * 🛠 stringify tag id on entity * 🔐 Update password requirements (#2920) * :zap: Update password requirements * :zap: Adjust random helpers * ✅ fix tests for currentPassword check * change redirection, add homepage * fix error view redirection * updated wording * fix setup redirection * update validator * remove successfully * update consumers * update settings redirect * on signup, redirect to homepage * update empty state * add space to emails * remove brackets * add opacity * update spacing * remove border from last user * personal details updated * update redirect on sign up * prevent text wrap * fix notification title line height * remove console log * 🐘 Support testing with Postgres and MySQL (#2886) * :card_file_box: Fix Postgres migrations * :zap: Add DB-specific scripts * :sparkles: Set up test connections * :zap: Add Postgres UUID check * :test_tube: Make test adjustments for Postgres * :zap: Refactor connection logic * :sparkles: Set up double init for Postgres * :pencil2: Add TODOs * :zap: Refactor DB dropping logic * :sparkles: Implement global teardown * :sparkles: Create TypeORM wrappers * :sparkles: Initial MySQL setup * :zap: Clean up Postgres connection options * :zap: Simplify by sharing bootstrap connection name * :card_file_box: Fix MySQL migrations * :fire: Remove comments * :zap: Use ES6 imports * :fire: Remove outdated comments * :zap: Centralize bootstrap connection name handles * :zap: Centralize database types * :pencil2: Update comment * :truck: Rename `findRepository` * :construction: Attempt to truncate MySQL * :sparkles: Implement creds router * :bug: Fix duplicated MySQL bootstrap * :bug: Fix misresolved merge conflict * :card_file_box: Fix tags migration * :card_file_box: Fix MySQL UM migration * :bug: Fix MySQL parallelization issues * :blue_book: Augment TypeORM to prevent error * :fire: Remove comments * :sparkles: Support one sqlite DB per suite run * :truck: Move `testDb` to own module * :fire: Deduplicate bootstrap Postgres logic * :fire: Remove unneeded comment * :zap: Make logger init calls consistent * :pencil2: Improve comment * :pencil2: Add dividers * :art: Improve formatting * :fire: Remove duplicate MySQL global setting * :truck: Move comment * :zap: Update default test script * :fire: Remove unneeded helper * :zap: Unmarshal answers from Postgres * :bug: Phase out `isTestRun` * :zap: Refactor `isEmailSetup` * :fire: Remove unneeded imports * :zap: Handle bootstrap connection errors * :fire: Remove unneeded imports * :fire: Remove outdated comments * :pencil2: Fix typos * :truck: Relocate `answersFormatter` * :rewind: Undo package.json miscommit * :fire: Remove unneeded import * :zap: Refactor test DB prefixing * :zap: Add no-leftover check to MySQL * :package: Update package.json * :zap: Autoincrement on simulated MySQL truncation * :fire: Remove debugging queries * ✏️ fix email template link expiry * 🔥 remove unused import * ✅ fix testing email not sent error * fix duplicate import * add package lock * fix export * change opacity * fix text issue * update action box * update error title * update forgot password * update survey * update product text * remove unset fields * add category to page events * remove duplicate import * update key * update key * update label type * 🎨 um/fe review (#2946) * :whale: Update Node.js versions of Docker images to 16 * :bug: Fix that some keyboard shortcuts did no longer work * N8N-3057 Fixed Keyboard shortcuts no longer working on / Fixed callDebounced function * N8N-3057 Update Debounce Function * N8N-3057 Refactor callDebounce function * N8N-3057 Update Dobounce Function * :bug: Fix issue with tooltips getting displayed behind node details view * fix tooltips z-index * move all element ui components * update package lock * :bug: Fix credentials list load issue (#2931) * always fetch credentials * only fetch credentials once * :zap: Allow to disable hiring banner (#2902) * :sparkles: Add flag * :zap: Adjust interfaces * :zap: Adjust store module * :zap: Adjust frontend settings * :zap: Adjust frontend display * :bug: Fix issue that ctrl + o did behave wrong on workflow templates page (#2934) * N8N-3094 Workflow Templates cmd-o acts on the Preview/Iframe * N8N-3094 Workflow Templates cmd-o acts on the Preview/Iframe * disable shortcuts for preview Co-authored-by: Mutasem <mutdmour@gmail.com> * :arrow_up: Update package-lock.json file * :bug: Fix sorting by field in Baserow Node (#2942) This fixes a bug which currently leads to the "Sorting" option of the node to be ignored. * :bug: Fix some i18n line break issues * :sparkles: Add Odoo Node (#2601) * added odoo scaffolding * update getting data from odoo instance * added scaffolding for main loop and request functions * added functions for CRUD opperations * improoved error handling for odooJSONRPCRequest * updated odoo node and fixing nodelinter issues * fixed alpabetical order * fixed types in odoo node * fixing linter errors * fixing linter errors * fixed data shape returned from man loop * updated node input types, added fields list to models * update when custom resource is selected options for fields list will be populated dynamicly * minor fixes * :hammer: fixed credential test, updating CRUD methods * :hammer: added additional fields to crm resource * :hammer: added descriptions, fixed credentials test bug * :hammer: standardize node and descriptions design * :hammer: removed comments * :hammer: added pagination to getAll operation * :zap: removed leftover function from previous implementation, removed required from optional fields * :zap: fixed id field, added indication of type and if required to field description, replaced string input in filters to fetched list of fields * :hammer: fetching list of models from odoo, added selection of fields to be returned to predefined models, fixes accordingly to review * :zap: Small improvements * :hammer: extracted adress fields into collection, changed fields to include in descriptions, minor tweaks * :zap: Improvements * :hammer: working on review * :hammer: fixed linter errors * :hammer: review wip * :hammer: review wip * :hammer: review wip * :zap: updated display name for URL in credentials * :hammer: added checks for valid id to delete and update * :zap: Minor improvements Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :bug: Handle Wise SCA requests (#2734) * :zap: Improve Wise error message after previous change * fix duplicate import * add package lock * fix export * change opacity * fix text issue * update action box * update error title * update forgot password * update survey * update product text * remove unset fields * add category to page events * remove duplicate import * update key * update key Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Tom <19203795+that-one-tom@users.noreply.github.com> Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com> Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: pemontto <939704+pemontto@users.noreply.github.com> * Move owner skip from settings * 🐛 SMTP fixes (#2937) * :fire: Remove `UM_` from SMTP env vars * :fire: Remove SMTP host default value * :zap: Update sender value * :zap: Update invite template * :zap: Update password reset template * :zap: Update `N8N_EMAIL_MODE` default value * :fire: Remove `EMAIL` from all SMTP vars * :sparkles: Implement `verifyConnection()` * :truck: Reposition comment * :pencil2: Fix typo * :pencil2: Minor env var documentation improvements * :art: Fix spacing * :art: Fix spacing * :card_file_box: Remove SMTP settings cache * :zap: Adjust log message * :zap: Update error message * :pencil2: Fix template typo * :pencil2: Adjust wording * :zap: Interpolate email into success toast * :pencil2: Adjust base message in `verifyConnection()` * :zap: Verify connection on password reset * :zap: Bring up POST /users SMTP check * :bug: remove cookie if cookie is not valid * :zap: verify connection on instantiation Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * 🔊 create logger helper for migrations (#2944) * 🔥 remove unused database * :loud_sound: add migration logging for sqlite * 🔥 remove unnecessary index creation * ⚡️ change log level to warn * 🐛 Fix issue with workflow process to initialize db connection correctly (#2948) * ✏️ update error messages for webhhook run/activation * 📈 Implement telemetry events (#2868) * Implement basic telemetry events * Fixing user id as part of the telemetry data * Added user id to be part of the tracked data * :sparkles: Create telemetry mock * :test_tube: Fix tests with telemetry mock * :test_tube: Fix missing key in authless endpoint * :blue_book: Create authless request type * :fire: Remove log * :bug: Fix `migration_strategy` assignment * :blue_book: Remove `instance_id` from `ITelemetryUserDeletionData` * :zap: Simplify concatenation * :zap: Simplify `track()` call signature * Fixed payload of telemetry to always include user_id * Fixing minor issues Co-authored-by: Iván Ovejero <ivov.src@gmail.com> * 🔊 Added logs to credentials, executions and workflows (#2915) * Added logs to credentials, executions and workflows * Some updates according to ivov's feedback * :zap: update log levels * ✅ fix tests Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :bug: fix telemetry error * fix conflicts with master * fix duplicate * add package-lock * :bug: Um/fixes (#2952) * add initials to avatar * redirect to signin if invalid token * update pluralization * add auth page category * data transferred * touch up setup page * update button to add cursor * fix personalization modal not closing * ✏️ fix environment name * 🐛 fix disabling UM * 🐛 fix email setup flag * 🐛 FE fixes 1 (#2953) * add initials to avatar * redirect to signin if invalid token * update pluralization * add auth page category * data transferred * touch up setup page * update button to add cursor * fix personalization modal not closing * capitalize labels, refactor text * Fixed the issue with telemetry data missing for personalization survey * Changed invite email text * 🐛 Fix quotes issue with postgres migration (#2958) * Changed text for invite link * 🐛 fix reset command for mysql * ✅ fix race condition in test DB creation * 🔐 block user creation if UM is disabled * 🥅 improve smtp setup issue error * :zap: update error message * refactor route rules * set package lock * fix access * remove capitalize * update input labels * refactor heading * change span to fragment * add route types * refactor views * ✅ fix increase timeout for mysql * :zap: correct logic of error message * refactor view names * :zap: update randomString * 📈 Added missing event regarding failed emails (#2964) * replace label with info * 🛠 refactor JWT-secret creation * remove duplicate key * remove unused part * remove semicolon * fix up i18n pattern * update translation keys * update urls * support i18n in nds * fix how external keys are handled * add source * 💥 update timestamp of UM migration * ✏️ small message updates * fix tracking * update notification line-height * fix avatar opacity * fix up empty state * shift focus to input * 🔐 Disable basic auth after owner has been set up (#2973) * Disable basic auth after owner has been set up * Remove unnecessary comparison * rename modal title * 🐛 use pgcrypto extension for uuid creation (#2977) * 📧 Added public url variable for emails (#2967) * Added public url variable for emails * Fixed base url for reset password - the current implementation overrides possibly existing path * Change variable name to editorUrl * Using correct name editorUrl for emails * Changed variable description * Improved base url naming and appending path so it remains consistent * Removed trailing slash from editor base url * 🌐 fix i18n pattern (#2970) * fix up i18n pattern * update translation keys * update urls * support i18n in nds * fix how external keys are handled * add source * Um/fixes 1000 (#2980) * fix select issue * 😫 hacky solution to circumvent pgcrypto (#2979) * fix owner bug after transfer. always fetch latest credentials * add confirmation modal to setup * Use webhook url as fallback when editor url is not defined * fix enter bug * update modal * update modal * update modal text, fix bug in settings view * Updating editor url to not append path * rename keys Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com> Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> Co-authored-by: Omar Ajoue <krynble@gmail.com> Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> Co-authored-by: Tom <19203795+that-one-tom@users.noreply.github.com> Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com> Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: pemontto <939704+pemontto@users.noreply.github.com>
2022-03-14 06:46:32 -07:00
import { User } from './databases/entities/User';
import { getWorkflowOwner } from './UserManagement/UserManagementHelper';
2019-06-23 03:35:23 -07:00
const ERROR_TRIGGER_TYPE = config.getEnv('nodes.errorTriggerType');
2019-06-23 03:35:23 -07:00
2019-12-19 14:07:55 -08:00
/**
* Returns the data of the last executed node
*
* @export
* @param {IRun} inputData
* @returns {(ITaskData | undefined)}
*/
export function getDataLastExecutedNodeData(inputData: IRun): ITaskData | undefined {
feat(editor): Add data pinning functionality (#3511) * feat: Design system color improvements and button component redesign. * feat: Added button focus state and unit tests. * refactor: Aligned n8n-button usage inside of editor-ui. * test: Updated snapshots. * refactor: Extracted focus outline width into scss variable. * fix: Fixed select input border-radius. * refactor: Removed element-ui references in button. * fix: Fixed scss variable imports. * feat: Added color-neutral variable story. * fix: Fixed color-secondary variable definition. * feat: Added color-white story. * test: Updated button snapshot. * feat: Replaced zoom buttons with new n8n-icon-button. * feat: Added stories for float utilities. * chore: Updated color shades generation code for later use. * chore: Removed color-white code. * chore: Updated story properties for button components. * fix: Added el-button fallback for places where el-button is not replaceable (messagebox). * feat: Reverted to css modules. Replaced el-button with n8n-button at application level. * test: Updated button snapshot. * fix: Fixed element-ui locally referenced buttons (via components: {}). * fix: Updated colors. Removed irrelevant validation. Added ElButton override component. * test: Updated button override snapshot. * fix: Various button adjustments and fixes. * fix: Updated button disabled state. * test: Updated snapshots. * fix: Consolidated css variables changes. * Data pinning (#3512) * refactor: Aligned n8n-button usage inside of editor-ui. * feat: Added edit data button on json hover. * feat: Extracted code editor into separate form component. * feat: Added edit data button on json hover. * feat: Added pinData and edit mode methods. * :fire: Remove conflict markers * :pencil2: Update i18n keys * :zap: Add JSON validation * :card_file_box: Add `pinData` column to `workflow_entity` * :blue_book: Tighten type * :zap: Make `pinData` column nullable * :zap: Adjust workflow endpoints for pin data * :blue_book: Improve types * :pencil2: Improve wording * Inject pindata into items flow (#3420) * :zap: Inject pin data - Second approach * :fire: Remove unneeded lint exception * feat: Added edit data button on json hover. * feat: Extracted code editor into separate form component. * feat: Added edit data button on json hover. * fix: Fixed rebase conflicts. * :rewind: Undo button change * :bug: Fix runNode call Adjust per update in bdb84130d687811d65337ff6b025e7cb0eae8256 * :test_tube: Fix workflow tests * :bug: More merge conflict fixes * feat: Added pin/unpin button and store mutations. * feat: Size check. Various design and ux improvements. * :zap: Add transformer * :zap: Hoist pin data * :zap: Adjust endpoints for hoisted pin data * :blue_book: Expand interface * :bug: Fix stray array * :shirt: Fix build * :shirt: Add lint exception * :shirt: Fix header * :art: Add color secondary tints * :sparkles: Create `HeaderMessage` component * :zap: Adjust `InfoTip` component * :sparkles: Add `HeaderMessage` to `RunData` * :bug: Fix console error * :shirt: Fix lint * :zap: Consolidate `HeaderMessage` and `Callout` * :rewind: Undo `InfoTip` changes * :fire: Remove duplicate icons * :zap: Simplify template * :art: Change cursor for action text * :shirt: Fix lint * :zap: Add URL * :bug: Fix handler name * :zap: Use constant * :recycle: Refactor per feedback * fix: Various fixes after data pinning relocation. * fix: Added store mutation for setting pinned data. * feat: Added pinned state for workflow canvas node. * fix: Fixed workflow saving. * fix: Removed pinData hoisting (no longer necessary). * feat: Added canPinData flag to hide for input pane and binary data. Fixed unpin and execute flow. * :zap: Fixes for canvas pin data (#3587) * :zap: Fixes for canvas pin data * :blue_book: Rename type * :test_tube: Fix unrelated Public API test * :fire: Remove logging * feat: Updated pinData mixin to no longer include extra fields. * :zap: Output same pindata for every run * :art: Fix cropping * :fire: Remove unrelated logging * feat: Moved edit button next to pin button. * feat: Changed data to be inserted for empty state. * chore: Changed invalid editor output translation. * feat: Added error line reporting on JSON Validation. * feat: Migrated pinData edit mode to store. * chore: Merged duplicate node border color condition. * feat: Moved pin data validation to mixin. Added check before closing ndv modal. * fix: Changed pinned data size calculation to discard active node pin data. * feat: Added support for rename and delete node with pin data. * feat: Simplified editing state. Fixed edit mode in input panel after store migration. * feat: Various data pinning improvements. * fix: Fixed callout link underline. * refactor: Added support for both string and objects for data size check. * feat: Added disabled node check for input panel. Fixed monaco editor resizing. * fix: Fixed edit mode footer size. * :zap: Fix pindata items per run * :shirt: Remove unneeded exception * refactor: Added isValidPinData() helper method. * refactor: Changed how string size in bytes in calculated.g * refactor: Updated pinData mixin interface. * refactor: Merged filter and reduce in pinDataSize calculation. * fix: Changed code-editor to correct type. * fix: Added insert test data message to trigger nodes. * feat: Disabled data pinning for multiple output nodes. * refactor: Updated ndv.input.disabled translation to include node name. * refactor: Aligned n8n-button usage inside of editor-ui. * feat: Added edit data button on json hover. * feat: Extracted code editor into separate form component. * feat: Added edit data button on json hover. * feat: Added pinData and edit mode methods. * :fire: Remove conflict markers * :pencil2: Update i18n keys * :zap: Add JSON validation * :card_file_box: Add `pinData` column to `workflow_entity` * :blue_book: Tighten type * :zap: Make `pinData` column nullable * :zap: Adjust workflow endpoints for pin data * :blue_book: Improve types * :pencil2: Improve wording * Inject pindata into items flow (#3420) * :zap: Inject pin data - Second approach * :fire: Remove unneeded lint exception * feat: Added edit data button on json hover. * feat: Extracted code editor into separate form component. * feat: Added edit data button on json hover. * fix: Fixed rebase conflicts. * :rewind: Undo button change * :bug: Fix runNode call Adjust per update in bdb84130d687811d65337ff6b025e7cb0eae8256 * :test_tube: Fix workflow tests * :bug: More merge conflict fixes * feat: Added pin/unpin button and store mutations. * feat: Size check. Various design and ux improvements. * :zap: Add transformer * :zap: Hoist pin data * :zap: Adjust endpoints for hoisted pin data * :blue_book: Expand interface * :bug: Fix stray array * :shirt: Fix build * :art: Add color secondary tints * :sparkles: Create `HeaderMessage` component * :zap: Adjust `InfoTip` component * :sparkles: Add `HeaderMessage` to `RunData` * :bug: Fix console error * :shirt: Fix lint * :zap: Consolidate `HeaderMessage` and `Callout` * :rewind: Undo `InfoTip` changes * :fire: Remove duplicate icons * :zap: Simplify template * :art: Change cursor for action text * :shirt: Fix lint * :zap: Add URL * :bug: Fix handler name * :zap: Use constant * :recycle: Refactor per feedback * fix: Various fixes after data pinning relocation. * fix: Added store mutation for setting pinned data. * feat: Added pinned state for workflow canvas node. * :zap: Fixes for canvas pin data (#3587) * :zap: Fixes for canvas pin data * :blue_book: Rename type * :test_tube: Fix unrelated Public API test * :fire: Remove logging * feat: Updated pinData mixin to no longer include extra fields. * fix: Removed pinData hoisting (no longer necessary). * chore: Merged duplicate node border color condition. * :zap: Output same pindata for every run * :art: Fix cropping * :bug: Fix excess closing template tag * fix: Removed rogue template tag after merge. * fix: Fixed code-editor resizing when moving ndv panel. * feat: Added node duplication pin data. * :zap: Implement telemetry * :recycle: Add clarifications from call * fix: Fixed run data header height. * feat: Removed border from pin data callout. * feat: Added line-break before 'or insert pin data'. * feat: Changed enterEditMode to always insert test data if there's no execution data. * feat: Removed copy output tooltip. * feat: Removed unpin tooltip. * fix: Removed thumbtack icon rotation. * fix: Removed run info from Edit Output title. * feat: Hid edit and pin buttons when editing. * feat: Updated monaco code-editor padding and borders. * feat: Progress on pinData error message format * feat: Updated copy feature to work without any selected value. * feat: Moved save and cancel buttons. Cleared notifications on save. * feat: Changed pin data beforeClosing confirm text. * feat: Closing ndv when discarding or saving pindata on close. * feat: Added split in batches node to pin data denylist. * fix: Added missing margin-bottom to webhook node. * feat: Moved thumbtack icon to the right, replacing the checkmark. * fix: Hid pagination while editing. * feat: Added pin data discovery flow. * feat: Changed pin data discovery flow to avoid tooltip glitching. * fix: Changed copy selection to copy all input data. * feat: Updated pin data validation error message for unexpected single quotes. * fix: Replaced :manual='true' prop with manual shorthand. * fix: Removed unused variable. * chore: Renamed translation key to node.discovery.pinData. * refactor: Extracted isPinDataNodeType to pinData mixin. * fix: Updated watch condition to improve performance. * refactor: Renamed some pin data variables and methods as per review. * fix: Added partial translation for JSON.parse pin data error messages. * chore: Temporarily disabled failing unit test. * :test_tube: Fix data pinning workflow retrieval test * :fire: Remove unused imports * :fire: Remove leftover line * :zap: Skip pindata node issues on BE * :zap: Skip pindata node issues on FE * :zap: Hide `RunInfo` for pindata node * :zap: Hide purple banner in edit output mode * feat: Updated data pinning discoverability flow. * fix: Fixed paginated data pinning. * fix: Disabled pin data in read only mode. * :bug: Fix runtime error with non-array * fix: Loading pin data when opening execution. * :zap: Adjust stale data warning for pinned data * :zap: Skip auth in endpoint * :zap: Mark start node for pinned trigger * :pencil2: Comment on passthrough * :fire: Remove comment * Final pindata metrics changes (#3673) * :bug: Fix `pinData` tracked as `0` * :zap: Add `is_pinned` to `nodesGraph` * :blue_book: Extend `IWorkflowBase` * :zap: Handle `pinData` being `undefined` * :zap: Add `data_pinning_tooltip_presented` * :recycle: Refactor to remove circular dependency * fix: Added pin data handling when importing workflow. (#3698) * :fire: Remove helper from WorkflowExecute * :zap: Add logic for single pinned trigger * :shirt: Remove lint exception * fix: Added pin data handling in importWorkflowExact. * N8N-4077 data pinning discoverability part 2 (#3701) * fix: Fixed pin data discovery tooltip position when moving canvas. * feat: Updated data pinning discovery tooltip copy. * Fix data pinning build (#3702) * :zap: Disable edit button for disabled node * :zap: Ensure disabled pinned nodes are passthrough * :bug: Fix JSON key unfurling in edit mode * :zap: Improve implementation * :bug: Fix console error * fix: Fixed copying pinned output data. (#3715) * Fix pinning for webhook responding with output from last node (#3719) * fix: Fixed entering edit mode after refresh. * fix: Fixed type error during build. * fix: RunData import formatting. * chore: Updated pin data types. * fix: Added missing type to stringSizeInBytes. Co-authored-by: Iván Ovejero <ivov.src@gmail.com> * fix: Showing pin data without executing the node only in output pane. * fix: Updated no data message when previous node not executed. * feat: Added expression input and evaluation for pin data nodes without execution. * chore: Fixed linting issues and removed remnant console.log(). * chore: Undone package-lock changes. * fix: Removed pin data store changes. * fix: Created a new object using vuex runExecutionData. * fix: Fixed bug appearing when adding a new node after executing. * fix: Fix editor-ui build * feat: Added green node connectors when having pin data output. * chore: Fixed linting errors. * fix: Added pin data eventBus unsubscribe. * fix: Added pin data color check after adding a connection. * :art: Add pindata styles Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
2022-07-20 08:50:39 -07:00
const { runData, pinData = {} } = inputData.data.resultData;
:art: Set up linting and formatting (#2120) * :arrow_up: Upgrade TS to 4.3.5 * :shirt: Add ESLint configs * :art: Add Prettier config * :package: Add deps and commands * :zap: Adjust global .editorconfig to new ruleset * :fire: Remove unneeded local .editorconfig * :package: Update deps in editor-ui * :hammer: Limit Prettier to only TS files * :zap: Add recommended VSCode extensions * :shirt: Fix build * :fire: Remove Vue setting from global config * :zap: Disable prefer-default-export per feedback * :pencil2: Add forgotten divider * :shirt: Disable no-plusplus * :shirt: Disable class-methods-use-this * :pencil2: Alphabetize overrides * :shirt: Add one-var consecutive override * :rewind: Revert one-var consecutive override This reverts commit b9252cf935659ba6d76727ad484a1d3c00008fcc. * 🎨 👕 Lint and format workflow package (#2121) * :art: Format /workflow package * :shirt: Lint /workflow package * :art: Re-format /workflow package * :shirt: Re-lint /workflow package * :pencil2: Fix typo * :zap: Consolidate if-checks * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format node-dev package (#2122) * :art: Format /node-dev package * :zap: Exclude templates from ESLint config This keeps the templates consistent with the codebase while preventing lint exceptions from being made part of the templates. * :shirt: Lint /node-dev package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * 🎨 👕 Lint and format core package (#2123) * :art: Format /core package * :shirt: Lint /core package * :art: Re-format /core package * :shirt: Re-lint /core package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format cli package (#2124) * :art: Format /cli package * :shirt: Exclude migrations from linting * :shirt: Lint /cli package * :art: Re-format /cli package * :shirt: Re-lint /cli package * :shirt: Fix build * :fire: Remove prefer-default-export exceptions * :zap: Update exceptions in ActiveExecutions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 👕 fix lint issues * :wrench: use package specific linter, remove tslint command * :hammer: resolve build issue, sync dependencies * :wrench: change lint command Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>
2021-08-29 11:58:11 -07:00
const { lastNodeExecuted } = inputData.data.resultData;
2019-12-19 14:07:55 -08:00
if (lastNodeExecuted === undefined) {
return undefined;
}
if (runData[lastNodeExecuted] === undefined) {
return undefined;
}
feat(editor): Add data pinning functionality (#3511) * feat: Design system color improvements and button component redesign. * feat: Added button focus state and unit tests. * refactor: Aligned n8n-button usage inside of editor-ui. * test: Updated snapshots. * refactor: Extracted focus outline width into scss variable. * fix: Fixed select input border-radius. * refactor: Removed element-ui references in button. * fix: Fixed scss variable imports. * feat: Added color-neutral variable story. * fix: Fixed color-secondary variable definition. * feat: Added color-white story. * test: Updated button snapshot. * feat: Replaced zoom buttons with new n8n-icon-button. * feat: Added stories for float utilities. * chore: Updated color shades generation code for later use. * chore: Removed color-white code. * chore: Updated story properties for button components. * fix: Added el-button fallback for places where el-button is not replaceable (messagebox). * feat: Reverted to css modules. Replaced el-button with n8n-button at application level. * test: Updated button snapshot. * fix: Fixed element-ui locally referenced buttons (via components: {}). * fix: Updated colors. Removed irrelevant validation. Added ElButton override component. * test: Updated button override snapshot. * fix: Various button adjustments and fixes. * fix: Updated button disabled state. * test: Updated snapshots. * fix: Consolidated css variables changes. * Data pinning (#3512) * refactor: Aligned n8n-button usage inside of editor-ui. * feat: Added edit data button on json hover. * feat: Extracted code editor into separate form component. * feat: Added edit data button on json hover. * feat: Added pinData and edit mode methods. * :fire: Remove conflict markers * :pencil2: Update i18n keys * :zap: Add JSON validation * :card_file_box: Add `pinData` column to `workflow_entity` * :blue_book: Tighten type * :zap: Make `pinData` column nullable * :zap: Adjust workflow endpoints for pin data * :blue_book: Improve types * :pencil2: Improve wording * Inject pindata into items flow (#3420) * :zap: Inject pin data - Second approach * :fire: Remove unneeded lint exception * feat: Added edit data button on json hover. * feat: Extracted code editor into separate form component. * feat: Added edit data button on json hover. * fix: Fixed rebase conflicts. * :rewind: Undo button change * :bug: Fix runNode call Adjust per update in bdb84130d687811d65337ff6b025e7cb0eae8256 * :test_tube: Fix workflow tests * :bug: More merge conflict fixes * feat: Added pin/unpin button and store mutations. * feat: Size check. Various design and ux improvements. * :zap: Add transformer * :zap: Hoist pin data * :zap: Adjust endpoints for hoisted pin data * :blue_book: Expand interface * :bug: Fix stray array * :shirt: Fix build * :shirt: Add lint exception * :shirt: Fix header * :art: Add color secondary tints * :sparkles: Create `HeaderMessage` component * :zap: Adjust `InfoTip` component * :sparkles: Add `HeaderMessage` to `RunData` * :bug: Fix console error * :shirt: Fix lint * :zap: Consolidate `HeaderMessage` and `Callout` * :rewind: Undo `InfoTip` changes * :fire: Remove duplicate icons * :zap: Simplify template * :art: Change cursor for action text * :shirt: Fix lint * :zap: Add URL * :bug: Fix handler name * :zap: Use constant * :recycle: Refactor per feedback * fix: Various fixes after data pinning relocation. * fix: Added store mutation for setting pinned data. * feat: Added pinned state for workflow canvas node. * fix: Fixed workflow saving. * fix: Removed pinData hoisting (no longer necessary). * feat: Added canPinData flag to hide for input pane and binary data. Fixed unpin and execute flow. * :zap: Fixes for canvas pin data (#3587) * :zap: Fixes for canvas pin data * :blue_book: Rename type * :test_tube: Fix unrelated Public API test * :fire: Remove logging * feat: Updated pinData mixin to no longer include extra fields. * :zap: Output same pindata for every run * :art: Fix cropping * :fire: Remove unrelated logging * feat: Moved edit button next to pin button. * feat: Changed data to be inserted for empty state. * chore: Changed invalid editor output translation. * feat: Added error line reporting on JSON Validation. * feat: Migrated pinData edit mode to store. * chore: Merged duplicate node border color condition. * feat: Moved pin data validation to mixin. Added check before closing ndv modal. * fix: Changed pinned data size calculation to discard active node pin data. * feat: Added support for rename and delete node with pin data. * feat: Simplified editing state. Fixed edit mode in input panel after store migration. * feat: Various data pinning improvements. * fix: Fixed callout link underline. * refactor: Added support for both string and objects for data size check. * feat: Added disabled node check for input panel. Fixed monaco editor resizing. * fix: Fixed edit mode footer size. * :zap: Fix pindata items per run * :shirt: Remove unneeded exception * refactor: Added isValidPinData() helper method. * refactor: Changed how string size in bytes in calculated.g * refactor: Updated pinData mixin interface. * refactor: Merged filter and reduce in pinDataSize calculation. * fix: Changed code-editor to correct type. * fix: Added insert test data message to trigger nodes. * feat: Disabled data pinning for multiple output nodes. * refactor: Updated ndv.input.disabled translation to include node name. * refactor: Aligned n8n-button usage inside of editor-ui. * feat: Added edit data button on json hover. * feat: Extracted code editor into separate form component. * feat: Added edit data button on json hover. * feat: Added pinData and edit mode methods. * :fire: Remove conflict markers * :pencil2: Update i18n keys * :zap: Add JSON validation * :card_file_box: Add `pinData` column to `workflow_entity` * :blue_book: Tighten type * :zap: Make `pinData` column nullable * :zap: Adjust workflow endpoints for pin data * :blue_book: Improve types * :pencil2: Improve wording * Inject pindata into items flow (#3420) * :zap: Inject pin data - Second approach * :fire: Remove unneeded lint exception * feat: Added edit data button on json hover. * feat: Extracted code editor into separate form component. * feat: Added edit data button on json hover. * fix: Fixed rebase conflicts. * :rewind: Undo button change * :bug: Fix runNode call Adjust per update in bdb84130d687811d65337ff6b025e7cb0eae8256 * :test_tube: Fix workflow tests * :bug: More merge conflict fixes * feat: Added pin/unpin button and store mutations. * feat: Size check. Various design and ux improvements. * :zap: Add transformer * :zap: Hoist pin data * :zap: Adjust endpoints for hoisted pin data * :blue_book: Expand interface * :bug: Fix stray array * :shirt: Fix build * :art: Add color secondary tints * :sparkles: Create `HeaderMessage` component * :zap: Adjust `InfoTip` component * :sparkles: Add `HeaderMessage` to `RunData` * :bug: Fix console error * :shirt: Fix lint * :zap: Consolidate `HeaderMessage` and `Callout` * :rewind: Undo `InfoTip` changes * :fire: Remove duplicate icons * :zap: Simplify template * :art: Change cursor for action text * :shirt: Fix lint * :zap: Add URL * :bug: Fix handler name * :zap: Use constant * :recycle: Refactor per feedback * fix: Various fixes after data pinning relocation. * fix: Added store mutation for setting pinned data. * feat: Added pinned state for workflow canvas node. * :zap: Fixes for canvas pin data (#3587) * :zap: Fixes for canvas pin data * :blue_book: Rename type * :test_tube: Fix unrelated Public API test * :fire: Remove logging * feat: Updated pinData mixin to no longer include extra fields. * fix: Removed pinData hoisting (no longer necessary). * chore: Merged duplicate node border color condition. * :zap: Output same pindata for every run * :art: Fix cropping * :bug: Fix excess closing template tag * fix: Removed rogue template tag after merge. * fix: Fixed code-editor resizing when moving ndv panel. * feat: Added node duplication pin data. * :zap: Implement telemetry * :recycle: Add clarifications from call * fix: Fixed run data header height. * feat: Removed border from pin data callout. * feat: Added line-break before 'or insert pin data'. * feat: Changed enterEditMode to always insert test data if there's no execution data. * feat: Removed copy output tooltip. * feat: Removed unpin tooltip. * fix: Removed thumbtack icon rotation. * fix: Removed run info from Edit Output title. * feat: Hid edit and pin buttons when editing. * feat: Updated monaco code-editor padding and borders. * feat: Progress on pinData error message format * feat: Updated copy feature to work without any selected value. * feat: Moved save and cancel buttons. Cleared notifications on save. * feat: Changed pin data beforeClosing confirm text. * feat: Closing ndv when discarding or saving pindata on close. * feat: Added split in batches node to pin data denylist. * fix: Added missing margin-bottom to webhook node. * feat: Moved thumbtack icon to the right, replacing the checkmark. * fix: Hid pagination while editing. * feat: Added pin data discovery flow. * feat: Changed pin data discovery flow to avoid tooltip glitching. * fix: Changed copy selection to copy all input data. * feat: Updated pin data validation error message for unexpected single quotes. * fix: Replaced :manual='true' prop with manual shorthand. * fix: Removed unused variable. * chore: Renamed translation key to node.discovery.pinData. * refactor: Extracted isPinDataNodeType to pinData mixin. * fix: Updated watch condition to improve performance. * refactor: Renamed some pin data variables and methods as per review. * fix: Added partial translation for JSON.parse pin data error messages. * chore: Temporarily disabled failing unit test. * :test_tube: Fix data pinning workflow retrieval test * :fire: Remove unused imports * :fire: Remove leftover line * :zap: Skip pindata node issues on BE * :zap: Skip pindata node issues on FE * :zap: Hide `RunInfo` for pindata node * :zap: Hide purple banner in edit output mode * feat: Updated data pinning discoverability flow. * fix: Fixed paginated data pinning. * fix: Disabled pin data in read only mode. * :bug: Fix runtime error with non-array * fix: Loading pin data when opening execution. * :zap: Adjust stale data warning for pinned data * :zap: Skip auth in endpoint * :zap: Mark start node for pinned trigger * :pencil2: Comment on passthrough * :fire: Remove comment * Final pindata metrics changes (#3673) * :bug: Fix `pinData` tracked as `0` * :zap: Add `is_pinned` to `nodesGraph` * :blue_book: Extend `IWorkflowBase` * :zap: Handle `pinData` being `undefined` * :zap: Add `data_pinning_tooltip_presented` * :recycle: Refactor to remove circular dependency * fix: Added pin data handling when importing workflow. (#3698) * :fire: Remove helper from WorkflowExecute * :zap: Add logic for single pinned trigger * :shirt: Remove lint exception * fix: Added pin data handling in importWorkflowExact. * N8N-4077 data pinning discoverability part 2 (#3701) * fix: Fixed pin data discovery tooltip position when moving canvas. * feat: Updated data pinning discovery tooltip copy. * Fix data pinning build (#3702) * :zap: Disable edit button for disabled node * :zap: Ensure disabled pinned nodes are passthrough * :bug: Fix JSON key unfurling in edit mode * :zap: Improve implementation * :bug: Fix console error * fix: Fixed copying pinned output data. (#3715) * Fix pinning for webhook responding with output from last node (#3719) * fix: Fixed entering edit mode after refresh. * fix: Fixed type error during build. * fix: RunData import formatting. * chore: Updated pin data types. * fix: Added missing type to stringSizeInBytes. Co-authored-by: Iván Ovejero <ivov.src@gmail.com> * fix: Showing pin data without executing the node only in output pane. * fix: Updated no data message when previous node not executed. * feat: Added expression input and evaluation for pin data nodes without execution. * chore: Fixed linting issues and removed remnant console.log(). * chore: Undone package-lock changes. * fix: Removed pin data store changes. * fix: Created a new object using vuex runExecutionData. * fix: Fixed bug appearing when adding a new node after executing. * fix: Fix editor-ui build * feat: Added green node connectors when having pin data output. * chore: Fixed linting errors. * fix: Added pin data eventBus unsubscribe. * fix: Added pin data color check after adding a connection. * :art: Add pindata styles Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
2022-07-20 08:50:39 -07:00
const lastNodeRunData = runData[lastNodeExecuted][runData[lastNodeExecuted].length - 1];
let lastNodePinData = pinData[lastNodeExecuted];
if (lastNodePinData) {
if (!Array.isArray(lastNodePinData)) lastNodePinData = [lastNodePinData];
const itemsPerRun = lastNodePinData.map((item, index) => {
return { json: item, pairedItem: { item: index } };
});
return {
startTime: 0,
executionTime: 0,
data: { main: [itemsPerRun] },
source: lastNodeRunData.source,
};
}
return lastNodeRunData;
2019-12-19 14:07:55 -08:00
}
2019-06-23 03:35:23 -07:00
/**
* Returns if the given id is a valid workflow id
*
* @param {(string | null | undefined)} id The id to check
* @returns {boolean}
* @memberof App
*/
:art: Set up linting and formatting (#2120) * :arrow_up: Upgrade TS to 4.3.5 * :shirt: Add ESLint configs * :art: Add Prettier config * :package: Add deps and commands * :zap: Adjust global .editorconfig to new ruleset * :fire: Remove unneeded local .editorconfig * :package: Update deps in editor-ui * :hammer: Limit Prettier to only TS files * :zap: Add recommended VSCode extensions * :shirt: Fix build * :fire: Remove Vue setting from global config * :zap: Disable prefer-default-export per feedback * :pencil2: Add forgotten divider * :shirt: Disable no-plusplus * :shirt: Disable class-methods-use-this * :pencil2: Alphabetize overrides * :shirt: Add one-var consecutive override * :rewind: Revert one-var consecutive override This reverts commit b9252cf935659ba6d76727ad484a1d3c00008fcc. * 🎨 👕 Lint and format workflow package (#2121) * :art: Format /workflow package * :shirt: Lint /workflow package * :art: Re-format /workflow package * :shirt: Re-lint /workflow package * :pencil2: Fix typo * :zap: Consolidate if-checks * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format node-dev package (#2122) * :art: Format /node-dev package * :zap: Exclude templates from ESLint config This keeps the templates consistent with the codebase while preventing lint exceptions from being made part of the templates. * :shirt: Lint /node-dev package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * 🎨 👕 Lint and format core package (#2123) * :art: Format /core package * :shirt: Lint /core package * :art: Re-format /core package * :shirt: Re-lint /core package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format cli package (#2124) * :art: Format /cli package * :shirt: Exclude migrations from linting * :shirt: Lint /cli package * :art: Re-format /cli package * :shirt: Re-lint /cli package * :shirt: Fix build * :fire: Remove prefer-default-export exceptions * :zap: Update exceptions in ActiveExecutions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 👕 fix lint issues * :wrench: use package specific linter, remove tslint command * :hammer: resolve build issue, sync dependencies * :wrench: change lint command Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>
2021-08-29 11:58:11 -07:00
export function isWorkflowIdValid(id: string | null | undefined | number): boolean {
2019-06-23 03:35:23 -07:00
if (typeof id === 'string') {
id = parseInt(id, 10);
}
:art: Set up linting and formatting (#2120) * :arrow_up: Upgrade TS to 4.3.5 * :shirt: Add ESLint configs * :art: Add Prettier config * :package: Add deps and commands * :zap: Adjust global .editorconfig to new ruleset * :fire: Remove unneeded local .editorconfig * :package: Update deps in editor-ui * :hammer: Limit Prettier to only TS files * :zap: Add recommended VSCode extensions * :shirt: Fix build * :fire: Remove Vue setting from global config * :zap: Disable prefer-default-export per feedback * :pencil2: Add forgotten divider * :shirt: Disable no-plusplus * :shirt: Disable class-methods-use-this * :pencil2: Alphabetize overrides * :shirt: Add one-var consecutive override * :rewind: Revert one-var consecutive override This reverts commit b9252cf935659ba6d76727ad484a1d3c00008fcc. * 🎨 👕 Lint and format workflow package (#2121) * :art: Format /workflow package * :shirt: Lint /workflow package * :art: Re-format /workflow package * :shirt: Re-lint /workflow package * :pencil2: Fix typo * :zap: Consolidate if-checks * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format node-dev package (#2122) * :art: Format /node-dev package * :zap: Exclude templates from ESLint config This keeps the templates consistent with the codebase while preventing lint exceptions from being made part of the templates. * :shirt: Lint /node-dev package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * 🎨 👕 Lint and format core package (#2123) * :art: Format /core package * :shirt: Lint /core package * :art: Re-format /core package * :shirt: Re-lint /core package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format cli package (#2124) * :art: Format /cli package * :shirt: Exclude migrations from linting * :shirt: Lint /cli package * :art: Re-format /cli package * :shirt: Re-lint /cli package * :shirt: Fix build * :fire: Remove prefer-default-export exceptions * :zap: Update exceptions in ActiveExecutions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 👕 fix lint issues * :wrench: use package specific linter, remove tslint command * :hammer: resolve build issue, sync dependencies * :wrench: change lint command Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>
2021-08-29 11:58:11 -07:00
// eslint-disable-next-line no-restricted-globals
2019-06-23 03:35:23 -07:00
if (isNaN(id as number)) {
return false;
}
return true;
}
/**
* Executes the error workflow
*
* @export
* @param {string} workflowId The id of the error workflow
* @param {IWorkflowErrorData} workflowErrorData The error data
* @returns {Promise<void>}
*/
:art: Set up linting and formatting (#2120) * :arrow_up: Upgrade TS to 4.3.5 * :shirt: Add ESLint configs * :art: Add Prettier config * :package: Add deps and commands * :zap: Adjust global .editorconfig to new ruleset * :fire: Remove unneeded local .editorconfig * :package: Update deps in editor-ui * :hammer: Limit Prettier to only TS files * :zap: Add recommended VSCode extensions * :shirt: Fix build * :fire: Remove Vue setting from global config * :zap: Disable prefer-default-export per feedback * :pencil2: Add forgotten divider * :shirt: Disable no-plusplus * :shirt: Disable class-methods-use-this * :pencil2: Alphabetize overrides * :shirt: Add one-var consecutive override * :rewind: Revert one-var consecutive override This reverts commit b9252cf935659ba6d76727ad484a1d3c00008fcc. * 🎨 👕 Lint and format workflow package (#2121) * :art: Format /workflow package * :shirt: Lint /workflow package * :art: Re-format /workflow package * :shirt: Re-lint /workflow package * :pencil2: Fix typo * :zap: Consolidate if-checks * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format node-dev package (#2122) * :art: Format /node-dev package * :zap: Exclude templates from ESLint config This keeps the templates consistent with the codebase while preventing lint exceptions from being made part of the templates. * :shirt: Lint /node-dev package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * 🎨 👕 Lint and format core package (#2123) * :art: Format /core package * :shirt: Lint /core package * :art: Re-format /core package * :shirt: Re-lint /core package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format cli package (#2124) * :art: Format /cli package * :shirt: Exclude migrations from linting * :shirt: Lint /cli package * :art: Re-format /cli package * :shirt: Re-lint /cli package * :shirt: Fix build * :fire: Remove prefer-default-export exceptions * :zap: Update exceptions in ActiveExecutions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 👕 fix lint issues * :wrench: use package specific linter, remove tslint command * :hammer: resolve build issue, sync dependencies * :wrench: change lint command Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>
2021-08-29 11:58:11 -07:00
export async function executeErrorWorkflow(
workflowId: string,
workflowErrorData: IWorkflowErrorData,
feat: Add User Management (#2636) * ✅ adjust tests * 🛠 refactor user invites to be indempotent (#2791) * 🔐 Encrypt SMTP pass for user management backend (#2793) * :package: Add crypto-js to /cli * :package: Update package-lock.json * :sparkles: Create type for SMTP config * :zap: Encrypt SMTP pass * :zap: Update format for `userManagement.emails.mode` * :zap: Update format for `binaryDataManager.mode` * :zap: Update format for `logs.level` * :fire: Remove logging * :shirt: Fix lint * 👰 n8n 2826 um wedding FE<>BE (#2789) * remove mocks * update authorization func * lock down default role * 🐛 fix requiring authentication for OPTIONS requests * :bug: fix cors and cookie issues in dev * update setup route Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * update telemetry * 🐛 preload role for users * :bug: remove auth for password reset routes * 🐛 fix forgot-password flow * :zap: allow workflow tag disabling * update telemetry init * add reset * clear error notifications on signin * remove load settings from node view * remove user id from user state * inherit existing user props * go back in history on button click * use replace to force redirect * update stories * :zap: add env check for tag create * :test_tube: Add `/users` tests for user management backend (#2790) * :zap: Refactor users namespace * :zap: Adjust fillout endpoint * :zap: Refactor initTestServer arg * :pencil2: Specify agent type * :pencil2: Specify role type * :zap: Tighten `/users/:id` check * :sparkles: Add initial tests * :truck: Reposition init server map * :zap: Set constants in `validatePassword()` * :zap: Tighten `/users/:id` check * :zap: Improve checks in `/users/:id` * :sparkles: Add tests for `/users/:id` * :package: Update package-lock.json * :zap: Simplify expectation * :zap: Reuse util for authless agent * :truck: Make role names consistent * :blue_book: Tighten namespaces map type * :fire: Remove unneeded default arg * :sparkles: Add tests for `POST /users` * :blue_book: Create test SMTP account type * :pencil2: Improve wording * :art: Formatting * :fire: Remove temp fix * :zap: Replace helper with config call * :zap: Fix failing tests * :fire: Remove outdated test * :fire: Remove unused helper * :zap: Increase readability of domain fetcher * :zap: Refactor payload validation * :fire: Remove repetition * :rewind: Restore logging * :zap: Initialize logger in tests * :fire: Remove redundancy from check * :truck: Move `globalOwnerRole` fetching to global scope * :fire: Remove unused imports * :truck: Move random utils to own module * :truck: Move test types to own module * :pencil2: Add dividers to utils * :pencil2: Reorder `initTestServer` param docstring * :pencil2: Add TODO comment * :zap: Dry up member creation * :zap: Tighten search criteria * :test_tube: Add expectation to `GET /users` * :zap: Create role fetcher utils * :zap: Create one more role fetch util * :fire: Remove unneeded DB query * :test_tube: Add expectation to `POST /users` * :test_tube: Add expectation to `DELETE /users/:id` * :test_tube: Add another expectation to `DELETE /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :test_tube: Adjust expectations in `POST /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :shirt: Fix build * :zap: Update method * :blue_book: Fix `userToDelete` type * :zap: Refactor `createAgent()` * :zap: Make role fetching global * :zap: Optimize roles fetching * :zap: Centralize member creation * :zap: Refactor truncation helper * :test_tube: Add teardown to `DELETE /users/:id` * :test_tube: Add DB expectations to users tests * :fire: Remove pass validation due to hash * :pencil2: Improve pass validation error message * :zap: Improve owner pass validation * :zap: Create logger initialization helper * :zap: Optimize helpers * :zap: Restructure `getAllRoles` helper * :test_tube: Add password reset flow tests for user management backend (#2807) * :zap: Refactor users namespace * :zap: Adjust fillout endpoint * :zap: Refactor initTestServer arg * :pencil2: Specify agent type * :pencil2: Specify role type * :zap: Tighten `/users/:id` check * :sparkles: Add initial tests * :truck: Reposition init server map * :zap: Set constants in `validatePassword()` * :zap: Tighten `/users/:id` check * :zap: Improve checks in `/users/:id` * :sparkles: Add tests for `/users/:id` * :package: Update package-lock.json * :zap: Simplify expectation * :zap: Reuse util for authless agent * :truck: Make role names consistent * :blue_book: Tighten namespaces map type * :fire: Remove unneeded default arg * :sparkles: Add tests for `POST /users` * :blue_book: Create test SMTP account type * :pencil2: Improve wording * :art: Formatting * :fire: Remove temp fix * :zap: Replace helper with config call * :zap: Fix failing tests * :fire: Remove outdated test * :sparkles: Add tests for password reset flow * :pencil2: Fix test wording * :zap: Set password reset namespace * :fire: Remove unused helper * :zap: Increase readability of domain fetcher * :zap: Refactor payload validation * :fire: Remove repetition * :rewind: Restore logging * :zap: Initialize logger in tests * :fire: Remove redundancy from check * :truck: Move `globalOwnerRole` fetching to global scope * :fire: Remove unused imports * :truck: Move random utils to own module * :truck: Move test types to own module * :pencil2: Add dividers to utils * :pencil2: Reorder `initTestServer` param docstring * :pencil2: Add TODO comment * :zap: Dry up member creation * :zap: Tighten search criteria * :test_tube: Add expectation to `GET /users` * :zap: Create role fetcher utils * :zap: Create one more role fetch util * :fire: Remove unneeded DB query * :test_tube: Add expectation to `POST /users` * :test_tube: Add expectation to `DELETE /users/:id` * :test_tube: Add another expectation to `DELETE /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :test_tube: Adjust expectations in `POST /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :blue_book: Add namespace name to type * :truck: Adjust imports * :zap: Optimize `globalOwnerRole` fetching * :test_tube: Add expectations * :shirt: Fix build * :shirt: Fix build * :zap: Update method * :zap: Update method * :test_tube: Fix `POST /change-password` test * :blue_book: Fix `userToDelete` type * :zap: Refactor `createAgent()` * :zap: Make role fetching global * :zap: Optimize roles fetching * :zap: Centralize member creation * :zap: Refactor truncation helper * :test_tube: Add teardown to `DELETE /users/:id` * :test_tube: Add DB expectations to users tests * :zap: Refactor as in users namespace * :test_tube: Add expectation to `POST /change-password` * :fire: Remove pass validation due to hash * :pencil2: Improve pass validation error message * :zap: Improve owner pass validation * :zap: Create logger initialization helper * :zap: Optimize helpers * :zap: Restructure `getAllRoles` helper * :zap: Update `truncate` calls * :bug: return 200 for non-existing user * ✅ fix tests for forgot-password and user creation * Update packages/editor-ui/src/components/MainSidebar.vue Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/components/Telemetry.vue Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * :truck: Fix imports * :zap: reset password just if password exists * Fix validation at `PATCH /workfows/:id` (#2819) * :bug: Validate entity only if workflow * :shirt: Fix build * 🔨 refactor response from user creation * 🐛 um email invite fix (#2833) * update users invite * fix notificaitons stacking on top of each other * remove unnessary check * fix type issues * update structure * fix types * 🐘 database migrations UM + password reset expiration (#2710) * Add table prefix and assign existing workflows and credentials to owner for sqlite * Added user management migration to MySQL * Fixed some missing table prefixes and removed unnecessary user id * Created migration for postgres and applies minor fixes * Fixed migration for sqlite by removing the unnecessary index and for mysql by removing unnecessary user data * Added password reset token expiration * Addressing comments made by Ben * ⚡️ add missing tablePrefix * ✅ fix tests + add tests for expiring pw-reset-token Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :zap: treat skipped personalizationSurvey as not answered * :bug: removing active workflows when deleting user, :bug: fix reinvite, :bug: fix resolve-signup-token, 🐘 remove workflowname uniqueness * ✅ Add DB state check tests (#2841) * :fire: Remove unneeded import * :fire: Remove unneeded vars * :pencil2: Improve naming * :test_tube: Add expectations to `POST /owner` * :test_tube: Add expectations to `PATCH /me` * :test_tube: Add expectation to `PATCH /me/password` * :pencil2: Clarify when owner is owner shell * :test_tube: Add more expectations * :rewind: Restore package-lock to parent branch state * Add logging to user management endpoints v2 (#2836) * :zap: Initialize logger in tests * :zap: Add logs to mailer * :zap: Add logs to middleware * :zap: Add logs to me endpoints * :zap: Add logs to owner endpoints * :zap: Add logs to pass flow endpoints * :zap: Add logs to users endpoints * :blue_book: Improve typings * :zap: Merge two logs into one * :zap: Adjust log type * :zap: Add password reset email log * :pencil2: Reword log message * :zap: Adjust log meta object * :zap: Add total to log * :pencil2: Add detail to log message * :pencil2: Reword log message * :pencil2: Reword log message * :bug: Make total users to set up accurate * :pencil2: Reword `Logger.debug()` messages * :pencil2: Phrasing change for consistency * :bug: Fix ID overridden in range query * :hammer: small refactoring * 🔐 add auth to push-connection * 🛠 ✅ Create credentials namespace and add tests (#2831) * :test_tube: Fix failing test * :blue_book: Improve `createAgent` signature * :truck: Fix `LoggerProxy` import * :sparkles: Create credentials endpoints namespace * :test_tube: Set up initial tests * :zap: Add validation to model * :zap: Adjust validation * :test_tube: Add test * :truck: Sort creds endpoints * :pencil2: Plan out pending tests * :test_tube: Add deletion tests * :test_tube: Add patch tests * :test_tube: Add get cred tests * :truck: Hoist import * :pencil2: Make test descriptions consistent * :pencil2: Adjust description * :test_tube: Add missing test * :pencil2: Make get descriptions consistent * :rewind: Undo line break * :zap: Refactor to simplify `saveCredential` * :test_tube: Add non-owned tests for owner * :pencil2: Improve naming * :pencil2: Add clarifying comments * :truck: Improve imports * :zap: Initialize config file * :fire: Remove unneeded import * :truck: Rename dir * :zap: Adjust deletion call * :zap: Adjust error code * :pencil2: Touch up comment * :zap: Optimize fetching with `@RelationId` * :test_tube: Add expectations * :zap: Simplify mock calls * :blue_book: Set deep readonly to object constants * :fire: Remove unused param and encryption key * :zap: Add more `@RelationId` calls in models * :rewind: Restore * :bug: no auth for .svg * 🛠 move auth cookie name to constant; 🐛 fix auth for push-connection * ✅ Add auth middleware tests (#2853) * :zap: Simplify existing suite * :test_tube: Validate that auth cookie exists * :pencil2: Move comment * :fire: Remove unneeded imports * :pencil2: Add clarifying comments * :pencil2: Document auth endpoints * :test_tube: Add middleware tests * :pencil2: Fix typos Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com> * 🔥 Remove test description wrappers (#2874) * :fire: Remove /owner test wrappers * :fire: Remove auth middleware test wrappers * :fire: Remove auth endpoints test wrappers * :fire: Remove overlooked middleware wrappers * :fire: Remove me namespace test wrappers Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * ✨ Runtime checks for credentials load and execute workflows (#2697) * Runtime checks for credentials load and execute workflows * Fixed from reviewers * Changed runtime validation for credentials to be on start instead of on demand * Refactored validations to use user id instead of whole User instance * Removed user entity from workflow project because it is no longer needed * General fixes and improvements to runtime checks * Remove query builder and improve styling * Fix lint issues * :zap: remove personalizationAnswers when fetching all users * ✅ fix failing get all users test * ✅ check authorization routes also for authentication * :bug: fix defaults in reset command * 🛠 refactorings from walkthrough (#2856) * :zap: Make `getTemplate` async * :zap: Remove query builder from `getCredentials` * :zap: Add save manual executions log message * :rewind: Restore and hide migrations logs * :zap: Centralize ignore paths check * :shirt: Fix build * :truck: Rename `hasOwner` to `isInstanceOwnerSetUp` * :zap: Add `isSetUp` flag to `User` * :zap: Add `isSetUp` to FE interface * :zap: Adjust `isSetUp` checks on FE * :shirt: Fix build * :zap: Adjust `isPendingUser()` check * :truck: Shorten helper name * :zap: Refactor as `isPending` per feedback * :pencil2: Update log message * :zap: Broaden check * :fire: Remove unneeded relation * :zap: Refactor query * :fire: Re-remove logs from migrations * 🛠 set up credentials router (#2882) * :zap: Refactor creds endpoints into router * :test_tube: Refactor creds tests to use router * :truck: Rename arg for consistency * :truck: Move `credentials.api.ts` outside /public * :truck: Rename constant for consistency * :blue_book: Simplify types * :fire: Remove unneeded arg * :truck: Rename router to controller * :zap: Shorten endpoint * :zap: Update `initTestServer()` arg * :zap: Mutate response body in GET /credentials * 🏎 improve performance of type cast for FE Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :bug: remove GET /login from auth * 🔀 merge master + FE update (#2905) * :sparkles: Add Templates (#2720) * Templates Bugs / Fixed Various Bugs / Multiply Api Request, Carousel Gradient, Core Nodes Filters ... * Updated MainSidebar Paddings * N8N-Templates Bugfixing - Remove Unnecesairy Icon (Shape), Refatctor infiniteScrollEnabled Prop + updated infiniterScroll functinality * N8N-2853 Fixed Carousel Arrows Bug after Cleaning the SearchBar * fix telemetry init * fix search tracking issues * N8N-2853 Created FilterTemplateNode Constant Array, Filter PlayButton and WebhookRespond from Nodes, Added Box for showing more nodes inside TemplateList, Updated NewWorkflowButton to primary, Fixed Markdown issue with Code * N8N-2853 Removed Placeholder if Workflows Or Collections are not found, Updated the Logic * fix telemetry events * clean up session id * update user inserted event * N8N-2853 Fixed Categories to Moving if the names are long * Add todos * Update Routes on loading * fix spacing * Update Border Color * Update Border Readius * fix filter fn * fix constant, console error * N8N-2853 PR Fixes, Refactoring, Removing unnecesairy code .. * N8N-2853 PR Fixes - Editor-ui Fixes, Refactoring, Removing Dead Code ... * N8N-2853 Refactor Card to LongCard * clean up spacing, replace css var * clean up spacing * set categories as optional in node * replace vars * refactor store * remove unnesssary import * fix error * fix templates view to start * add to cache * fix coll view data * fix categories * fix category event * fix collections carousel * fix initial load and search * fix infinite load * fix query param * fix scrolling issues * fix scroll to top * fix search * fix collections search * fix navigation bug * rename view * update package lock * rename workflow view * rename coll view * update routes * add wrapper component * set session id * fix search tracking * fix session tracking * remove deleted mutation * remove check for unsupported nodes * refactor filters * lazy load template * clean up types * refactor infinte scroll * fix end of search * Fix spacing * fix coll loading * fix types * fix coll view list * fix navigation * rename types * rename state * fix search responsiveness * fix coll view spacing * fix search view spacing * clean up views * set background color * center page not vert * fix workflow view * remove import * fix background color * fix background * clean props * clean up imports * refactor button * update background color * fix spacing issue * rename event * update telemetry event * update endpoints, add loading view, check for endpoint health * remove conolse log * N8N-2853 Fixed Menu Items Padding * replace endpoints * fix type issues * fix categories * N8N-2853 Fixed ParameterInput Placeholder after ElementUI Upgrade * update createdAt * :zap: Fix placeholder in creds config modal * :pencil2: Adjust docstring to `credText` placeholder version * N8N-2853 Optimized * N8N-2853 Optimized code * :zap: Add deployment type to FE settings * :zap: Add deployment type to interfaces * N8N-2853 Removed Animated prop from components * :zap: Add deployment type to store module * :sparkles: Create hiring banner * :zap: Display hiring banner * :rewind: Undo unrelated change * N8N-2853 Refactor TemplateFilters * :zap: Fix indentation * N8N-2853 Reorder items / TemplateList * :shirt: Fix lint * N8N-2853 Refactor TemplateFilters Component * N8N-2853 Reorder TemplateList * refactor template card * update timeout * fix removelistener * fix spacing * split enabled from offline * add spacing to go back * N8N-2853 Fixed Screens for Tablet & Mobile * N8N-2853 Update Stores Order * remove image componet * remove placeholder changes * N8N-2853 Fixed Chinnese Placeholders for El Select Component that comes from the Library Upgrade * N8N-2853 Fixed Vue Agile Console Warnings * N8N-2853 Update Collection Route * :pencil2: Update jobs URL * :truck: Move logging to root component * :zap: Refactor `deploymentType` to `isInternalUser` * :zap: Improve syntax * fix cut bug in readonly view * N8N-3012 Fixed Details section in templates with lots of description, Fixed Mardown Block with overflox-x * N8N-3012 Increased Font-size, Spacing and Line-height of the Categories Items * N8N-3012 Fixed Vue-agile client width error on resize * only delay redirect for root path * N8N-3012 Fixed Carousel Arrows that Disappear * N8N-3012 Make Loading Screen same color as Templates * N8N-3012 Markdown renders inline block as block code * add offline warning * hide log from workflow iframe * update text * make search button larger * N8N-3012 Categories / Tags extended all the way in details section * load data in cred modals * remove deleted message * add external hook * remove import * update env variable description * fix markdown width issue * disable telemetry for demo, add session id to template pages * fix telemetery bugs * N8N-3012 Not found Collections/Wokrkflow * N8N-3012 Checkboxes change order when categories are changed * N8N-3012 Refactor SortedCategories inside TemplateFilters component * fix firefox bug * add telemetry requirements * add error check * N8N-3012 Update GoBackButton to check if Route History is present * N8N-3012 Fixed WF Nodes Icons * hide workflow screenshots * remove unnessary mixins * rename prop * fix design a bit * rename data * clear workspace on destroy * fix copy paste bug * fix disabled state * N8N-3012 Fixed Saving/Leave without saving Modal * fix telemetry issue * fix telemetry issues, error bug * fix error notification * disable workflow menu items on templates * fix i18n elementui issue * Remove Emit - NodeType from HoverableNodeIcon component * TechnicalFixes: NavigateTo passed down as function should be helper * TechnicalFixes: Update NavigateTo function * TechnicalFixes: Add FilterCoreNodes directly as function * check for empty connecitions * fix titles * respect new lines * increase categories to be sliced * rename prop * onUseWorkflow * refactor click event * fix bug, refactor * fix loading story * add default * fix styles at right level of abstraction * add wrapper with width * remove loading blocks component * add story * rename prop * fix spacing * refactor tag, add story * move margin to container * fix tag redirect, remove unnessary check * make version optional * rename view * move from workflows to templates store * remove unnessary change * remove unnessary css * rename component * refactor collection card * add boolean to prevent shrink * clean up carousel * fix redirection bug on save * remove listeners to fix multiple listeners bug * remove unnessary types * clean up boolean set * fix node select bug * rename component * remove unnessary class * fix redirection bug * remove unnessary error * fix typo * fix blockquotes, pre * refactor markdown rendering * remove console log * escape markdown * fix safari bug * load active workflows to fix modal bug * :arrow_up: Update package-lock.json file * :zap: Add n8n version as header Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com> Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :bookmark: Release n8n-workflow@0.88.0 * :arrow_up: Set n8n-workflow@0.88.0 on n8n-core * :bookmark: Release n8n-core@0.106.0 * :arrow_up: Set n8n-core@0.106.0 and n8n-workflow@0.88.0 on n8n-node-dev * :bookmark: Release n8n-node-dev@0.45.0 * :arrow_up: Set n8n-core@0.106.0 and n8n-workflow@0.88.0 on n8n-nodes-base * :bookmark: Release n8n-nodes-base@0.163.0 * :bookmark: Release n8n-design-system@0.12.0 * :arrow_up: Set n8n-design-system@0.12.0 and n8n-workflow@0.88.0 on n8n-editor-ui * :bookmark: Release n8n-editor-ui@0.132.0 * :arrow_up: Set n8n-core@0.106.0, n8n-editor-ui@0.132.0, n8n-nodes-base@0.163.0 and n8n-workflow@0.88.0 on n8n * :bookmark: Release n8n@0.165.0 * fix default user bug * fix bug * update package lock * fix duplicate import * fix settings * fix templates access Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :zap: n8n 2952 personalisation (#2911) * refactor/update survey * update customers * Fix up personalization survey * fix recommendation logic * set to false * hide suggested nodes when empty * use keys * add missing logic * switch types * Fix logic * remove unused constants * add back constant * refactor filtering inputs * hide last input on personal * fix other * ✨ add current pw check for change password (#2912) * fix back button * Add current password input * add to modal * update package.json * delete mock file * delete mock file * get settings func * update router * update package lock * update package lock * Fix invite text * update error i18n * open personalization on search if not set * update error view i18n * update change password * update settings sidebar * remove import * fix sidebar * :goal_net: fix error for credential/workflow not found * update invite modal * ✨ persist skipping owner setup (#2894) * 🚧 added skipInstanceOwnerSetup to DB + route to save skipping * ✨ skipping owner setup persists * ✅ add tests for authorization and /owner/skip-setup * 🛠 refactor FE settings getter * 🛠 move setting setup stop to owner creation * :bug: fix wrong setting of User.isPending * :bug: fix isPending * 🏷 add isPending to PublicUser * :bug: fix unused import * update delete modal * change password modal * remove _label * sort keys * remove key * update key names * fix test endpoint * 🥅 Handle error workflows permissions (#2908) * Handle error workflows permissions * Fixed wrong query format * 🛠 refactor query Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com> * fix ts issue * fix list after ispending changes * fix error page bugs * fix error redirect * fix notification * :bug: fix survey import in migration * fix up spacing * update keys spacing * update keys * add space * update key * fix up more spacing * 🔐 add current password (#2919) * add curr pass * update key names * :bug: stringify tag ids * 🔐 check current password before update * add package lock * fix dep version * update version * 🐛 fix access for instance owner to credentials (#2927) * 🛠 stringify tag id on entity * 🔐 Update password requirements (#2920) * :zap: Update password requirements * :zap: Adjust random helpers * ✅ fix tests for currentPassword check * change redirection, add homepage * fix error view redirection * updated wording * fix setup redirection * update validator * remove successfully * update consumers * update settings redirect * on signup, redirect to homepage * update empty state * add space to emails * remove brackets * add opacity * update spacing * remove border from last user * personal details updated * update redirect on sign up * prevent text wrap * fix notification title line height * remove console log * 🐘 Support testing with Postgres and MySQL (#2886) * :card_file_box: Fix Postgres migrations * :zap: Add DB-specific scripts * :sparkles: Set up test connections * :zap: Add Postgres UUID check * :test_tube: Make test adjustments for Postgres * :zap: Refactor connection logic * :sparkles: Set up double init for Postgres * :pencil2: Add TODOs * :zap: Refactor DB dropping logic * :sparkles: Implement global teardown * :sparkles: Create TypeORM wrappers * :sparkles: Initial MySQL setup * :zap: Clean up Postgres connection options * :zap: Simplify by sharing bootstrap connection name * :card_file_box: Fix MySQL migrations * :fire: Remove comments * :zap: Use ES6 imports * :fire: Remove outdated comments * :zap: Centralize bootstrap connection name handles * :zap: Centralize database types * :pencil2: Update comment * :truck: Rename `findRepository` * :construction: Attempt to truncate MySQL * :sparkles: Implement creds router * :bug: Fix duplicated MySQL bootstrap * :bug: Fix misresolved merge conflict * :card_file_box: Fix tags migration * :card_file_box: Fix MySQL UM migration * :bug: Fix MySQL parallelization issues * :blue_book: Augment TypeORM to prevent error * :fire: Remove comments * :sparkles: Support one sqlite DB per suite run * :truck: Move `testDb` to own module * :fire: Deduplicate bootstrap Postgres logic * :fire: Remove unneeded comment * :zap: Make logger init calls consistent * :pencil2: Improve comment * :pencil2: Add dividers * :art: Improve formatting * :fire: Remove duplicate MySQL global setting * :truck: Move comment * :zap: Update default test script * :fire: Remove unneeded helper * :zap: Unmarshal answers from Postgres * :bug: Phase out `isTestRun` * :zap: Refactor `isEmailSetup` * :fire: Remove unneeded imports * :zap: Handle bootstrap connection errors * :fire: Remove unneeded imports * :fire: Remove outdated comments * :pencil2: Fix typos * :truck: Relocate `answersFormatter` * :rewind: Undo package.json miscommit * :fire: Remove unneeded import * :zap: Refactor test DB prefixing * :zap: Add no-leftover check to MySQL * :package: Update package.json * :zap: Autoincrement on simulated MySQL truncation * :fire: Remove debugging queries * ✏️ fix email template link expiry * 🔥 remove unused import * ✅ fix testing email not sent error * fix duplicate import * add package lock * fix export * change opacity * fix text issue * update action box * update error title * update forgot password * update survey * update product text * remove unset fields * add category to page events * remove duplicate import * update key * update key * update label type * 🎨 um/fe review (#2946) * :whale: Update Node.js versions of Docker images to 16 * :bug: Fix that some keyboard shortcuts did no longer work * N8N-3057 Fixed Keyboard shortcuts no longer working on / Fixed callDebounced function * N8N-3057 Update Debounce Function * N8N-3057 Refactor callDebounce function * N8N-3057 Update Dobounce Function * :bug: Fix issue with tooltips getting displayed behind node details view * fix tooltips z-index * move all element ui components * update package lock * :bug: Fix credentials list load issue (#2931) * always fetch credentials * only fetch credentials once * :zap: Allow to disable hiring banner (#2902) * :sparkles: Add flag * :zap: Adjust interfaces * :zap: Adjust store module * :zap: Adjust frontend settings * :zap: Adjust frontend display * :bug: Fix issue that ctrl + o did behave wrong on workflow templates page (#2934) * N8N-3094 Workflow Templates cmd-o acts on the Preview/Iframe * N8N-3094 Workflow Templates cmd-o acts on the Preview/Iframe * disable shortcuts for preview Co-authored-by: Mutasem <mutdmour@gmail.com> * :arrow_up: Update package-lock.json file * :bug: Fix sorting by field in Baserow Node (#2942) This fixes a bug which currently leads to the "Sorting" option of the node to be ignored. * :bug: Fix some i18n line break issues * :sparkles: Add Odoo Node (#2601) * added odoo scaffolding * update getting data from odoo instance * added scaffolding for main loop and request functions * added functions for CRUD opperations * improoved error handling for odooJSONRPCRequest * updated odoo node and fixing nodelinter issues * fixed alpabetical order * fixed types in odoo node * fixing linter errors * fixing linter errors * fixed data shape returned from man loop * updated node input types, added fields list to models * update when custom resource is selected options for fields list will be populated dynamicly * minor fixes * :hammer: fixed credential test, updating CRUD methods * :hammer: added additional fields to crm resource * :hammer: added descriptions, fixed credentials test bug * :hammer: standardize node and descriptions design * :hammer: removed comments * :hammer: added pagination to getAll operation * :zap: removed leftover function from previous implementation, removed required from optional fields * :zap: fixed id field, added indication of type and if required to field description, replaced string input in filters to fetched list of fields * :hammer: fetching list of models from odoo, added selection of fields to be returned to predefined models, fixes accordingly to review * :zap: Small improvements * :hammer: extracted adress fields into collection, changed fields to include in descriptions, minor tweaks * :zap: Improvements * :hammer: working on review * :hammer: fixed linter errors * :hammer: review wip * :hammer: review wip * :hammer: review wip * :zap: updated display name for URL in credentials * :hammer: added checks for valid id to delete and update * :zap: Minor improvements Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :bug: Handle Wise SCA requests (#2734) * :zap: Improve Wise error message after previous change * fix duplicate import * add package lock * fix export * change opacity * fix text issue * update action box * update error title * update forgot password * update survey * update product text * remove unset fields * add category to page events * remove duplicate import * update key * update key Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Tom <19203795+that-one-tom@users.noreply.github.com> Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com> Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: pemontto <939704+pemontto@users.noreply.github.com> * Move owner skip from settings * 🐛 SMTP fixes (#2937) * :fire: Remove `UM_` from SMTP env vars * :fire: Remove SMTP host default value * :zap: Update sender value * :zap: Update invite template * :zap: Update password reset template * :zap: Update `N8N_EMAIL_MODE` default value * :fire: Remove `EMAIL` from all SMTP vars * :sparkles: Implement `verifyConnection()` * :truck: Reposition comment * :pencil2: Fix typo * :pencil2: Minor env var documentation improvements * :art: Fix spacing * :art: Fix spacing * :card_file_box: Remove SMTP settings cache * :zap: Adjust log message * :zap: Update error message * :pencil2: Fix template typo * :pencil2: Adjust wording * :zap: Interpolate email into success toast * :pencil2: Adjust base message in `verifyConnection()` * :zap: Verify connection on password reset * :zap: Bring up POST /users SMTP check * :bug: remove cookie if cookie is not valid * :zap: verify connection on instantiation Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * 🔊 create logger helper for migrations (#2944) * 🔥 remove unused database * :loud_sound: add migration logging for sqlite * 🔥 remove unnecessary index creation * ⚡️ change log level to warn * 🐛 Fix issue with workflow process to initialize db connection correctly (#2948) * ✏️ update error messages for webhhook run/activation * 📈 Implement telemetry events (#2868) * Implement basic telemetry events * Fixing user id as part of the telemetry data * Added user id to be part of the tracked data * :sparkles: Create telemetry mock * :test_tube: Fix tests with telemetry mock * :test_tube: Fix missing key in authless endpoint * :blue_book: Create authless request type * :fire: Remove log * :bug: Fix `migration_strategy` assignment * :blue_book: Remove `instance_id` from `ITelemetryUserDeletionData` * :zap: Simplify concatenation * :zap: Simplify `track()` call signature * Fixed payload of telemetry to always include user_id * Fixing minor issues Co-authored-by: Iván Ovejero <ivov.src@gmail.com> * 🔊 Added logs to credentials, executions and workflows (#2915) * Added logs to credentials, executions and workflows * Some updates according to ivov's feedback * :zap: update log levels * ✅ fix tests Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :bug: fix telemetry error * fix conflicts with master * fix duplicate * add package-lock * :bug: Um/fixes (#2952) * add initials to avatar * redirect to signin if invalid token * update pluralization * add auth page category * data transferred * touch up setup page * update button to add cursor * fix personalization modal not closing * ✏️ fix environment name * 🐛 fix disabling UM * 🐛 fix email setup flag * 🐛 FE fixes 1 (#2953) * add initials to avatar * redirect to signin if invalid token * update pluralization * add auth page category * data transferred * touch up setup page * update button to add cursor * fix personalization modal not closing * capitalize labels, refactor text * Fixed the issue with telemetry data missing for personalization survey * Changed invite email text * 🐛 Fix quotes issue with postgres migration (#2958) * Changed text for invite link * 🐛 fix reset command for mysql * ✅ fix race condition in test DB creation * 🔐 block user creation if UM is disabled * 🥅 improve smtp setup issue error * :zap: update error message * refactor route rules * set package lock * fix access * remove capitalize * update input labels * refactor heading * change span to fragment * add route types * refactor views * ✅ fix increase timeout for mysql * :zap: correct logic of error message * refactor view names * :zap: update randomString * 📈 Added missing event regarding failed emails (#2964) * replace label with info * 🛠 refactor JWT-secret creation * remove duplicate key * remove unused part * remove semicolon * fix up i18n pattern * update translation keys * update urls * support i18n in nds * fix how external keys are handled * add source * 💥 update timestamp of UM migration * ✏️ small message updates * fix tracking * update notification line-height * fix avatar opacity * fix up empty state * shift focus to input * 🔐 Disable basic auth after owner has been set up (#2973) * Disable basic auth after owner has been set up * Remove unnecessary comparison * rename modal title * 🐛 use pgcrypto extension for uuid creation (#2977) * 📧 Added public url variable for emails (#2967) * Added public url variable for emails * Fixed base url for reset password - the current implementation overrides possibly existing path * Change variable name to editorUrl * Using correct name editorUrl for emails * Changed variable description * Improved base url naming and appending path so it remains consistent * Removed trailing slash from editor base url * 🌐 fix i18n pattern (#2970) * fix up i18n pattern * update translation keys * update urls * support i18n in nds * fix how external keys are handled * add source * Um/fixes 1000 (#2980) * fix select issue * 😫 hacky solution to circumvent pgcrypto (#2979) * fix owner bug after transfer. always fetch latest credentials * add confirmation modal to setup * Use webhook url as fallback when editor url is not defined * fix enter bug * update modal * update modal * update modal text, fix bug in settings view * Updating editor url to not append path * rename keys Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com> Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> Co-authored-by: Omar Ajoue <krynble@gmail.com> Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> Co-authored-by: Tom <19203795+that-one-tom@users.noreply.github.com> Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com> Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: pemontto <939704+pemontto@users.noreply.github.com>
2022-03-14 06:46:32 -07:00
runningUser: User,
:art: Set up linting and formatting (#2120) * :arrow_up: Upgrade TS to 4.3.5 * :shirt: Add ESLint configs * :art: Add Prettier config * :package: Add deps and commands * :zap: Adjust global .editorconfig to new ruleset * :fire: Remove unneeded local .editorconfig * :package: Update deps in editor-ui * :hammer: Limit Prettier to only TS files * :zap: Add recommended VSCode extensions * :shirt: Fix build * :fire: Remove Vue setting from global config * :zap: Disable prefer-default-export per feedback * :pencil2: Add forgotten divider * :shirt: Disable no-plusplus * :shirt: Disable class-methods-use-this * :pencil2: Alphabetize overrides * :shirt: Add one-var consecutive override * :rewind: Revert one-var consecutive override This reverts commit b9252cf935659ba6d76727ad484a1d3c00008fcc. * 🎨 👕 Lint and format workflow package (#2121) * :art: Format /workflow package * :shirt: Lint /workflow package * :art: Re-format /workflow package * :shirt: Re-lint /workflow package * :pencil2: Fix typo * :zap: Consolidate if-checks * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format node-dev package (#2122) * :art: Format /node-dev package * :zap: Exclude templates from ESLint config This keeps the templates consistent with the codebase while preventing lint exceptions from being made part of the templates. * :shirt: Lint /node-dev package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * 🎨 👕 Lint and format core package (#2123) * :art: Format /core package * :shirt: Lint /core package * :art: Re-format /core package * :shirt: Re-lint /core package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format cli package (#2124) * :art: Format /cli package * :shirt: Exclude migrations from linting * :shirt: Lint /cli package * :art: Re-format /cli package * :shirt: Re-lint /cli package * :shirt: Fix build * :fire: Remove prefer-default-export exceptions * :zap: Update exceptions in ActiveExecutions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 👕 fix lint issues * :wrench: use package specific linter, remove tslint command * :hammer: resolve build issue, sync dependencies * :wrench: change lint command Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>
2021-08-29 11:58:11 -07:00
): Promise<void> {
2019-06-23 03:35:23 -07:00
// Wrap everything in try/catch to make sure that no errors bubble up and all get caught here
try {
feat: Add User Management (#2636) * ✅ adjust tests * 🛠 refactor user invites to be indempotent (#2791) * 🔐 Encrypt SMTP pass for user management backend (#2793) * :package: Add crypto-js to /cli * :package: Update package-lock.json * :sparkles: Create type for SMTP config * :zap: Encrypt SMTP pass * :zap: Update format for `userManagement.emails.mode` * :zap: Update format for `binaryDataManager.mode` * :zap: Update format for `logs.level` * :fire: Remove logging * :shirt: Fix lint * 👰 n8n 2826 um wedding FE<>BE (#2789) * remove mocks * update authorization func * lock down default role * 🐛 fix requiring authentication for OPTIONS requests * :bug: fix cors and cookie issues in dev * update setup route Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * update telemetry * 🐛 preload role for users * :bug: remove auth for password reset routes * 🐛 fix forgot-password flow * :zap: allow workflow tag disabling * update telemetry init * add reset * clear error notifications on signin * remove load settings from node view * remove user id from user state * inherit existing user props * go back in history on button click * use replace to force redirect * update stories * :zap: add env check for tag create * :test_tube: Add `/users` tests for user management backend (#2790) * :zap: Refactor users namespace * :zap: Adjust fillout endpoint * :zap: Refactor initTestServer arg * :pencil2: Specify agent type * :pencil2: Specify role type * :zap: Tighten `/users/:id` check * :sparkles: Add initial tests * :truck: Reposition init server map * :zap: Set constants in `validatePassword()` * :zap: Tighten `/users/:id` check * :zap: Improve checks in `/users/:id` * :sparkles: Add tests for `/users/:id` * :package: Update package-lock.json * :zap: Simplify expectation * :zap: Reuse util for authless agent * :truck: Make role names consistent * :blue_book: Tighten namespaces map type * :fire: Remove unneeded default arg * :sparkles: Add tests for `POST /users` * :blue_book: Create test SMTP account type * :pencil2: Improve wording * :art: Formatting * :fire: Remove temp fix * :zap: Replace helper with config call * :zap: Fix failing tests * :fire: Remove outdated test * :fire: Remove unused helper * :zap: Increase readability of domain fetcher * :zap: Refactor payload validation * :fire: Remove repetition * :rewind: Restore logging * :zap: Initialize logger in tests * :fire: Remove redundancy from check * :truck: Move `globalOwnerRole` fetching to global scope * :fire: Remove unused imports * :truck: Move random utils to own module * :truck: Move test types to own module * :pencil2: Add dividers to utils * :pencil2: Reorder `initTestServer` param docstring * :pencil2: Add TODO comment * :zap: Dry up member creation * :zap: Tighten search criteria * :test_tube: Add expectation to `GET /users` * :zap: Create role fetcher utils * :zap: Create one more role fetch util * :fire: Remove unneeded DB query * :test_tube: Add expectation to `POST /users` * :test_tube: Add expectation to `DELETE /users/:id` * :test_tube: Add another expectation to `DELETE /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :test_tube: Adjust expectations in `POST /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :shirt: Fix build * :zap: Update method * :blue_book: Fix `userToDelete` type * :zap: Refactor `createAgent()` * :zap: Make role fetching global * :zap: Optimize roles fetching * :zap: Centralize member creation * :zap: Refactor truncation helper * :test_tube: Add teardown to `DELETE /users/:id` * :test_tube: Add DB expectations to users tests * :fire: Remove pass validation due to hash * :pencil2: Improve pass validation error message * :zap: Improve owner pass validation * :zap: Create logger initialization helper * :zap: Optimize helpers * :zap: Restructure `getAllRoles` helper * :test_tube: Add password reset flow tests for user management backend (#2807) * :zap: Refactor users namespace * :zap: Adjust fillout endpoint * :zap: Refactor initTestServer arg * :pencil2: Specify agent type * :pencil2: Specify role type * :zap: Tighten `/users/:id` check * :sparkles: Add initial tests * :truck: Reposition init server map * :zap: Set constants in `validatePassword()` * :zap: Tighten `/users/:id` check * :zap: Improve checks in `/users/:id` * :sparkles: Add tests for `/users/:id` * :package: Update package-lock.json * :zap: Simplify expectation * :zap: Reuse util for authless agent * :truck: Make role names consistent * :blue_book: Tighten namespaces map type * :fire: Remove unneeded default arg * :sparkles: Add tests for `POST /users` * :blue_book: Create test SMTP account type * :pencil2: Improve wording * :art: Formatting * :fire: Remove temp fix * :zap: Replace helper with config call * :zap: Fix failing tests * :fire: Remove outdated test * :sparkles: Add tests for password reset flow * :pencil2: Fix test wording * :zap: Set password reset namespace * :fire: Remove unused helper * :zap: Increase readability of domain fetcher * :zap: Refactor payload validation * :fire: Remove repetition * :rewind: Restore logging * :zap: Initialize logger in tests * :fire: Remove redundancy from check * :truck: Move `globalOwnerRole` fetching to global scope * :fire: Remove unused imports * :truck: Move random utils to own module * :truck: Move test types to own module * :pencil2: Add dividers to utils * :pencil2: Reorder `initTestServer` param docstring * :pencil2: Add TODO comment * :zap: Dry up member creation * :zap: Tighten search criteria * :test_tube: Add expectation to `GET /users` * :zap: Create role fetcher utils * :zap: Create one more role fetch util * :fire: Remove unneeded DB query * :test_tube: Add expectation to `POST /users` * :test_tube: Add expectation to `DELETE /users/:id` * :test_tube: Add another expectation to `DELETE /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :test_tube: Adjust expectations in `POST /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :blue_book: Add namespace name to type * :truck: Adjust imports * :zap: Optimize `globalOwnerRole` fetching * :test_tube: Add expectations * :shirt: Fix build * :shirt: Fix build * :zap: Update method * :zap: Update method * :test_tube: Fix `POST /change-password` test * :blue_book: Fix `userToDelete` type * :zap: Refactor `createAgent()` * :zap: Make role fetching global * :zap: Optimize roles fetching * :zap: Centralize member creation * :zap: Refactor truncation helper * :test_tube: Add teardown to `DELETE /users/:id` * :test_tube: Add DB expectations to users tests * :zap: Refactor as in users namespace * :test_tube: Add expectation to `POST /change-password` * :fire: Remove pass validation due to hash * :pencil2: Improve pass validation error message * :zap: Improve owner pass validation * :zap: Create logger initialization helper * :zap: Optimize helpers * :zap: Restructure `getAllRoles` helper * :zap: Update `truncate` calls * :bug: return 200 for non-existing user * ✅ fix tests for forgot-password and user creation * Update packages/editor-ui/src/components/MainSidebar.vue Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/components/Telemetry.vue Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * :truck: Fix imports * :zap: reset password just if password exists * Fix validation at `PATCH /workfows/:id` (#2819) * :bug: Validate entity only if workflow * :shirt: Fix build * 🔨 refactor response from user creation * 🐛 um email invite fix (#2833) * update users invite * fix notificaitons stacking on top of each other * remove unnessary check * fix type issues * update structure * fix types * 🐘 database migrations UM + password reset expiration (#2710) * Add table prefix and assign existing workflows and credentials to owner for sqlite * Added user management migration to MySQL * Fixed some missing table prefixes and removed unnecessary user id * Created migration for postgres and applies minor fixes * Fixed migration for sqlite by removing the unnecessary index and for mysql by removing unnecessary user data * Added password reset token expiration * Addressing comments made by Ben * ⚡️ add missing tablePrefix * ✅ fix tests + add tests for expiring pw-reset-token Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :zap: treat skipped personalizationSurvey as not answered * :bug: removing active workflows when deleting user, :bug: fix reinvite, :bug: fix resolve-signup-token, 🐘 remove workflowname uniqueness * ✅ Add DB state check tests (#2841) * :fire: Remove unneeded import * :fire: Remove unneeded vars * :pencil2: Improve naming * :test_tube: Add expectations to `POST /owner` * :test_tube: Add expectations to `PATCH /me` * :test_tube: Add expectation to `PATCH /me/password` * :pencil2: Clarify when owner is owner shell * :test_tube: Add more expectations * :rewind: Restore package-lock to parent branch state * Add logging to user management endpoints v2 (#2836) * :zap: Initialize logger in tests * :zap: Add logs to mailer * :zap: Add logs to middleware * :zap: Add logs to me endpoints * :zap: Add logs to owner endpoints * :zap: Add logs to pass flow endpoints * :zap: Add logs to users endpoints * :blue_book: Improve typings * :zap: Merge two logs into one * :zap: Adjust log type * :zap: Add password reset email log * :pencil2: Reword log message * :zap: Adjust log meta object * :zap: Add total to log * :pencil2: Add detail to log message * :pencil2: Reword log message * :pencil2: Reword log message * :bug: Make total users to set up accurate * :pencil2: Reword `Logger.debug()` messages * :pencil2: Phrasing change for consistency * :bug: Fix ID overridden in range query * :hammer: small refactoring * 🔐 add auth to push-connection * 🛠 ✅ Create credentials namespace and add tests (#2831) * :test_tube: Fix failing test * :blue_book: Improve `createAgent` signature * :truck: Fix `LoggerProxy` import * :sparkles: Create credentials endpoints namespace * :test_tube: Set up initial tests * :zap: Add validation to model * :zap: Adjust validation * :test_tube: Add test * :truck: Sort creds endpoints * :pencil2: Plan out pending tests * :test_tube: Add deletion tests * :test_tube: Add patch tests * :test_tube: Add get cred tests * :truck: Hoist import * :pencil2: Make test descriptions consistent * :pencil2: Adjust description * :test_tube: Add missing test * :pencil2: Make get descriptions consistent * :rewind: Undo line break * :zap: Refactor to simplify `saveCredential` * :test_tube: Add non-owned tests for owner * :pencil2: Improve naming * :pencil2: Add clarifying comments * :truck: Improve imports * :zap: Initialize config file * :fire: Remove unneeded import * :truck: Rename dir * :zap: Adjust deletion call * :zap: Adjust error code * :pencil2: Touch up comment * :zap: Optimize fetching with `@RelationId` * :test_tube: Add expectations * :zap: Simplify mock calls * :blue_book: Set deep readonly to object constants * :fire: Remove unused param and encryption key * :zap: Add more `@RelationId` calls in models * :rewind: Restore * :bug: no auth for .svg * 🛠 move auth cookie name to constant; 🐛 fix auth for push-connection * ✅ Add auth middleware tests (#2853) * :zap: Simplify existing suite * :test_tube: Validate that auth cookie exists * :pencil2: Move comment * :fire: Remove unneeded imports * :pencil2: Add clarifying comments * :pencil2: Document auth endpoints * :test_tube: Add middleware tests * :pencil2: Fix typos Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com> * 🔥 Remove test description wrappers (#2874) * :fire: Remove /owner test wrappers * :fire: Remove auth middleware test wrappers * :fire: Remove auth endpoints test wrappers * :fire: Remove overlooked middleware wrappers * :fire: Remove me namespace test wrappers Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * ✨ Runtime checks for credentials load and execute workflows (#2697) * Runtime checks for credentials load and execute workflows * Fixed from reviewers * Changed runtime validation for credentials to be on start instead of on demand * Refactored validations to use user id instead of whole User instance * Removed user entity from workflow project because it is no longer needed * General fixes and improvements to runtime checks * Remove query builder and improve styling * Fix lint issues * :zap: remove personalizationAnswers when fetching all users * ✅ fix failing get all users test * ✅ check authorization routes also for authentication * :bug: fix defaults in reset command * 🛠 refactorings from walkthrough (#2856) * :zap: Make `getTemplate` async * :zap: Remove query builder from `getCredentials` * :zap: Add save manual executions log message * :rewind: Restore and hide migrations logs * :zap: Centralize ignore paths check * :shirt: Fix build * :truck: Rename `hasOwner` to `isInstanceOwnerSetUp` * :zap: Add `isSetUp` flag to `User` * :zap: Add `isSetUp` to FE interface * :zap: Adjust `isSetUp` checks on FE * :shirt: Fix build * :zap: Adjust `isPendingUser()` check * :truck: Shorten helper name * :zap: Refactor as `isPending` per feedback * :pencil2: Update log message * :zap: Broaden check * :fire: Remove unneeded relation * :zap: Refactor query * :fire: Re-remove logs from migrations * 🛠 set up credentials router (#2882) * :zap: Refactor creds endpoints into router * :test_tube: Refactor creds tests to use router * :truck: Rename arg for consistency * :truck: Move `credentials.api.ts` outside /public * :truck: Rename constant for consistency * :blue_book: Simplify types * :fire: Remove unneeded arg * :truck: Rename router to controller * :zap: Shorten endpoint * :zap: Update `initTestServer()` arg * :zap: Mutate response body in GET /credentials * 🏎 improve performance of type cast for FE Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :bug: remove GET /login from auth * 🔀 merge master + FE update (#2905) * :sparkles: Add Templates (#2720) * Templates Bugs / Fixed Various Bugs / Multiply Api Request, Carousel Gradient, Core Nodes Filters ... * Updated MainSidebar Paddings * N8N-Templates Bugfixing - Remove Unnecesairy Icon (Shape), Refatctor infiniteScrollEnabled Prop + updated infiniterScroll functinality * N8N-2853 Fixed Carousel Arrows Bug after Cleaning the SearchBar * fix telemetry init * fix search tracking issues * N8N-2853 Created FilterTemplateNode Constant Array, Filter PlayButton and WebhookRespond from Nodes, Added Box for showing more nodes inside TemplateList, Updated NewWorkflowButton to primary, Fixed Markdown issue with Code * N8N-2853 Removed Placeholder if Workflows Or Collections are not found, Updated the Logic * fix telemetry events * clean up session id * update user inserted event * N8N-2853 Fixed Categories to Moving if the names are long * Add todos * Update Routes on loading * fix spacing * Update Border Color * Update Border Readius * fix filter fn * fix constant, console error * N8N-2853 PR Fixes, Refactoring, Removing unnecesairy code .. * N8N-2853 PR Fixes - Editor-ui Fixes, Refactoring, Removing Dead Code ... * N8N-2853 Refactor Card to LongCard * clean up spacing, replace css var * clean up spacing * set categories as optional in node * replace vars * refactor store * remove unnesssary import * fix error * fix templates view to start * add to cache * fix coll view data * fix categories * fix category event * fix collections carousel * fix initial load and search * fix infinite load * fix query param * fix scrolling issues * fix scroll to top * fix search * fix collections search * fix navigation bug * rename view * update package lock * rename workflow view * rename coll view * update routes * add wrapper component * set session id * fix search tracking * fix session tracking * remove deleted mutation * remove check for unsupported nodes * refactor filters * lazy load template * clean up types * refactor infinte scroll * fix end of search * Fix spacing * fix coll loading * fix types * fix coll view list * fix navigation * rename types * rename state * fix search responsiveness * fix coll view spacing * fix search view spacing * clean up views * set background color * center page not vert * fix workflow view * remove import * fix background color * fix background * clean props * clean up imports * refactor button * update background color * fix spacing issue * rename event * update telemetry event * update endpoints, add loading view, check for endpoint health * remove conolse log * N8N-2853 Fixed Menu Items Padding * replace endpoints * fix type issues * fix categories * N8N-2853 Fixed ParameterInput Placeholder after ElementUI Upgrade * update createdAt * :zap: Fix placeholder in creds config modal * :pencil2: Adjust docstring to `credText` placeholder version * N8N-2853 Optimized * N8N-2853 Optimized code * :zap: Add deployment type to FE settings * :zap: Add deployment type to interfaces * N8N-2853 Removed Animated prop from components * :zap: Add deployment type to store module * :sparkles: Create hiring banner * :zap: Display hiring banner * :rewind: Undo unrelated change * N8N-2853 Refactor TemplateFilters * :zap: Fix indentation * N8N-2853 Reorder items / TemplateList * :shirt: Fix lint * N8N-2853 Refactor TemplateFilters Component * N8N-2853 Reorder TemplateList * refactor template card * update timeout * fix removelistener * fix spacing * split enabled from offline * add spacing to go back * N8N-2853 Fixed Screens for Tablet & Mobile * N8N-2853 Update Stores Order * remove image componet * remove placeholder changes * N8N-2853 Fixed Chinnese Placeholders for El Select Component that comes from the Library Upgrade * N8N-2853 Fixed Vue Agile Console Warnings * N8N-2853 Update Collection Route * :pencil2: Update jobs URL * :truck: Move logging to root component * :zap: Refactor `deploymentType` to `isInternalUser` * :zap: Improve syntax * fix cut bug in readonly view * N8N-3012 Fixed Details section in templates with lots of description, Fixed Mardown Block with overflox-x * N8N-3012 Increased Font-size, Spacing and Line-height of the Categories Items * N8N-3012 Fixed Vue-agile client width error on resize * only delay redirect for root path * N8N-3012 Fixed Carousel Arrows that Disappear * N8N-3012 Make Loading Screen same color as Templates * N8N-3012 Markdown renders inline block as block code * add offline warning * hide log from workflow iframe * update text * make search button larger * N8N-3012 Categories / Tags extended all the way in details section * load data in cred modals * remove deleted message * add external hook * remove import * update env variable description * fix markdown width issue * disable telemetry for demo, add session id to template pages * fix telemetery bugs * N8N-3012 Not found Collections/Wokrkflow * N8N-3012 Checkboxes change order when categories are changed * N8N-3012 Refactor SortedCategories inside TemplateFilters component * fix firefox bug * add telemetry requirements * add error check * N8N-3012 Update GoBackButton to check if Route History is present * N8N-3012 Fixed WF Nodes Icons * hide workflow screenshots * remove unnessary mixins * rename prop * fix design a bit * rename data * clear workspace on destroy * fix copy paste bug * fix disabled state * N8N-3012 Fixed Saving/Leave without saving Modal * fix telemetry issue * fix telemetry issues, error bug * fix error notification * disable workflow menu items on templates * fix i18n elementui issue * Remove Emit - NodeType from HoverableNodeIcon component * TechnicalFixes: NavigateTo passed down as function should be helper * TechnicalFixes: Update NavigateTo function * TechnicalFixes: Add FilterCoreNodes directly as function * check for empty connecitions * fix titles * respect new lines * increase categories to be sliced * rename prop * onUseWorkflow * refactor click event * fix bug, refactor * fix loading story * add default * fix styles at right level of abstraction * add wrapper with width * remove loading blocks component * add story * rename prop * fix spacing * refactor tag, add story * move margin to container * fix tag redirect, remove unnessary check * make version optional * rename view * move from workflows to templates store * remove unnessary change * remove unnessary css * rename component * refactor collection card * add boolean to prevent shrink * clean up carousel * fix redirection bug on save * remove listeners to fix multiple listeners bug * remove unnessary types * clean up boolean set * fix node select bug * rename component * remove unnessary class * fix redirection bug * remove unnessary error * fix typo * fix blockquotes, pre * refactor markdown rendering * remove console log * escape markdown * fix safari bug * load active workflows to fix modal bug * :arrow_up: Update package-lock.json file * :zap: Add n8n version as header Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com> Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :bookmark: Release n8n-workflow@0.88.0 * :arrow_up: Set n8n-workflow@0.88.0 on n8n-core * :bookmark: Release n8n-core@0.106.0 * :arrow_up: Set n8n-core@0.106.0 and n8n-workflow@0.88.0 on n8n-node-dev * :bookmark: Release n8n-node-dev@0.45.0 * :arrow_up: Set n8n-core@0.106.0 and n8n-workflow@0.88.0 on n8n-nodes-base * :bookmark: Release n8n-nodes-base@0.163.0 * :bookmark: Release n8n-design-system@0.12.0 * :arrow_up: Set n8n-design-system@0.12.0 and n8n-workflow@0.88.0 on n8n-editor-ui * :bookmark: Release n8n-editor-ui@0.132.0 * :arrow_up: Set n8n-core@0.106.0, n8n-editor-ui@0.132.0, n8n-nodes-base@0.163.0 and n8n-workflow@0.88.0 on n8n * :bookmark: Release n8n@0.165.0 * fix default user bug * fix bug * update package lock * fix duplicate import * fix settings * fix templates access Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :zap: n8n 2952 personalisation (#2911) * refactor/update survey * update customers * Fix up personalization survey * fix recommendation logic * set to false * hide suggested nodes when empty * use keys * add missing logic * switch types * Fix logic * remove unused constants * add back constant * refactor filtering inputs * hide last input on personal * fix other * ✨ add current pw check for change password (#2912) * fix back button * Add current password input * add to modal * update package.json * delete mock file * delete mock file * get settings func * update router * update package lock * update package lock * Fix invite text * update error i18n * open personalization on search if not set * update error view i18n * update change password * update settings sidebar * remove import * fix sidebar * :goal_net: fix error for credential/workflow not found * update invite modal * ✨ persist skipping owner setup (#2894) * 🚧 added skipInstanceOwnerSetup to DB + route to save skipping * ✨ skipping owner setup persists * ✅ add tests for authorization and /owner/skip-setup * 🛠 refactor FE settings getter * 🛠 move setting setup stop to owner creation * :bug: fix wrong setting of User.isPending * :bug: fix isPending * 🏷 add isPending to PublicUser * :bug: fix unused import * update delete modal * change password modal * remove _label * sort keys * remove key * update key names * fix test endpoint * 🥅 Handle error workflows permissions (#2908) * Handle error workflows permissions * Fixed wrong query format * 🛠 refactor query Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com> * fix ts issue * fix list after ispending changes * fix error page bugs * fix error redirect * fix notification * :bug: fix survey import in migration * fix up spacing * update keys spacing * update keys * add space * update key * fix up more spacing * 🔐 add current password (#2919) * add curr pass * update key names * :bug: stringify tag ids * 🔐 check current password before update * add package lock * fix dep version * update version * 🐛 fix access for instance owner to credentials (#2927) * 🛠 stringify tag id on entity * 🔐 Update password requirements (#2920) * :zap: Update password requirements * :zap: Adjust random helpers * ✅ fix tests for currentPassword check * change redirection, add homepage * fix error view redirection * updated wording * fix setup redirection * update validator * remove successfully * update consumers * update settings redirect * on signup, redirect to homepage * update empty state * add space to emails * remove brackets * add opacity * update spacing * remove border from last user * personal details updated * update redirect on sign up * prevent text wrap * fix notification title line height * remove console log * 🐘 Support testing with Postgres and MySQL (#2886) * :card_file_box: Fix Postgres migrations * :zap: Add DB-specific scripts * :sparkles: Set up test connections * :zap: Add Postgres UUID check * :test_tube: Make test adjustments for Postgres * :zap: Refactor connection logic * :sparkles: Set up double init for Postgres * :pencil2: Add TODOs * :zap: Refactor DB dropping logic * :sparkles: Implement global teardown * :sparkles: Create TypeORM wrappers * :sparkles: Initial MySQL setup * :zap: Clean up Postgres connection options * :zap: Simplify by sharing bootstrap connection name * :card_file_box: Fix MySQL migrations * :fire: Remove comments * :zap: Use ES6 imports * :fire: Remove outdated comments * :zap: Centralize bootstrap connection name handles * :zap: Centralize database types * :pencil2: Update comment * :truck: Rename `findRepository` * :construction: Attempt to truncate MySQL * :sparkles: Implement creds router * :bug: Fix duplicated MySQL bootstrap * :bug: Fix misresolved merge conflict * :card_file_box: Fix tags migration * :card_file_box: Fix MySQL UM migration * :bug: Fix MySQL parallelization issues * :blue_book: Augment TypeORM to prevent error * :fire: Remove comments * :sparkles: Support one sqlite DB per suite run * :truck: Move `testDb` to own module * :fire: Deduplicate bootstrap Postgres logic * :fire: Remove unneeded comment * :zap: Make logger init calls consistent * :pencil2: Improve comment * :pencil2: Add dividers * :art: Improve formatting * :fire: Remove duplicate MySQL global setting * :truck: Move comment * :zap: Update default test script * :fire: Remove unneeded helper * :zap: Unmarshal answers from Postgres * :bug: Phase out `isTestRun` * :zap: Refactor `isEmailSetup` * :fire: Remove unneeded imports * :zap: Handle bootstrap connection errors * :fire: Remove unneeded imports * :fire: Remove outdated comments * :pencil2: Fix typos * :truck: Relocate `answersFormatter` * :rewind: Undo package.json miscommit * :fire: Remove unneeded import * :zap: Refactor test DB prefixing * :zap: Add no-leftover check to MySQL * :package: Update package.json * :zap: Autoincrement on simulated MySQL truncation * :fire: Remove debugging queries * ✏️ fix email template link expiry * 🔥 remove unused import * ✅ fix testing email not sent error * fix duplicate import * add package lock * fix export * change opacity * fix text issue * update action box * update error title * update forgot password * update survey * update product text * remove unset fields * add category to page events * remove duplicate import * update key * update key * update label type * 🎨 um/fe review (#2946) * :whale: Update Node.js versions of Docker images to 16 * :bug: Fix that some keyboard shortcuts did no longer work * N8N-3057 Fixed Keyboard shortcuts no longer working on / Fixed callDebounced function * N8N-3057 Update Debounce Function * N8N-3057 Refactor callDebounce function * N8N-3057 Update Dobounce Function * :bug: Fix issue with tooltips getting displayed behind node details view * fix tooltips z-index * move all element ui components * update package lock * :bug: Fix credentials list load issue (#2931) * always fetch credentials * only fetch credentials once * :zap: Allow to disable hiring banner (#2902) * :sparkles: Add flag * :zap: Adjust interfaces * :zap: Adjust store module * :zap: Adjust frontend settings * :zap: Adjust frontend display * :bug: Fix issue that ctrl + o did behave wrong on workflow templates page (#2934) * N8N-3094 Workflow Templates cmd-o acts on the Preview/Iframe * N8N-3094 Workflow Templates cmd-o acts on the Preview/Iframe * disable shortcuts for preview Co-authored-by: Mutasem <mutdmour@gmail.com> * :arrow_up: Update package-lock.json file * :bug: Fix sorting by field in Baserow Node (#2942) This fixes a bug which currently leads to the "Sorting" option of the node to be ignored. * :bug: Fix some i18n line break issues * :sparkles: Add Odoo Node (#2601) * added odoo scaffolding * update getting data from odoo instance * added scaffolding for main loop and request functions * added functions for CRUD opperations * improoved error handling for odooJSONRPCRequest * updated odoo node and fixing nodelinter issues * fixed alpabetical order * fixed types in odoo node * fixing linter errors * fixing linter errors * fixed data shape returned from man loop * updated node input types, added fields list to models * update when custom resource is selected options for fields list will be populated dynamicly * minor fixes * :hammer: fixed credential test, updating CRUD methods * :hammer: added additional fields to crm resource * :hammer: added descriptions, fixed credentials test bug * :hammer: standardize node and descriptions design * :hammer: removed comments * :hammer: added pagination to getAll operation * :zap: removed leftover function from previous implementation, removed required from optional fields * :zap: fixed id field, added indication of type and if required to field description, replaced string input in filters to fetched list of fields * :hammer: fetching list of models from odoo, added selection of fields to be returned to predefined models, fixes accordingly to review * :zap: Small improvements * :hammer: extracted adress fields into collection, changed fields to include in descriptions, minor tweaks * :zap: Improvements * :hammer: working on review * :hammer: fixed linter errors * :hammer: review wip * :hammer: review wip * :hammer: review wip * :zap: updated display name for URL in credentials * :hammer: added checks for valid id to delete and update * :zap: Minor improvements Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :bug: Handle Wise SCA requests (#2734) * :zap: Improve Wise error message after previous change * fix duplicate import * add package lock * fix export * change opacity * fix text issue * update action box * update error title * update forgot password * update survey * update product text * remove unset fields * add category to page events * remove duplicate import * update key * update key Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Tom <19203795+that-one-tom@users.noreply.github.com> Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com> Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: pemontto <939704+pemontto@users.noreply.github.com> * Move owner skip from settings * 🐛 SMTP fixes (#2937) * :fire: Remove `UM_` from SMTP env vars * :fire: Remove SMTP host default value * :zap: Update sender value * :zap: Update invite template * :zap: Update password reset template * :zap: Update `N8N_EMAIL_MODE` default value * :fire: Remove `EMAIL` from all SMTP vars * :sparkles: Implement `verifyConnection()` * :truck: Reposition comment * :pencil2: Fix typo * :pencil2: Minor env var documentation improvements * :art: Fix spacing * :art: Fix spacing * :card_file_box: Remove SMTP settings cache * :zap: Adjust log message * :zap: Update error message * :pencil2: Fix template typo * :pencil2: Adjust wording * :zap: Interpolate email into success toast * :pencil2: Adjust base message in `verifyConnection()` * :zap: Verify connection on password reset * :zap: Bring up POST /users SMTP check * :bug: remove cookie if cookie is not valid * :zap: verify connection on instantiation Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * 🔊 create logger helper for migrations (#2944) * 🔥 remove unused database * :loud_sound: add migration logging for sqlite * 🔥 remove unnecessary index creation * ⚡️ change log level to warn * 🐛 Fix issue with workflow process to initialize db connection correctly (#2948) * ✏️ update error messages for webhhook run/activation * 📈 Implement telemetry events (#2868) * Implement basic telemetry events * Fixing user id as part of the telemetry data * Added user id to be part of the tracked data * :sparkles: Create telemetry mock * :test_tube: Fix tests with telemetry mock * :test_tube: Fix missing key in authless endpoint * :blue_book: Create authless request type * :fire: Remove log * :bug: Fix `migration_strategy` assignment * :blue_book: Remove `instance_id` from `ITelemetryUserDeletionData` * :zap: Simplify concatenation * :zap: Simplify `track()` call signature * Fixed payload of telemetry to always include user_id * Fixing minor issues Co-authored-by: Iván Ovejero <ivov.src@gmail.com> * 🔊 Added logs to credentials, executions and workflows (#2915) * Added logs to credentials, executions and workflows * Some updates according to ivov's feedback * :zap: update log levels * ✅ fix tests Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :bug: fix telemetry error * fix conflicts with master * fix duplicate * add package-lock * :bug: Um/fixes (#2952) * add initials to avatar * redirect to signin if invalid token * update pluralization * add auth page category * data transferred * touch up setup page * update button to add cursor * fix personalization modal not closing * ✏️ fix environment name * 🐛 fix disabling UM * 🐛 fix email setup flag * 🐛 FE fixes 1 (#2953) * add initials to avatar * redirect to signin if invalid token * update pluralization * add auth page category * data transferred * touch up setup page * update button to add cursor * fix personalization modal not closing * capitalize labels, refactor text * Fixed the issue with telemetry data missing for personalization survey * Changed invite email text * 🐛 Fix quotes issue with postgres migration (#2958) * Changed text for invite link * 🐛 fix reset command for mysql * ✅ fix race condition in test DB creation * 🔐 block user creation if UM is disabled * 🥅 improve smtp setup issue error * :zap: update error message * refactor route rules * set package lock * fix access * remove capitalize * update input labels * refactor heading * change span to fragment * add route types * refactor views * ✅ fix increase timeout for mysql * :zap: correct logic of error message * refactor view names * :zap: update randomString * 📈 Added missing event regarding failed emails (#2964) * replace label with info * 🛠 refactor JWT-secret creation * remove duplicate key * remove unused part * remove semicolon * fix up i18n pattern * update translation keys * update urls * support i18n in nds * fix how external keys are handled * add source * 💥 update timestamp of UM migration * ✏️ small message updates * fix tracking * update notification line-height * fix avatar opacity * fix up empty state * shift focus to input * 🔐 Disable basic auth after owner has been set up (#2973) * Disable basic auth after owner has been set up * Remove unnecessary comparison * rename modal title * 🐛 use pgcrypto extension for uuid creation (#2977) * 📧 Added public url variable for emails (#2967) * Added public url variable for emails * Fixed base url for reset password - the current implementation overrides possibly existing path * Change variable name to editorUrl * Using correct name editorUrl for emails * Changed variable description * Improved base url naming and appending path so it remains consistent * Removed trailing slash from editor base url * 🌐 fix i18n pattern (#2970) * fix up i18n pattern * update translation keys * update urls * support i18n in nds * fix how external keys are handled * add source * Um/fixes 1000 (#2980) * fix select issue * 😫 hacky solution to circumvent pgcrypto (#2979) * fix owner bug after transfer. always fetch latest credentials * add confirmation modal to setup * Use webhook url as fallback when editor url is not defined * fix enter bug * update modal * update modal * update modal text, fix bug in settings view * Updating editor url to not append path * rename keys Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com> Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> Co-authored-by: Omar Ajoue <krynble@gmail.com> Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> Co-authored-by: Tom <19203795+that-one-tom@users.noreply.github.com> Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com> Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: pemontto <939704+pemontto@users.noreply.github.com>
2022-03-14 06:46:32 -07:00
let workflowData;
if (workflowId.toString() !== workflowErrorData.workflow.id?.toString()) {
// To make this code easier to understand, we split it in 2 parts:
// 1) Fetch the owner of the errored workflows and then
// 2) if now instance owner, then check if the user has access to the
// triggered workflow.
const user = await getWorkflowOwner(workflowErrorData.workflow.id!);
if (user.globalRole.name === 'owner') {
workflowData = await Db.collections.Workflow.findOne({ id: Number(workflowId) });
feat: Add User Management (#2636) * ✅ adjust tests * 🛠 refactor user invites to be indempotent (#2791) * 🔐 Encrypt SMTP pass for user management backend (#2793) * :package: Add crypto-js to /cli * :package: Update package-lock.json * :sparkles: Create type for SMTP config * :zap: Encrypt SMTP pass * :zap: Update format for `userManagement.emails.mode` * :zap: Update format for `binaryDataManager.mode` * :zap: Update format for `logs.level` * :fire: Remove logging * :shirt: Fix lint * 👰 n8n 2826 um wedding FE<>BE (#2789) * remove mocks * update authorization func * lock down default role * 🐛 fix requiring authentication for OPTIONS requests * :bug: fix cors and cookie issues in dev * update setup route Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * update telemetry * 🐛 preload role for users * :bug: remove auth for password reset routes * 🐛 fix forgot-password flow * :zap: allow workflow tag disabling * update telemetry init * add reset * clear error notifications on signin * remove load settings from node view * remove user id from user state * inherit existing user props * go back in history on button click * use replace to force redirect * update stories * :zap: add env check for tag create * :test_tube: Add `/users` tests for user management backend (#2790) * :zap: Refactor users namespace * :zap: Adjust fillout endpoint * :zap: Refactor initTestServer arg * :pencil2: Specify agent type * :pencil2: Specify role type * :zap: Tighten `/users/:id` check * :sparkles: Add initial tests * :truck: Reposition init server map * :zap: Set constants in `validatePassword()` * :zap: Tighten `/users/:id` check * :zap: Improve checks in `/users/:id` * :sparkles: Add tests for `/users/:id` * :package: Update package-lock.json * :zap: Simplify expectation * :zap: Reuse util for authless agent * :truck: Make role names consistent * :blue_book: Tighten namespaces map type * :fire: Remove unneeded default arg * :sparkles: Add tests for `POST /users` * :blue_book: Create test SMTP account type * :pencil2: Improve wording * :art: Formatting * :fire: Remove temp fix * :zap: Replace helper with config call * :zap: Fix failing tests * :fire: Remove outdated test * :fire: Remove unused helper * :zap: Increase readability of domain fetcher * :zap: Refactor payload validation * :fire: Remove repetition * :rewind: Restore logging * :zap: Initialize logger in tests * :fire: Remove redundancy from check * :truck: Move `globalOwnerRole` fetching to global scope * :fire: Remove unused imports * :truck: Move random utils to own module * :truck: Move test types to own module * :pencil2: Add dividers to utils * :pencil2: Reorder `initTestServer` param docstring * :pencil2: Add TODO comment * :zap: Dry up member creation * :zap: Tighten search criteria * :test_tube: Add expectation to `GET /users` * :zap: Create role fetcher utils * :zap: Create one more role fetch util * :fire: Remove unneeded DB query * :test_tube: Add expectation to `POST /users` * :test_tube: Add expectation to `DELETE /users/:id` * :test_tube: Add another expectation to `DELETE /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :test_tube: Adjust expectations in `POST /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :shirt: Fix build * :zap: Update method * :blue_book: Fix `userToDelete` type * :zap: Refactor `createAgent()` * :zap: Make role fetching global * :zap: Optimize roles fetching * :zap: Centralize member creation * :zap: Refactor truncation helper * :test_tube: Add teardown to `DELETE /users/:id` * :test_tube: Add DB expectations to users tests * :fire: Remove pass validation due to hash * :pencil2: Improve pass validation error message * :zap: Improve owner pass validation * :zap: Create logger initialization helper * :zap: Optimize helpers * :zap: Restructure `getAllRoles` helper * :test_tube: Add password reset flow tests for user management backend (#2807) * :zap: Refactor users namespace * :zap: Adjust fillout endpoint * :zap: Refactor initTestServer arg * :pencil2: Specify agent type * :pencil2: Specify role type * :zap: Tighten `/users/:id` check * :sparkles: Add initial tests * :truck: Reposition init server map * :zap: Set constants in `validatePassword()` * :zap: Tighten `/users/:id` check * :zap: Improve checks in `/users/:id` * :sparkles: Add tests for `/users/:id` * :package: Update package-lock.json * :zap: Simplify expectation * :zap: Reuse util for authless agent * :truck: Make role names consistent * :blue_book: Tighten namespaces map type * :fire: Remove unneeded default arg * :sparkles: Add tests for `POST /users` * :blue_book: Create test SMTP account type * :pencil2: Improve wording * :art: Formatting * :fire: Remove temp fix * :zap: Replace helper with config call * :zap: Fix failing tests * :fire: Remove outdated test * :sparkles: Add tests for password reset flow * :pencil2: Fix test wording * :zap: Set password reset namespace * :fire: Remove unused helper * :zap: Increase readability of domain fetcher * :zap: Refactor payload validation * :fire: Remove repetition * :rewind: Restore logging * :zap: Initialize logger in tests * :fire: Remove redundancy from check * :truck: Move `globalOwnerRole` fetching to global scope * :fire: Remove unused imports * :truck: Move random utils to own module * :truck: Move test types to own module * :pencil2: Add dividers to utils * :pencil2: Reorder `initTestServer` param docstring * :pencil2: Add TODO comment * :zap: Dry up member creation * :zap: Tighten search criteria * :test_tube: Add expectation to `GET /users` * :zap: Create role fetcher utils * :zap: Create one more role fetch util * :fire: Remove unneeded DB query * :test_tube: Add expectation to `POST /users` * :test_tube: Add expectation to `DELETE /users/:id` * :test_tube: Add another expectation to `DELETE /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :test_tube: Adjust expectations in `POST /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :blue_book: Add namespace name to type * :truck: Adjust imports * :zap: Optimize `globalOwnerRole` fetching * :test_tube: Add expectations * :shirt: Fix build * :shirt: Fix build * :zap: Update method * :zap: Update method * :test_tube: Fix `POST /change-password` test * :blue_book: Fix `userToDelete` type * :zap: Refactor `createAgent()` * :zap: Make role fetching global * :zap: Optimize roles fetching * :zap: Centralize member creation * :zap: Refactor truncation helper * :test_tube: Add teardown to `DELETE /users/:id` * :test_tube: Add DB expectations to users tests * :zap: Refactor as in users namespace * :test_tube: Add expectation to `POST /change-password` * :fire: Remove pass validation due to hash * :pencil2: Improve pass validation error message * :zap: Improve owner pass validation * :zap: Create logger initialization helper * :zap: Optimize helpers * :zap: Restructure `getAllRoles` helper * :zap: Update `truncate` calls * :bug: return 200 for non-existing user * ✅ fix tests for forgot-password and user creation * Update packages/editor-ui/src/components/MainSidebar.vue Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/components/Telemetry.vue Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * :truck: Fix imports * :zap: reset password just if password exists * Fix validation at `PATCH /workfows/:id` (#2819) * :bug: Validate entity only if workflow * :shirt: Fix build * 🔨 refactor response from user creation * 🐛 um email invite fix (#2833) * update users invite * fix notificaitons stacking on top of each other * remove unnessary check * fix type issues * update structure * fix types * 🐘 database migrations UM + password reset expiration (#2710) * Add table prefix and assign existing workflows and credentials to owner for sqlite * Added user management migration to MySQL * Fixed some missing table prefixes and removed unnecessary user id * Created migration for postgres and applies minor fixes * Fixed migration for sqlite by removing the unnecessary index and for mysql by removing unnecessary user data * Added password reset token expiration * Addressing comments made by Ben * ⚡️ add missing tablePrefix * ✅ fix tests + add tests for expiring pw-reset-token Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :zap: treat skipped personalizationSurvey as not answered * :bug: removing active workflows when deleting user, :bug: fix reinvite, :bug: fix resolve-signup-token, 🐘 remove workflowname uniqueness * ✅ Add DB state check tests (#2841) * :fire: Remove unneeded import * :fire: Remove unneeded vars * :pencil2: Improve naming * :test_tube: Add expectations to `POST /owner` * :test_tube: Add expectations to `PATCH /me` * :test_tube: Add expectation to `PATCH /me/password` * :pencil2: Clarify when owner is owner shell * :test_tube: Add more expectations * :rewind: Restore package-lock to parent branch state * Add logging to user management endpoints v2 (#2836) * :zap: Initialize logger in tests * :zap: Add logs to mailer * :zap: Add logs to middleware * :zap: Add logs to me endpoints * :zap: Add logs to owner endpoints * :zap: Add logs to pass flow endpoints * :zap: Add logs to users endpoints * :blue_book: Improve typings * :zap: Merge two logs into one * :zap: Adjust log type * :zap: Add password reset email log * :pencil2: Reword log message * :zap: Adjust log meta object * :zap: Add total to log * :pencil2: Add detail to log message * :pencil2: Reword log message * :pencil2: Reword log message * :bug: Make total users to set up accurate * :pencil2: Reword `Logger.debug()` messages * :pencil2: Phrasing change for consistency * :bug: Fix ID overridden in range query * :hammer: small refactoring * 🔐 add auth to push-connection * 🛠 ✅ Create credentials namespace and add tests (#2831) * :test_tube: Fix failing test * :blue_book: Improve `createAgent` signature * :truck: Fix `LoggerProxy` import * :sparkles: Create credentials endpoints namespace * :test_tube: Set up initial tests * :zap: Add validation to model * :zap: Adjust validation * :test_tube: Add test * :truck: Sort creds endpoints * :pencil2: Plan out pending tests * :test_tube: Add deletion tests * :test_tube: Add patch tests * :test_tube: Add get cred tests * :truck: Hoist import * :pencil2: Make test descriptions consistent * :pencil2: Adjust description * :test_tube: Add missing test * :pencil2: Make get descriptions consistent * :rewind: Undo line break * :zap: Refactor to simplify `saveCredential` * :test_tube: Add non-owned tests for owner * :pencil2: Improve naming * :pencil2: Add clarifying comments * :truck: Improve imports * :zap: Initialize config file * :fire: Remove unneeded import * :truck: Rename dir * :zap: Adjust deletion call * :zap: Adjust error code * :pencil2: Touch up comment * :zap: Optimize fetching with `@RelationId` * :test_tube: Add expectations * :zap: Simplify mock calls * :blue_book: Set deep readonly to object constants * :fire: Remove unused param and encryption key * :zap: Add more `@RelationId` calls in models * :rewind: Restore * :bug: no auth for .svg * 🛠 move auth cookie name to constant; 🐛 fix auth for push-connection * ✅ Add auth middleware tests (#2853) * :zap: Simplify existing suite * :test_tube: Validate that auth cookie exists * :pencil2: Move comment * :fire: Remove unneeded imports * :pencil2: Add clarifying comments * :pencil2: Document auth endpoints * :test_tube: Add middleware tests * :pencil2: Fix typos Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com> * 🔥 Remove test description wrappers (#2874) * :fire: Remove /owner test wrappers * :fire: Remove auth middleware test wrappers * :fire: Remove auth endpoints test wrappers * :fire: Remove overlooked middleware wrappers * :fire: Remove me namespace test wrappers Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * ✨ Runtime checks for credentials load and execute workflows (#2697) * Runtime checks for credentials load and execute workflows * Fixed from reviewers * Changed runtime validation for credentials to be on start instead of on demand * Refactored validations to use user id instead of whole User instance * Removed user entity from workflow project because it is no longer needed * General fixes and improvements to runtime checks * Remove query builder and improve styling * Fix lint issues * :zap: remove personalizationAnswers when fetching all users * ✅ fix failing get all users test * ✅ check authorization routes also for authentication * :bug: fix defaults in reset command * 🛠 refactorings from walkthrough (#2856) * :zap: Make `getTemplate` async * :zap: Remove query builder from `getCredentials` * :zap: Add save manual executions log message * :rewind: Restore and hide migrations logs * :zap: Centralize ignore paths check * :shirt: Fix build * :truck: Rename `hasOwner` to `isInstanceOwnerSetUp` * :zap: Add `isSetUp` flag to `User` * :zap: Add `isSetUp` to FE interface * :zap: Adjust `isSetUp` checks on FE * :shirt: Fix build * :zap: Adjust `isPendingUser()` check * :truck: Shorten helper name * :zap: Refactor as `isPending` per feedback * :pencil2: Update log message * :zap: Broaden check * :fire: Remove unneeded relation * :zap: Refactor query * :fire: Re-remove logs from migrations * 🛠 set up credentials router (#2882) * :zap: Refactor creds endpoints into router * :test_tube: Refactor creds tests to use router * :truck: Rename arg for consistency * :truck: Move `credentials.api.ts` outside /public * :truck: Rename constant for consistency * :blue_book: Simplify types * :fire: Remove unneeded arg * :truck: Rename router to controller * :zap: Shorten endpoint * :zap: Update `initTestServer()` arg * :zap: Mutate response body in GET /credentials * 🏎 improve performance of type cast for FE Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :bug: remove GET /login from auth * 🔀 merge master + FE update (#2905) * :sparkles: Add Templates (#2720) * Templates Bugs / Fixed Various Bugs / Multiply Api Request, Carousel Gradient, Core Nodes Filters ... * Updated MainSidebar Paddings * N8N-Templates Bugfixing - Remove Unnecesairy Icon (Shape), Refatctor infiniteScrollEnabled Prop + updated infiniterScroll functinality * N8N-2853 Fixed Carousel Arrows Bug after Cleaning the SearchBar * fix telemetry init * fix search tracking issues * N8N-2853 Created FilterTemplateNode Constant Array, Filter PlayButton and WebhookRespond from Nodes, Added Box for showing more nodes inside TemplateList, Updated NewWorkflowButton to primary, Fixed Markdown issue with Code * N8N-2853 Removed Placeholder if Workflows Or Collections are not found, Updated the Logic * fix telemetry events * clean up session id * update user inserted event * N8N-2853 Fixed Categories to Moving if the names are long * Add todos * Update Routes on loading * fix spacing * Update Border Color * Update Border Readius * fix filter fn * fix constant, console error * N8N-2853 PR Fixes, Refactoring, Removing unnecesairy code .. * N8N-2853 PR Fixes - Editor-ui Fixes, Refactoring, Removing Dead Code ... * N8N-2853 Refactor Card to LongCard * clean up spacing, replace css var * clean up spacing * set categories as optional in node * replace vars * refactor store * remove unnesssary import * fix error * fix templates view to start * add to cache * fix coll view data * fix categories * fix category event * fix collections carousel * fix initial load and search * fix infinite load * fix query param * fix scrolling issues * fix scroll to top * fix search * fix collections search * fix navigation bug * rename view * update package lock * rename workflow view * rename coll view * update routes * add wrapper component * set session id * fix search tracking * fix session tracking * remove deleted mutation * remove check for unsupported nodes * refactor filters * lazy load template * clean up types * refactor infinte scroll * fix end of search * Fix spacing * fix coll loading * fix types * fix coll view list * fix navigation * rename types * rename state * fix search responsiveness * fix coll view spacing * fix search view spacing * clean up views * set background color * center page not vert * fix workflow view * remove import * fix background color * fix background * clean props * clean up imports * refactor button * update background color * fix spacing issue * rename event * update telemetry event * update endpoints, add loading view, check for endpoint health * remove conolse log * N8N-2853 Fixed Menu Items Padding * replace endpoints * fix type issues * fix categories * N8N-2853 Fixed ParameterInput Placeholder after ElementUI Upgrade * update createdAt * :zap: Fix placeholder in creds config modal * :pencil2: Adjust docstring to `credText` placeholder version * N8N-2853 Optimized * N8N-2853 Optimized code * :zap: Add deployment type to FE settings * :zap: Add deployment type to interfaces * N8N-2853 Removed Animated prop from components * :zap: Add deployment type to store module * :sparkles: Create hiring banner * :zap: Display hiring banner * :rewind: Undo unrelated change * N8N-2853 Refactor TemplateFilters * :zap: Fix indentation * N8N-2853 Reorder items / TemplateList * :shirt: Fix lint * N8N-2853 Refactor TemplateFilters Component * N8N-2853 Reorder TemplateList * refactor template card * update timeout * fix removelistener * fix spacing * split enabled from offline * add spacing to go back * N8N-2853 Fixed Screens for Tablet & Mobile * N8N-2853 Update Stores Order * remove image componet * remove placeholder changes * N8N-2853 Fixed Chinnese Placeholders for El Select Component that comes from the Library Upgrade * N8N-2853 Fixed Vue Agile Console Warnings * N8N-2853 Update Collection Route * :pencil2: Update jobs URL * :truck: Move logging to root component * :zap: Refactor `deploymentType` to `isInternalUser` * :zap: Improve syntax * fix cut bug in readonly view * N8N-3012 Fixed Details section in templates with lots of description, Fixed Mardown Block with overflox-x * N8N-3012 Increased Font-size, Spacing and Line-height of the Categories Items * N8N-3012 Fixed Vue-agile client width error on resize * only delay redirect for root path * N8N-3012 Fixed Carousel Arrows that Disappear * N8N-3012 Make Loading Screen same color as Templates * N8N-3012 Markdown renders inline block as block code * add offline warning * hide log from workflow iframe * update text * make search button larger * N8N-3012 Categories / Tags extended all the way in details section * load data in cred modals * remove deleted message * add external hook * remove import * update env variable description * fix markdown width issue * disable telemetry for demo, add session id to template pages * fix telemetery bugs * N8N-3012 Not found Collections/Wokrkflow * N8N-3012 Checkboxes change order when categories are changed * N8N-3012 Refactor SortedCategories inside TemplateFilters component * fix firefox bug * add telemetry requirements * add error check * N8N-3012 Update GoBackButton to check if Route History is present * N8N-3012 Fixed WF Nodes Icons * hide workflow screenshots * remove unnessary mixins * rename prop * fix design a bit * rename data * clear workspace on destroy * fix copy paste bug * fix disabled state * N8N-3012 Fixed Saving/Leave without saving Modal * fix telemetry issue * fix telemetry issues, error bug * fix error notification * disable workflow menu items on templates * fix i18n elementui issue * Remove Emit - NodeType from HoverableNodeIcon component * TechnicalFixes: NavigateTo passed down as function should be helper * TechnicalFixes: Update NavigateTo function * TechnicalFixes: Add FilterCoreNodes directly as function * check for empty connecitions * fix titles * respect new lines * increase categories to be sliced * rename prop * onUseWorkflow * refactor click event * fix bug, refactor * fix loading story * add default * fix styles at right level of abstraction * add wrapper with width * remove loading blocks component * add story * rename prop * fix spacing * refactor tag, add story * move margin to container * fix tag redirect, remove unnessary check * make version optional * rename view * move from workflows to templates store * remove unnessary change * remove unnessary css * rename component * refactor collection card * add boolean to prevent shrink * clean up carousel * fix redirection bug on save * remove listeners to fix multiple listeners bug * remove unnessary types * clean up boolean set * fix node select bug * rename component * remove unnessary class * fix redirection bug * remove unnessary error * fix typo * fix blockquotes, pre * refactor markdown rendering * remove console log * escape markdown * fix safari bug * load active workflows to fix modal bug * :arrow_up: Update package-lock.json file * :zap: Add n8n version as header Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com> Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :bookmark: Release n8n-workflow@0.88.0 * :arrow_up: Set n8n-workflow@0.88.0 on n8n-core * :bookmark: Release n8n-core@0.106.0 * :arrow_up: Set n8n-core@0.106.0 and n8n-workflow@0.88.0 on n8n-node-dev * :bookmark: Release n8n-node-dev@0.45.0 * :arrow_up: Set n8n-core@0.106.0 and n8n-workflow@0.88.0 on n8n-nodes-base * :bookmark: Release n8n-nodes-base@0.163.0 * :bookmark: Release n8n-design-system@0.12.0 * :arrow_up: Set n8n-design-system@0.12.0 and n8n-workflow@0.88.0 on n8n-editor-ui * :bookmark: Release n8n-editor-ui@0.132.0 * :arrow_up: Set n8n-core@0.106.0, n8n-editor-ui@0.132.0, n8n-nodes-base@0.163.0 and n8n-workflow@0.88.0 on n8n * :bookmark: Release n8n@0.165.0 * fix default user bug * fix bug * update package lock * fix duplicate import * fix settings * fix templates access Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :zap: n8n 2952 personalisation (#2911) * refactor/update survey * update customers * Fix up personalization survey * fix recommendation logic * set to false * hide suggested nodes when empty * use keys * add missing logic * switch types * Fix logic * remove unused constants * add back constant * refactor filtering inputs * hide last input on personal * fix other * ✨ add current pw check for change password (#2912) * fix back button * Add current password input * add to modal * update package.json * delete mock file * delete mock file * get settings func * update router * update package lock * update package lock * Fix invite text * update error i18n * open personalization on search if not set * update error view i18n * update change password * update settings sidebar * remove import * fix sidebar * :goal_net: fix error for credential/workflow not found * update invite modal * ✨ persist skipping owner setup (#2894) * 🚧 added skipInstanceOwnerSetup to DB + route to save skipping * ✨ skipping owner setup persists * ✅ add tests for authorization and /owner/skip-setup * 🛠 refactor FE settings getter * 🛠 move setting setup stop to owner creation * :bug: fix wrong setting of User.isPending * :bug: fix isPending * 🏷 add isPending to PublicUser * :bug: fix unused import * update delete modal * change password modal * remove _label * sort keys * remove key * update key names * fix test endpoint * 🥅 Handle error workflows permissions (#2908) * Handle error workflows permissions * Fixed wrong query format * 🛠 refactor query Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com> * fix ts issue * fix list after ispending changes * fix error page bugs * fix error redirect * fix notification * :bug: fix survey import in migration * fix up spacing * update keys spacing * update keys * add space * update key * fix up more spacing * 🔐 add current password (#2919) * add curr pass * update key names * :bug: stringify tag ids * 🔐 check current password before update * add package lock * fix dep version * update version * 🐛 fix access for instance owner to credentials (#2927) * 🛠 stringify tag id on entity * 🔐 Update password requirements (#2920) * :zap: Update password requirements * :zap: Adjust random helpers * ✅ fix tests for currentPassword check * change redirection, add homepage * fix error view redirection * updated wording * fix setup redirection * update validator * remove successfully * update consumers * update settings redirect * on signup, redirect to homepage * update empty state * add space to emails * remove brackets * add opacity * update spacing * remove border from last user * personal details updated * update redirect on sign up * prevent text wrap * fix notification title line height * remove console log * 🐘 Support testing with Postgres and MySQL (#2886) * :card_file_box: Fix Postgres migrations * :zap: Add DB-specific scripts * :sparkles: Set up test connections * :zap: Add Postgres UUID check * :test_tube: Make test adjustments for Postgres * :zap: Refactor connection logic * :sparkles: Set up double init for Postgres * :pencil2: Add TODOs * :zap: Refactor DB dropping logic * :sparkles: Implement global teardown * :sparkles: Create TypeORM wrappers * :sparkles: Initial MySQL setup * :zap: Clean up Postgres connection options * :zap: Simplify by sharing bootstrap connection name * :card_file_box: Fix MySQL migrations * :fire: Remove comments * :zap: Use ES6 imports * :fire: Remove outdated comments * :zap: Centralize bootstrap connection name handles * :zap: Centralize database types * :pencil2: Update comment * :truck: Rename `findRepository` * :construction: Attempt to truncate MySQL * :sparkles: Implement creds router * :bug: Fix duplicated MySQL bootstrap * :bug: Fix misresolved merge conflict * :card_file_box: Fix tags migration * :card_file_box: Fix MySQL UM migration * :bug: Fix MySQL parallelization issues * :blue_book: Augment TypeORM to prevent error * :fire: Remove comments * :sparkles: Support one sqlite DB per suite run * :truck: Move `testDb` to own module * :fire: Deduplicate bootstrap Postgres logic * :fire: Remove unneeded comment * :zap: Make logger init calls consistent * :pencil2: Improve comment * :pencil2: Add dividers * :art: Improve formatting * :fire: Remove duplicate MySQL global setting * :truck: Move comment * :zap: Update default test script * :fire: Remove unneeded helper * :zap: Unmarshal answers from Postgres * :bug: Phase out `isTestRun` * :zap: Refactor `isEmailSetup` * :fire: Remove unneeded imports * :zap: Handle bootstrap connection errors * :fire: Remove unneeded imports * :fire: Remove outdated comments * :pencil2: Fix typos * :truck: Relocate `answersFormatter` * :rewind: Undo package.json miscommit * :fire: Remove unneeded import * :zap: Refactor test DB prefixing * :zap: Add no-leftover check to MySQL * :package: Update package.json * :zap: Autoincrement on simulated MySQL truncation * :fire: Remove debugging queries * ✏️ fix email template link expiry * 🔥 remove unused import * ✅ fix testing email not sent error * fix duplicate import * add package lock * fix export * change opacity * fix text issue * update action box * update error title * update forgot password * update survey * update product text * remove unset fields * add category to page events * remove duplicate import * update key * update key * update label type * 🎨 um/fe review (#2946) * :whale: Update Node.js versions of Docker images to 16 * :bug: Fix that some keyboard shortcuts did no longer work * N8N-3057 Fixed Keyboard shortcuts no longer working on / Fixed callDebounced function * N8N-3057 Update Debounce Function * N8N-3057 Refactor callDebounce function * N8N-3057 Update Dobounce Function * :bug: Fix issue with tooltips getting displayed behind node details view * fix tooltips z-index * move all element ui components * update package lock * :bug: Fix credentials list load issue (#2931) * always fetch credentials * only fetch credentials once * :zap: Allow to disable hiring banner (#2902) * :sparkles: Add flag * :zap: Adjust interfaces * :zap: Adjust store module * :zap: Adjust frontend settings * :zap: Adjust frontend display * :bug: Fix issue that ctrl + o did behave wrong on workflow templates page (#2934) * N8N-3094 Workflow Templates cmd-o acts on the Preview/Iframe * N8N-3094 Workflow Templates cmd-o acts on the Preview/Iframe * disable shortcuts for preview Co-authored-by: Mutasem <mutdmour@gmail.com> * :arrow_up: Update package-lock.json file * :bug: Fix sorting by field in Baserow Node (#2942) This fixes a bug which currently leads to the "Sorting" option of the node to be ignored. * :bug: Fix some i18n line break issues * :sparkles: Add Odoo Node (#2601) * added odoo scaffolding * update getting data from odoo instance * added scaffolding for main loop and request functions * added functions for CRUD opperations * improoved error handling for odooJSONRPCRequest * updated odoo node and fixing nodelinter issues * fixed alpabetical order * fixed types in odoo node * fixing linter errors * fixing linter errors * fixed data shape returned from man loop * updated node input types, added fields list to models * update when custom resource is selected options for fields list will be populated dynamicly * minor fixes * :hammer: fixed credential test, updating CRUD methods * :hammer: added additional fields to crm resource * :hammer: added descriptions, fixed credentials test bug * :hammer: standardize node and descriptions design * :hammer: removed comments * :hammer: added pagination to getAll operation * :zap: removed leftover function from previous implementation, removed required from optional fields * :zap: fixed id field, added indication of type and if required to field description, replaced string input in filters to fetched list of fields * :hammer: fetching list of models from odoo, added selection of fields to be returned to predefined models, fixes accordingly to review * :zap: Small improvements * :hammer: extracted adress fields into collection, changed fields to include in descriptions, minor tweaks * :zap: Improvements * :hammer: working on review * :hammer: fixed linter errors * :hammer: review wip * :hammer: review wip * :hammer: review wip * :zap: updated display name for URL in credentials * :hammer: added checks for valid id to delete and update * :zap: Minor improvements Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :bug: Handle Wise SCA requests (#2734) * :zap: Improve Wise error message after previous change * fix duplicate import * add package lock * fix export * change opacity * fix text issue * update action box * update error title * update forgot password * update survey * update product text * remove unset fields * add category to page events * remove duplicate import * update key * update key Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Tom <19203795+that-one-tom@users.noreply.github.com> Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com> Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: pemontto <939704+pemontto@users.noreply.github.com> * Move owner skip from settings * 🐛 SMTP fixes (#2937) * :fire: Remove `UM_` from SMTP env vars * :fire: Remove SMTP host default value * :zap: Update sender value * :zap: Update invite template * :zap: Update password reset template * :zap: Update `N8N_EMAIL_MODE` default value * :fire: Remove `EMAIL` from all SMTP vars * :sparkles: Implement `verifyConnection()` * :truck: Reposition comment * :pencil2: Fix typo * :pencil2: Minor env var documentation improvements * :art: Fix spacing * :art: Fix spacing * :card_file_box: Remove SMTP settings cache * :zap: Adjust log message * :zap: Update error message * :pencil2: Fix template typo * :pencil2: Adjust wording * :zap: Interpolate email into success toast * :pencil2: Adjust base message in `verifyConnection()` * :zap: Verify connection on password reset * :zap: Bring up POST /users SMTP check * :bug: remove cookie if cookie is not valid * :zap: verify connection on instantiation Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * 🔊 create logger helper for migrations (#2944) * 🔥 remove unused database * :loud_sound: add migration logging for sqlite * 🔥 remove unnecessary index creation * ⚡️ change log level to warn * 🐛 Fix issue with workflow process to initialize db connection correctly (#2948) * ✏️ update error messages for webhhook run/activation * 📈 Implement telemetry events (#2868) * Implement basic telemetry events * Fixing user id as part of the telemetry data * Added user id to be part of the tracked data * :sparkles: Create telemetry mock * :test_tube: Fix tests with telemetry mock * :test_tube: Fix missing key in authless endpoint * :blue_book: Create authless request type * :fire: Remove log * :bug: Fix `migration_strategy` assignment * :blue_book: Remove `instance_id` from `ITelemetryUserDeletionData` * :zap: Simplify concatenation * :zap: Simplify `track()` call signature * Fixed payload of telemetry to always include user_id * Fixing minor issues Co-authored-by: Iván Ovejero <ivov.src@gmail.com> * 🔊 Added logs to credentials, executions and workflows (#2915) * Added logs to credentials, executions and workflows * Some updates according to ivov's feedback * :zap: update log levels * ✅ fix tests Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :bug: fix telemetry error * fix conflicts with master * fix duplicate * add package-lock * :bug: Um/fixes (#2952) * add initials to avatar * redirect to signin if invalid token * update pluralization * add auth page category * data transferred * touch up setup page * update button to add cursor * fix personalization modal not closing * ✏️ fix environment name * 🐛 fix disabling UM * 🐛 fix email setup flag * 🐛 FE fixes 1 (#2953) * add initials to avatar * redirect to signin if invalid token * update pluralization * add auth page category * data transferred * touch up setup page * update button to add cursor * fix personalization modal not closing * capitalize labels, refactor text * Fixed the issue with telemetry data missing for personalization survey * Changed invite email text * 🐛 Fix quotes issue with postgres migration (#2958) * Changed text for invite link * 🐛 fix reset command for mysql * ✅ fix race condition in test DB creation * 🔐 block user creation if UM is disabled * 🥅 improve smtp setup issue error * :zap: update error message * refactor route rules * set package lock * fix access * remove capitalize * update input labels * refactor heading * change span to fragment * add route types * refactor views * ✅ fix increase timeout for mysql * :zap: correct logic of error message * refactor view names * :zap: update randomString * 📈 Added missing event regarding failed emails (#2964) * replace label with info * 🛠 refactor JWT-secret creation * remove duplicate key * remove unused part * remove semicolon * fix up i18n pattern * update translation keys * update urls * support i18n in nds * fix how external keys are handled * add source * 💥 update timestamp of UM migration * ✏️ small message updates * fix tracking * update notification line-height * fix avatar opacity * fix up empty state * shift focus to input * 🔐 Disable basic auth after owner has been set up (#2973) * Disable basic auth after owner has been set up * Remove unnecessary comparison * rename modal title * 🐛 use pgcrypto extension for uuid creation (#2977) * 📧 Added public url variable for emails (#2967) * Added public url variable for emails * Fixed base url for reset password - the current implementation overrides possibly existing path * Change variable name to editorUrl * Using correct name editorUrl for emails * Changed variable description * Improved base url naming and appending path so it remains consistent * Removed trailing slash from editor base url * 🌐 fix i18n pattern (#2970) * fix up i18n pattern * update translation keys * update urls * support i18n in nds * fix how external keys are handled * add source * Um/fixes 1000 (#2980) * fix select issue * 😫 hacky solution to circumvent pgcrypto (#2979) * fix owner bug after transfer. always fetch latest credentials * add confirmation modal to setup * Use webhook url as fallback when editor url is not defined * fix enter bug * update modal * update modal * update modal text, fix bug in settings view * Updating editor url to not append path * rename keys Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com> Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> Co-authored-by: Omar Ajoue <krynble@gmail.com> Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> Co-authored-by: Tom <19203795+that-one-tom@users.noreply.github.com> Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com> Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: pemontto <939704+pemontto@users.noreply.github.com>
2022-03-14 06:46:32 -07:00
} else {
const sharedWorkflowData = await Db.collections.SharedWorkflow.findOne({
feat: Add User Management (#2636) * ✅ adjust tests * 🛠 refactor user invites to be indempotent (#2791) * 🔐 Encrypt SMTP pass for user management backend (#2793) * :package: Add crypto-js to /cli * :package: Update package-lock.json * :sparkles: Create type for SMTP config * :zap: Encrypt SMTP pass * :zap: Update format for `userManagement.emails.mode` * :zap: Update format for `binaryDataManager.mode` * :zap: Update format for `logs.level` * :fire: Remove logging * :shirt: Fix lint * 👰 n8n 2826 um wedding FE<>BE (#2789) * remove mocks * update authorization func * lock down default role * 🐛 fix requiring authentication for OPTIONS requests * :bug: fix cors and cookie issues in dev * update setup route Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * update telemetry * 🐛 preload role for users * :bug: remove auth for password reset routes * 🐛 fix forgot-password flow * :zap: allow workflow tag disabling * update telemetry init * add reset * clear error notifications on signin * remove load settings from node view * remove user id from user state * inherit existing user props * go back in history on button click * use replace to force redirect * update stories * :zap: add env check for tag create * :test_tube: Add `/users` tests for user management backend (#2790) * :zap: Refactor users namespace * :zap: Adjust fillout endpoint * :zap: Refactor initTestServer arg * :pencil2: Specify agent type * :pencil2: Specify role type * :zap: Tighten `/users/:id` check * :sparkles: Add initial tests * :truck: Reposition init server map * :zap: Set constants in `validatePassword()` * :zap: Tighten `/users/:id` check * :zap: Improve checks in `/users/:id` * :sparkles: Add tests for `/users/:id` * :package: Update package-lock.json * :zap: Simplify expectation * :zap: Reuse util for authless agent * :truck: Make role names consistent * :blue_book: Tighten namespaces map type * :fire: Remove unneeded default arg * :sparkles: Add tests for `POST /users` * :blue_book: Create test SMTP account type * :pencil2: Improve wording * :art: Formatting * :fire: Remove temp fix * :zap: Replace helper with config call * :zap: Fix failing tests * :fire: Remove outdated test * :fire: Remove unused helper * :zap: Increase readability of domain fetcher * :zap: Refactor payload validation * :fire: Remove repetition * :rewind: Restore logging * :zap: Initialize logger in tests * :fire: Remove redundancy from check * :truck: Move `globalOwnerRole` fetching to global scope * :fire: Remove unused imports * :truck: Move random utils to own module * :truck: Move test types to own module * :pencil2: Add dividers to utils * :pencil2: Reorder `initTestServer` param docstring * :pencil2: Add TODO comment * :zap: Dry up member creation * :zap: Tighten search criteria * :test_tube: Add expectation to `GET /users` * :zap: Create role fetcher utils * :zap: Create one more role fetch util * :fire: Remove unneeded DB query * :test_tube: Add expectation to `POST /users` * :test_tube: Add expectation to `DELETE /users/:id` * :test_tube: Add another expectation to `DELETE /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :test_tube: Adjust expectations in `POST /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :shirt: Fix build * :zap: Update method * :blue_book: Fix `userToDelete` type * :zap: Refactor `createAgent()` * :zap: Make role fetching global * :zap: Optimize roles fetching * :zap: Centralize member creation * :zap: Refactor truncation helper * :test_tube: Add teardown to `DELETE /users/:id` * :test_tube: Add DB expectations to users tests * :fire: Remove pass validation due to hash * :pencil2: Improve pass validation error message * :zap: Improve owner pass validation * :zap: Create logger initialization helper * :zap: Optimize helpers * :zap: Restructure `getAllRoles` helper * :test_tube: Add password reset flow tests for user management backend (#2807) * :zap: Refactor users namespace * :zap: Adjust fillout endpoint * :zap: Refactor initTestServer arg * :pencil2: Specify agent type * :pencil2: Specify role type * :zap: Tighten `/users/:id` check * :sparkles: Add initial tests * :truck: Reposition init server map * :zap: Set constants in `validatePassword()` * :zap: Tighten `/users/:id` check * :zap: Improve checks in `/users/:id` * :sparkles: Add tests for `/users/:id` * :package: Update package-lock.json * :zap: Simplify expectation * :zap: Reuse util for authless agent * :truck: Make role names consistent * :blue_book: Tighten namespaces map type * :fire: Remove unneeded default arg * :sparkles: Add tests for `POST /users` * :blue_book: Create test SMTP account type * :pencil2: Improve wording * :art: Formatting * :fire: Remove temp fix * :zap: Replace helper with config call * :zap: Fix failing tests * :fire: Remove outdated test * :sparkles: Add tests for password reset flow * :pencil2: Fix test wording * :zap: Set password reset namespace * :fire: Remove unused helper * :zap: Increase readability of domain fetcher * :zap: Refactor payload validation * :fire: Remove repetition * :rewind: Restore logging * :zap: Initialize logger in tests * :fire: Remove redundancy from check * :truck: Move `globalOwnerRole` fetching to global scope * :fire: Remove unused imports * :truck: Move random utils to own module * :truck: Move test types to own module * :pencil2: Add dividers to utils * :pencil2: Reorder `initTestServer` param docstring * :pencil2: Add TODO comment * :zap: Dry up member creation * :zap: Tighten search criteria * :test_tube: Add expectation to `GET /users` * :zap: Create role fetcher utils * :zap: Create one more role fetch util * :fire: Remove unneeded DB query * :test_tube: Add expectation to `POST /users` * :test_tube: Add expectation to `DELETE /users/:id` * :test_tube: Add another expectation to `DELETE /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :test_tube: Adjust expectations in `POST /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :blue_book: Add namespace name to type * :truck: Adjust imports * :zap: Optimize `globalOwnerRole` fetching * :test_tube: Add expectations * :shirt: Fix build * :shirt: Fix build * :zap: Update method * :zap: Update method * :test_tube: Fix `POST /change-password` test * :blue_book: Fix `userToDelete` type * :zap: Refactor `createAgent()` * :zap: Make role fetching global * :zap: Optimize roles fetching * :zap: Centralize member creation * :zap: Refactor truncation helper * :test_tube: Add teardown to `DELETE /users/:id` * :test_tube: Add DB expectations to users tests * :zap: Refactor as in users namespace * :test_tube: Add expectation to `POST /change-password` * :fire: Remove pass validation due to hash * :pencil2: Improve pass validation error message * :zap: Improve owner pass validation * :zap: Create logger initialization helper * :zap: Optimize helpers * :zap: Restructure `getAllRoles` helper * :zap: Update `truncate` calls * :bug: return 200 for non-existing user * ✅ fix tests for forgot-password and user creation * Update packages/editor-ui/src/components/MainSidebar.vue Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/components/Telemetry.vue Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * :truck: Fix imports * :zap: reset password just if password exists * Fix validation at `PATCH /workfows/:id` (#2819) * :bug: Validate entity only if workflow * :shirt: Fix build * 🔨 refactor response from user creation * 🐛 um email invite fix (#2833) * update users invite * fix notificaitons stacking on top of each other * remove unnessary check * fix type issues * update structure * fix types * 🐘 database migrations UM + password reset expiration (#2710) * Add table prefix and assign existing workflows and credentials to owner for sqlite * Added user management migration to MySQL * Fixed some missing table prefixes and removed unnecessary user id * Created migration for postgres and applies minor fixes * Fixed migration for sqlite by removing the unnecessary index and for mysql by removing unnecessary user data * Added password reset token expiration * Addressing comments made by Ben * ⚡️ add missing tablePrefix * ✅ fix tests + add tests for expiring pw-reset-token Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :zap: treat skipped personalizationSurvey as not answered * :bug: removing active workflows when deleting user, :bug: fix reinvite, :bug: fix resolve-signup-token, 🐘 remove workflowname uniqueness * ✅ Add DB state check tests (#2841) * :fire: Remove unneeded import * :fire: Remove unneeded vars * :pencil2: Improve naming * :test_tube: Add expectations to `POST /owner` * :test_tube: Add expectations to `PATCH /me` * :test_tube: Add expectation to `PATCH /me/password` * :pencil2: Clarify when owner is owner shell * :test_tube: Add more expectations * :rewind: Restore package-lock to parent branch state * Add logging to user management endpoints v2 (#2836) * :zap: Initialize logger in tests * :zap: Add logs to mailer * :zap: Add logs to middleware * :zap: Add logs to me endpoints * :zap: Add logs to owner endpoints * :zap: Add logs to pass flow endpoints * :zap: Add logs to users endpoints * :blue_book: Improve typings * :zap: Merge two logs into one * :zap: Adjust log type * :zap: Add password reset email log * :pencil2: Reword log message * :zap: Adjust log meta object * :zap: Add total to log * :pencil2: Add detail to log message * :pencil2: Reword log message * :pencil2: Reword log message * :bug: Make total users to set up accurate * :pencil2: Reword `Logger.debug()` messages * :pencil2: Phrasing change for consistency * :bug: Fix ID overridden in range query * :hammer: small refactoring * 🔐 add auth to push-connection * 🛠 ✅ Create credentials namespace and add tests (#2831) * :test_tube: Fix failing test * :blue_book: Improve `createAgent` signature * :truck: Fix `LoggerProxy` import * :sparkles: Create credentials endpoints namespace * :test_tube: Set up initial tests * :zap: Add validation to model * :zap: Adjust validation * :test_tube: Add test * :truck: Sort creds endpoints * :pencil2: Plan out pending tests * :test_tube: Add deletion tests * :test_tube: Add patch tests * :test_tube: Add get cred tests * :truck: Hoist import * :pencil2: Make test descriptions consistent * :pencil2: Adjust description * :test_tube: Add missing test * :pencil2: Make get descriptions consistent * :rewind: Undo line break * :zap: Refactor to simplify `saveCredential` * :test_tube: Add non-owned tests for owner * :pencil2: Improve naming * :pencil2: Add clarifying comments * :truck: Improve imports * :zap: Initialize config file * :fire: Remove unneeded import * :truck: Rename dir * :zap: Adjust deletion call * :zap: Adjust error code * :pencil2: Touch up comment * :zap: Optimize fetching with `@RelationId` * :test_tube: Add expectations * :zap: Simplify mock calls * :blue_book: Set deep readonly to object constants * :fire: Remove unused param and encryption key * :zap: Add more `@RelationId` calls in models * :rewind: Restore * :bug: no auth for .svg * 🛠 move auth cookie name to constant; 🐛 fix auth for push-connection * ✅ Add auth middleware tests (#2853) * :zap: Simplify existing suite * :test_tube: Validate that auth cookie exists * :pencil2: Move comment * :fire: Remove unneeded imports * :pencil2: Add clarifying comments * :pencil2: Document auth endpoints * :test_tube: Add middleware tests * :pencil2: Fix typos Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com> * 🔥 Remove test description wrappers (#2874) * :fire: Remove /owner test wrappers * :fire: Remove auth middleware test wrappers * :fire: Remove auth endpoints test wrappers * :fire: Remove overlooked middleware wrappers * :fire: Remove me namespace test wrappers Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * ✨ Runtime checks for credentials load and execute workflows (#2697) * Runtime checks for credentials load and execute workflows * Fixed from reviewers * Changed runtime validation for credentials to be on start instead of on demand * Refactored validations to use user id instead of whole User instance * Removed user entity from workflow project because it is no longer needed * General fixes and improvements to runtime checks * Remove query builder and improve styling * Fix lint issues * :zap: remove personalizationAnswers when fetching all users * ✅ fix failing get all users test * ✅ check authorization routes also for authentication * :bug: fix defaults in reset command * 🛠 refactorings from walkthrough (#2856) * :zap: Make `getTemplate` async * :zap: Remove query builder from `getCredentials` * :zap: Add save manual executions log message * :rewind: Restore and hide migrations logs * :zap: Centralize ignore paths check * :shirt: Fix build * :truck: Rename `hasOwner` to `isInstanceOwnerSetUp` * :zap: Add `isSetUp` flag to `User` * :zap: Add `isSetUp` to FE interface * :zap: Adjust `isSetUp` checks on FE * :shirt: Fix build * :zap: Adjust `isPendingUser()` check * :truck: Shorten helper name * :zap: Refactor as `isPending` per feedback * :pencil2: Update log message * :zap: Broaden check * :fire: Remove unneeded relation * :zap: Refactor query * :fire: Re-remove logs from migrations * 🛠 set up credentials router (#2882) * :zap: Refactor creds endpoints into router * :test_tube: Refactor creds tests to use router * :truck: Rename arg for consistency * :truck: Move `credentials.api.ts` outside /public * :truck: Rename constant for consistency * :blue_book: Simplify types * :fire: Remove unneeded arg * :truck: Rename router to controller * :zap: Shorten endpoint * :zap: Update `initTestServer()` arg * :zap: Mutate response body in GET /credentials * 🏎 improve performance of type cast for FE Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :bug: remove GET /login from auth * 🔀 merge master + FE update (#2905) * :sparkles: Add Templates (#2720) * Templates Bugs / Fixed Various Bugs / Multiply Api Request, Carousel Gradient, Core Nodes Filters ... * Updated MainSidebar Paddings * N8N-Templates Bugfixing - Remove Unnecesairy Icon (Shape), Refatctor infiniteScrollEnabled Prop + updated infiniterScroll functinality * N8N-2853 Fixed Carousel Arrows Bug after Cleaning the SearchBar * fix telemetry init * fix search tracking issues * N8N-2853 Created FilterTemplateNode Constant Array, Filter PlayButton and WebhookRespond from Nodes, Added Box for showing more nodes inside TemplateList, Updated NewWorkflowButton to primary, Fixed Markdown issue with Code * N8N-2853 Removed Placeholder if Workflows Or Collections are not found, Updated the Logic * fix telemetry events * clean up session id * update user inserted event * N8N-2853 Fixed Categories to Moving if the names are long * Add todos * Update Routes on loading * fix spacing * Update Border Color * Update Border Readius * fix filter fn * fix constant, console error * N8N-2853 PR Fixes, Refactoring, Removing unnecesairy code .. * N8N-2853 PR Fixes - Editor-ui Fixes, Refactoring, Removing Dead Code ... * N8N-2853 Refactor Card to LongCard * clean up spacing, replace css var * clean up spacing * set categories as optional in node * replace vars * refactor store * remove unnesssary import * fix error * fix templates view to start * add to cache * fix coll view data * fix categories * fix category event * fix collections carousel * fix initial load and search * fix infinite load * fix query param * fix scrolling issues * fix scroll to top * fix search * fix collections search * fix navigation bug * rename view * update package lock * rename workflow view * rename coll view * update routes * add wrapper component * set session id * fix search tracking * fix session tracking * remove deleted mutation * remove check for unsupported nodes * refactor filters * lazy load template * clean up types * refactor infinte scroll * fix end of search * Fix spacing * fix coll loading * fix types * fix coll view list * fix navigation * rename types * rename state * fix search responsiveness * fix coll view spacing * fix search view spacing * clean up views * set background color * center page not vert * fix workflow view * remove import * fix background color * fix background * clean props * clean up imports * refactor button * update background color * fix spacing issue * rename event * update telemetry event * update endpoints, add loading view, check for endpoint health * remove conolse log * N8N-2853 Fixed Menu Items Padding * replace endpoints * fix type issues * fix categories * N8N-2853 Fixed ParameterInput Placeholder after ElementUI Upgrade * update createdAt * :zap: Fix placeholder in creds config modal * :pencil2: Adjust docstring to `credText` placeholder version * N8N-2853 Optimized * N8N-2853 Optimized code * :zap: Add deployment type to FE settings * :zap: Add deployment type to interfaces * N8N-2853 Removed Animated prop from components * :zap: Add deployment type to store module * :sparkles: Create hiring banner * :zap: Display hiring banner * :rewind: Undo unrelated change * N8N-2853 Refactor TemplateFilters * :zap: Fix indentation * N8N-2853 Reorder items / TemplateList * :shirt: Fix lint * N8N-2853 Refactor TemplateFilters Component * N8N-2853 Reorder TemplateList * refactor template card * update timeout * fix removelistener * fix spacing * split enabled from offline * add spacing to go back * N8N-2853 Fixed Screens for Tablet & Mobile * N8N-2853 Update Stores Order * remove image componet * remove placeholder changes * N8N-2853 Fixed Chinnese Placeholders for El Select Component that comes from the Library Upgrade * N8N-2853 Fixed Vue Agile Console Warnings * N8N-2853 Update Collection Route * :pencil2: Update jobs URL * :truck: Move logging to root component * :zap: Refactor `deploymentType` to `isInternalUser` * :zap: Improve syntax * fix cut bug in readonly view * N8N-3012 Fixed Details section in templates with lots of description, Fixed Mardown Block with overflox-x * N8N-3012 Increased Font-size, Spacing and Line-height of the Categories Items * N8N-3012 Fixed Vue-agile client width error on resize * only delay redirect for root path * N8N-3012 Fixed Carousel Arrows that Disappear * N8N-3012 Make Loading Screen same color as Templates * N8N-3012 Markdown renders inline block as block code * add offline warning * hide log from workflow iframe * update text * make search button larger * N8N-3012 Categories / Tags extended all the way in details section * load data in cred modals * remove deleted message * add external hook * remove import * update env variable description * fix markdown width issue * disable telemetry for demo, add session id to template pages * fix telemetery bugs * N8N-3012 Not found Collections/Wokrkflow * N8N-3012 Checkboxes change order when categories are changed * N8N-3012 Refactor SortedCategories inside TemplateFilters component * fix firefox bug * add telemetry requirements * add error check * N8N-3012 Update GoBackButton to check if Route History is present * N8N-3012 Fixed WF Nodes Icons * hide workflow screenshots * remove unnessary mixins * rename prop * fix design a bit * rename data * clear workspace on destroy * fix copy paste bug * fix disabled state * N8N-3012 Fixed Saving/Leave without saving Modal * fix telemetry issue * fix telemetry issues, error bug * fix error notification * disable workflow menu items on templates * fix i18n elementui issue * Remove Emit - NodeType from HoverableNodeIcon component * TechnicalFixes: NavigateTo passed down as function should be helper * TechnicalFixes: Update NavigateTo function * TechnicalFixes: Add FilterCoreNodes directly as function * check for empty connecitions * fix titles * respect new lines * increase categories to be sliced * rename prop * onUseWorkflow * refactor click event * fix bug, refactor * fix loading story * add default * fix styles at right level of abstraction * add wrapper with width * remove loading blocks component * add story * rename prop * fix spacing * refactor tag, add story * move margin to container * fix tag redirect, remove unnessary check * make version optional * rename view * move from workflows to templates store * remove unnessary change * remove unnessary css * rename component * refactor collection card * add boolean to prevent shrink * clean up carousel * fix redirection bug on save * remove listeners to fix multiple listeners bug * remove unnessary types * clean up boolean set * fix node select bug * rename component * remove unnessary class * fix redirection bug * remove unnessary error * fix typo * fix blockquotes, pre * refactor markdown rendering * remove console log * escape markdown * fix safari bug * load active workflows to fix modal bug * :arrow_up: Update package-lock.json file * :zap: Add n8n version as header Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com> Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :bookmark: Release n8n-workflow@0.88.0 * :arrow_up: Set n8n-workflow@0.88.0 on n8n-core * :bookmark: Release n8n-core@0.106.0 * :arrow_up: Set n8n-core@0.106.0 and n8n-workflow@0.88.0 on n8n-node-dev * :bookmark: Release n8n-node-dev@0.45.0 * :arrow_up: Set n8n-core@0.106.0 and n8n-workflow@0.88.0 on n8n-nodes-base * :bookmark: Release n8n-nodes-base@0.163.0 * :bookmark: Release n8n-design-system@0.12.0 * :arrow_up: Set n8n-design-system@0.12.0 and n8n-workflow@0.88.0 on n8n-editor-ui * :bookmark: Release n8n-editor-ui@0.132.0 * :arrow_up: Set n8n-core@0.106.0, n8n-editor-ui@0.132.0, n8n-nodes-base@0.163.0 and n8n-workflow@0.88.0 on n8n * :bookmark: Release n8n@0.165.0 * fix default user bug * fix bug * update package lock * fix duplicate import * fix settings * fix templates access Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :zap: n8n 2952 personalisation (#2911) * refactor/update survey * update customers * Fix up personalization survey * fix recommendation logic * set to false * hide suggested nodes when empty * use keys * add missing logic * switch types * Fix logic * remove unused constants * add back constant * refactor filtering inputs * hide last input on personal * fix other * ✨ add current pw check for change password (#2912) * fix back button * Add current password input * add to modal * update package.json * delete mock file * delete mock file * get settings func * update router * update package lock * update package lock * Fix invite text * update error i18n * open personalization on search if not set * update error view i18n * update change password * update settings sidebar * remove import * fix sidebar * :goal_net: fix error for credential/workflow not found * update invite modal * ✨ persist skipping owner setup (#2894) * 🚧 added skipInstanceOwnerSetup to DB + route to save skipping * ✨ skipping owner setup persists * ✅ add tests for authorization and /owner/skip-setup * 🛠 refactor FE settings getter * 🛠 move setting setup stop to owner creation * :bug: fix wrong setting of User.isPending * :bug: fix isPending * 🏷 add isPending to PublicUser * :bug: fix unused import * update delete modal * change password modal * remove _label * sort keys * remove key * update key names * fix test endpoint * 🥅 Handle error workflows permissions (#2908) * Handle error workflows permissions * Fixed wrong query format * 🛠 refactor query Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com> * fix ts issue * fix list after ispending changes * fix error page bugs * fix error redirect * fix notification * :bug: fix survey import in migration * fix up spacing * update keys spacing * update keys * add space * update key * fix up more spacing * 🔐 add current password (#2919) * add curr pass * update key names * :bug: stringify tag ids * 🔐 check current password before update * add package lock * fix dep version * update version * 🐛 fix access for instance owner to credentials (#2927) * 🛠 stringify tag id on entity * 🔐 Update password requirements (#2920) * :zap: Update password requirements * :zap: Adjust random helpers * ✅ fix tests for currentPassword check * change redirection, add homepage * fix error view redirection * updated wording * fix setup redirection * update validator * remove successfully * update consumers * update settings redirect * on signup, redirect to homepage * update empty state * add space to emails * remove brackets * add opacity * update spacing * remove border from last user * personal details updated * update redirect on sign up * prevent text wrap * fix notification title line height * remove console log * 🐘 Support testing with Postgres and MySQL (#2886) * :card_file_box: Fix Postgres migrations * :zap: Add DB-specific scripts * :sparkles: Set up test connections * :zap: Add Postgres UUID check * :test_tube: Make test adjustments for Postgres * :zap: Refactor connection logic * :sparkles: Set up double init for Postgres * :pencil2: Add TODOs * :zap: Refactor DB dropping logic * :sparkles: Implement global teardown * :sparkles: Create TypeORM wrappers * :sparkles: Initial MySQL setup * :zap: Clean up Postgres connection options * :zap: Simplify by sharing bootstrap connection name * :card_file_box: Fix MySQL migrations * :fire: Remove comments * :zap: Use ES6 imports * :fire: Remove outdated comments * :zap: Centralize bootstrap connection name handles * :zap: Centralize database types * :pencil2: Update comment * :truck: Rename `findRepository` * :construction: Attempt to truncate MySQL * :sparkles: Implement creds router * :bug: Fix duplicated MySQL bootstrap * :bug: Fix misresolved merge conflict * :card_file_box: Fix tags migration * :card_file_box: Fix MySQL UM migration * :bug: Fix MySQL parallelization issues * :blue_book: Augment TypeORM to prevent error * :fire: Remove comments * :sparkles: Support one sqlite DB per suite run * :truck: Move `testDb` to own module * :fire: Deduplicate bootstrap Postgres logic * :fire: Remove unneeded comment * :zap: Make logger init calls consistent * :pencil2: Improve comment * :pencil2: Add dividers * :art: Improve formatting * :fire: Remove duplicate MySQL global setting * :truck: Move comment * :zap: Update default test script * :fire: Remove unneeded helper * :zap: Unmarshal answers from Postgres * :bug: Phase out `isTestRun` * :zap: Refactor `isEmailSetup` * :fire: Remove unneeded imports * :zap: Handle bootstrap connection errors * :fire: Remove unneeded imports * :fire: Remove outdated comments * :pencil2: Fix typos * :truck: Relocate `answersFormatter` * :rewind: Undo package.json miscommit * :fire: Remove unneeded import * :zap: Refactor test DB prefixing * :zap: Add no-leftover check to MySQL * :package: Update package.json * :zap: Autoincrement on simulated MySQL truncation * :fire: Remove debugging queries * ✏️ fix email template link expiry * 🔥 remove unused import * ✅ fix testing email not sent error * fix duplicate import * add package lock * fix export * change opacity * fix text issue * update action box * update error title * update forgot password * update survey * update product text * remove unset fields * add category to page events * remove duplicate import * update key * update key * update label type * 🎨 um/fe review (#2946) * :whale: Update Node.js versions of Docker images to 16 * :bug: Fix that some keyboard shortcuts did no longer work * N8N-3057 Fixed Keyboard shortcuts no longer working on / Fixed callDebounced function * N8N-3057 Update Debounce Function * N8N-3057 Refactor callDebounce function * N8N-3057 Update Dobounce Function * :bug: Fix issue with tooltips getting displayed behind node details view * fix tooltips z-index * move all element ui components * update package lock * :bug: Fix credentials list load issue (#2931) * always fetch credentials * only fetch credentials once * :zap: Allow to disable hiring banner (#2902) * :sparkles: Add flag * :zap: Adjust interfaces * :zap: Adjust store module * :zap: Adjust frontend settings * :zap: Adjust frontend display * :bug: Fix issue that ctrl + o did behave wrong on workflow templates page (#2934) * N8N-3094 Workflow Templates cmd-o acts on the Preview/Iframe * N8N-3094 Workflow Templates cmd-o acts on the Preview/Iframe * disable shortcuts for preview Co-authored-by: Mutasem <mutdmour@gmail.com> * :arrow_up: Update package-lock.json file * :bug: Fix sorting by field in Baserow Node (#2942) This fixes a bug which currently leads to the "Sorting" option of the node to be ignored. * :bug: Fix some i18n line break issues * :sparkles: Add Odoo Node (#2601) * added odoo scaffolding * update getting data from odoo instance * added scaffolding for main loop and request functions * added functions for CRUD opperations * improoved error handling for odooJSONRPCRequest * updated odoo node and fixing nodelinter issues * fixed alpabetical order * fixed types in odoo node * fixing linter errors * fixing linter errors * fixed data shape returned from man loop * updated node input types, added fields list to models * update when custom resource is selected options for fields list will be populated dynamicly * minor fixes * :hammer: fixed credential test, updating CRUD methods * :hammer: added additional fields to crm resource * :hammer: added descriptions, fixed credentials test bug * :hammer: standardize node and descriptions design * :hammer: removed comments * :hammer: added pagination to getAll operation * :zap: removed leftover function from previous implementation, removed required from optional fields * :zap: fixed id field, added indication of type and if required to field description, replaced string input in filters to fetched list of fields * :hammer: fetching list of models from odoo, added selection of fields to be returned to predefined models, fixes accordingly to review * :zap: Small improvements * :hammer: extracted adress fields into collection, changed fields to include in descriptions, minor tweaks * :zap: Improvements * :hammer: working on review * :hammer: fixed linter errors * :hammer: review wip * :hammer: review wip * :hammer: review wip * :zap: updated display name for URL in credentials * :hammer: added checks for valid id to delete and update * :zap: Minor improvements Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :bug: Handle Wise SCA requests (#2734) * :zap: Improve Wise error message after previous change * fix duplicate import * add package lock * fix export * change opacity * fix text issue * update action box * update error title * update forgot password * update survey * update product text * remove unset fields * add category to page events * remove duplicate import * update key * update key Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Tom <19203795+that-one-tom@users.noreply.github.com> Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com> Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: pemontto <939704+pemontto@users.noreply.github.com> * Move owner skip from settings * 🐛 SMTP fixes (#2937) * :fire: Remove `UM_` from SMTP env vars * :fire: Remove SMTP host default value * :zap: Update sender value * :zap: Update invite template * :zap: Update password reset template * :zap: Update `N8N_EMAIL_MODE` default value * :fire: Remove `EMAIL` from all SMTP vars * :sparkles: Implement `verifyConnection()` * :truck: Reposition comment * :pencil2: Fix typo * :pencil2: Minor env var documentation improvements * :art: Fix spacing * :art: Fix spacing * :card_file_box: Remove SMTP settings cache * :zap: Adjust log message * :zap: Update error message * :pencil2: Fix template typo * :pencil2: Adjust wording * :zap: Interpolate email into success toast * :pencil2: Adjust base message in `verifyConnection()` * :zap: Verify connection on password reset * :zap: Bring up POST /users SMTP check * :bug: remove cookie if cookie is not valid * :zap: verify connection on instantiation Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * 🔊 create logger helper for migrations (#2944) * 🔥 remove unused database * :loud_sound: add migration logging for sqlite * 🔥 remove unnecessary index creation * ⚡️ change log level to warn * 🐛 Fix issue with workflow process to initialize db connection correctly (#2948) * ✏️ update error messages for webhhook run/activation * 📈 Implement telemetry events (#2868) * Implement basic telemetry events * Fixing user id as part of the telemetry data * Added user id to be part of the tracked data * :sparkles: Create telemetry mock * :test_tube: Fix tests with telemetry mock * :test_tube: Fix missing key in authless endpoint * :blue_book: Create authless request type * :fire: Remove log * :bug: Fix `migration_strategy` assignment * :blue_book: Remove `instance_id` from `ITelemetryUserDeletionData` * :zap: Simplify concatenation * :zap: Simplify `track()` call signature * Fixed payload of telemetry to always include user_id * Fixing minor issues Co-authored-by: Iván Ovejero <ivov.src@gmail.com> * 🔊 Added logs to credentials, executions and workflows (#2915) * Added logs to credentials, executions and workflows * Some updates according to ivov's feedback * :zap: update log levels * ✅ fix tests Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :bug: fix telemetry error * fix conflicts with master * fix duplicate * add package-lock * :bug: Um/fixes (#2952) * add initials to avatar * redirect to signin if invalid token * update pluralization * add auth page category * data transferred * touch up setup page * update button to add cursor * fix personalization modal not closing * ✏️ fix environment name * 🐛 fix disabling UM * 🐛 fix email setup flag * 🐛 FE fixes 1 (#2953) * add initials to avatar * redirect to signin if invalid token * update pluralization * add auth page category * data transferred * touch up setup page * update button to add cursor * fix personalization modal not closing * capitalize labels, refactor text * Fixed the issue with telemetry data missing for personalization survey * Changed invite email text * 🐛 Fix quotes issue with postgres migration (#2958) * Changed text for invite link * 🐛 fix reset command for mysql * ✅ fix race condition in test DB creation * 🔐 block user creation if UM is disabled * 🥅 improve smtp setup issue error * :zap: update error message * refactor route rules * set package lock * fix access * remove capitalize * update input labels * refactor heading * change span to fragment * add route types * refactor views * ✅ fix increase timeout for mysql * :zap: correct logic of error message * refactor view names * :zap: update randomString * 📈 Added missing event regarding failed emails (#2964) * replace label with info * 🛠 refactor JWT-secret creation * remove duplicate key * remove unused part * remove semicolon * fix up i18n pattern * update translation keys * update urls * support i18n in nds * fix how external keys are handled * add source * 💥 update timestamp of UM migration * ✏️ small message updates * fix tracking * update notification line-height * fix avatar opacity * fix up empty state * shift focus to input * 🔐 Disable basic auth after owner has been set up (#2973) * Disable basic auth after owner has been set up * Remove unnecessary comparison * rename modal title * 🐛 use pgcrypto extension for uuid creation (#2977) * 📧 Added public url variable for emails (#2967) * Added public url variable for emails * Fixed base url for reset password - the current implementation overrides possibly existing path * Change variable name to editorUrl * Using correct name editorUrl for emails * Changed variable description * Improved base url naming and appending path so it remains consistent * Removed trailing slash from editor base url * 🌐 fix i18n pattern (#2970) * fix up i18n pattern * update translation keys * update urls * support i18n in nds * fix how external keys are handled * add source * Um/fixes 1000 (#2980) * fix select issue * 😫 hacky solution to circumvent pgcrypto (#2979) * fix owner bug after transfer. always fetch latest credentials * add confirmation modal to setup * Use webhook url as fallback when editor url is not defined * fix enter bug * update modal * update modal * update modal text, fix bug in settings view * Updating editor url to not append path * rename keys Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com> Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> Co-authored-by: Omar Ajoue <krynble@gmail.com> Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> Co-authored-by: Tom <19203795+that-one-tom@users.noreply.github.com> Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com> Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: pemontto <939704+pemontto@users.noreply.github.com>
2022-03-14 06:46:32 -07:00
where: {
workflow: { id: workflowId },
user,
},
relations: ['workflow'],
});
if (sharedWorkflowData) {
workflowData = sharedWorkflowData.workflow;
}
}
} else {
workflowData = await Db.collections.Workflow.findOne({ id: Number(workflowId) });
feat: Add User Management (#2636) * ✅ adjust tests * 🛠 refactor user invites to be indempotent (#2791) * 🔐 Encrypt SMTP pass for user management backend (#2793) * :package: Add crypto-js to /cli * :package: Update package-lock.json * :sparkles: Create type for SMTP config * :zap: Encrypt SMTP pass * :zap: Update format for `userManagement.emails.mode` * :zap: Update format for `binaryDataManager.mode` * :zap: Update format for `logs.level` * :fire: Remove logging * :shirt: Fix lint * 👰 n8n 2826 um wedding FE<>BE (#2789) * remove mocks * update authorization func * lock down default role * 🐛 fix requiring authentication for OPTIONS requests * :bug: fix cors and cookie issues in dev * update setup route Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * update telemetry * 🐛 preload role for users * :bug: remove auth for password reset routes * 🐛 fix forgot-password flow * :zap: allow workflow tag disabling * update telemetry init * add reset * clear error notifications on signin * remove load settings from node view * remove user id from user state * inherit existing user props * go back in history on button click * use replace to force redirect * update stories * :zap: add env check for tag create * :test_tube: Add `/users` tests for user management backend (#2790) * :zap: Refactor users namespace * :zap: Adjust fillout endpoint * :zap: Refactor initTestServer arg * :pencil2: Specify agent type * :pencil2: Specify role type * :zap: Tighten `/users/:id` check * :sparkles: Add initial tests * :truck: Reposition init server map * :zap: Set constants in `validatePassword()` * :zap: Tighten `/users/:id` check * :zap: Improve checks in `/users/:id` * :sparkles: Add tests for `/users/:id` * :package: Update package-lock.json * :zap: Simplify expectation * :zap: Reuse util for authless agent * :truck: Make role names consistent * :blue_book: Tighten namespaces map type * :fire: Remove unneeded default arg * :sparkles: Add tests for `POST /users` * :blue_book: Create test SMTP account type * :pencil2: Improve wording * :art: Formatting * :fire: Remove temp fix * :zap: Replace helper with config call * :zap: Fix failing tests * :fire: Remove outdated test * :fire: Remove unused helper * :zap: Increase readability of domain fetcher * :zap: Refactor payload validation * :fire: Remove repetition * :rewind: Restore logging * :zap: Initialize logger in tests * :fire: Remove redundancy from check * :truck: Move `globalOwnerRole` fetching to global scope * :fire: Remove unused imports * :truck: Move random utils to own module * :truck: Move test types to own module * :pencil2: Add dividers to utils * :pencil2: Reorder `initTestServer` param docstring * :pencil2: Add TODO comment * :zap: Dry up member creation * :zap: Tighten search criteria * :test_tube: Add expectation to `GET /users` * :zap: Create role fetcher utils * :zap: Create one more role fetch util * :fire: Remove unneeded DB query * :test_tube: Add expectation to `POST /users` * :test_tube: Add expectation to `DELETE /users/:id` * :test_tube: Add another expectation to `DELETE /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :test_tube: Adjust expectations in `POST /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :shirt: Fix build * :zap: Update method * :blue_book: Fix `userToDelete` type * :zap: Refactor `createAgent()` * :zap: Make role fetching global * :zap: Optimize roles fetching * :zap: Centralize member creation * :zap: Refactor truncation helper * :test_tube: Add teardown to `DELETE /users/:id` * :test_tube: Add DB expectations to users tests * :fire: Remove pass validation due to hash * :pencil2: Improve pass validation error message * :zap: Improve owner pass validation * :zap: Create logger initialization helper * :zap: Optimize helpers * :zap: Restructure `getAllRoles` helper * :test_tube: Add password reset flow tests for user management backend (#2807) * :zap: Refactor users namespace * :zap: Adjust fillout endpoint * :zap: Refactor initTestServer arg * :pencil2: Specify agent type * :pencil2: Specify role type * :zap: Tighten `/users/:id` check * :sparkles: Add initial tests * :truck: Reposition init server map * :zap: Set constants in `validatePassword()` * :zap: Tighten `/users/:id` check * :zap: Improve checks in `/users/:id` * :sparkles: Add tests for `/users/:id` * :package: Update package-lock.json * :zap: Simplify expectation * :zap: Reuse util for authless agent * :truck: Make role names consistent * :blue_book: Tighten namespaces map type * :fire: Remove unneeded default arg * :sparkles: Add tests for `POST /users` * :blue_book: Create test SMTP account type * :pencil2: Improve wording * :art: Formatting * :fire: Remove temp fix * :zap: Replace helper with config call * :zap: Fix failing tests * :fire: Remove outdated test * :sparkles: Add tests for password reset flow * :pencil2: Fix test wording * :zap: Set password reset namespace * :fire: Remove unused helper * :zap: Increase readability of domain fetcher * :zap: Refactor payload validation * :fire: Remove repetition * :rewind: Restore logging * :zap: Initialize logger in tests * :fire: Remove redundancy from check * :truck: Move `globalOwnerRole` fetching to global scope * :fire: Remove unused imports * :truck: Move random utils to own module * :truck: Move test types to own module * :pencil2: Add dividers to utils * :pencil2: Reorder `initTestServer` param docstring * :pencil2: Add TODO comment * :zap: Dry up member creation * :zap: Tighten search criteria * :test_tube: Add expectation to `GET /users` * :zap: Create role fetcher utils * :zap: Create one more role fetch util * :fire: Remove unneeded DB query * :test_tube: Add expectation to `POST /users` * :test_tube: Add expectation to `DELETE /users/:id` * :test_tube: Add another expectation to `DELETE /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :test_tube: Adjust expectations in `POST /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :blue_book: Add namespace name to type * :truck: Adjust imports * :zap: Optimize `globalOwnerRole` fetching * :test_tube: Add expectations * :shirt: Fix build * :shirt: Fix build * :zap: Update method * :zap: Update method * :test_tube: Fix `POST /change-password` test * :blue_book: Fix `userToDelete` type * :zap: Refactor `createAgent()` * :zap: Make role fetching global * :zap: Optimize roles fetching * :zap: Centralize member creation * :zap: Refactor truncation helper * :test_tube: Add teardown to `DELETE /users/:id` * :test_tube: Add DB expectations to users tests * :zap: Refactor as in users namespace * :test_tube: Add expectation to `POST /change-password` * :fire: Remove pass validation due to hash * :pencil2: Improve pass validation error message * :zap: Improve owner pass validation * :zap: Create logger initialization helper * :zap: Optimize helpers * :zap: Restructure `getAllRoles` helper * :zap: Update `truncate` calls * :bug: return 200 for non-existing user * ✅ fix tests for forgot-password and user creation * Update packages/editor-ui/src/components/MainSidebar.vue Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/components/Telemetry.vue Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * :truck: Fix imports * :zap: reset password just if password exists * Fix validation at `PATCH /workfows/:id` (#2819) * :bug: Validate entity only if workflow * :shirt: Fix build * 🔨 refactor response from user creation * 🐛 um email invite fix (#2833) * update users invite * fix notificaitons stacking on top of each other * remove unnessary check * fix type issues * update structure * fix types * 🐘 database migrations UM + password reset expiration (#2710) * Add table prefix and assign existing workflows and credentials to owner for sqlite * Added user management migration to MySQL * Fixed some missing table prefixes and removed unnecessary user id * Created migration for postgres and applies minor fixes * Fixed migration for sqlite by removing the unnecessary index and for mysql by removing unnecessary user data * Added password reset token expiration * Addressing comments made by Ben * ⚡️ add missing tablePrefix * ✅ fix tests + add tests for expiring pw-reset-token Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :zap: treat skipped personalizationSurvey as not answered * :bug: removing active workflows when deleting user, :bug: fix reinvite, :bug: fix resolve-signup-token, 🐘 remove workflowname uniqueness * ✅ Add DB state check tests (#2841) * :fire: Remove unneeded import * :fire: Remove unneeded vars * :pencil2: Improve naming * :test_tube: Add expectations to `POST /owner` * :test_tube: Add expectations to `PATCH /me` * :test_tube: Add expectation to `PATCH /me/password` * :pencil2: Clarify when owner is owner shell * :test_tube: Add more expectations * :rewind: Restore package-lock to parent branch state * Add logging to user management endpoints v2 (#2836) * :zap: Initialize logger in tests * :zap: Add logs to mailer * :zap: Add logs to middleware * :zap: Add logs to me endpoints * :zap: Add logs to owner endpoints * :zap: Add logs to pass flow endpoints * :zap: Add logs to users endpoints * :blue_book: Improve typings * :zap: Merge two logs into one * :zap: Adjust log type * :zap: Add password reset email log * :pencil2: Reword log message * :zap: Adjust log meta object * :zap: Add total to log * :pencil2: Add detail to log message * :pencil2: Reword log message * :pencil2: Reword log message * :bug: Make total users to set up accurate * :pencil2: Reword `Logger.debug()` messages * :pencil2: Phrasing change for consistency * :bug: Fix ID overridden in range query * :hammer: small refactoring * 🔐 add auth to push-connection * 🛠 ✅ Create credentials namespace and add tests (#2831) * :test_tube: Fix failing test * :blue_book: Improve `createAgent` signature * :truck: Fix `LoggerProxy` import * :sparkles: Create credentials endpoints namespace * :test_tube: Set up initial tests * :zap: Add validation to model * :zap: Adjust validation * :test_tube: Add test * :truck: Sort creds endpoints * :pencil2: Plan out pending tests * :test_tube: Add deletion tests * :test_tube: Add patch tests * :test_tube: Add get cred tests * :truck: Hoist import * :pencil2: Make test descriptions consistent * :pencil2: Adjust description * :test_tube: Add missing test * :pencil2: Make get descriptions consistent * :rewind: Undo line break * :zap: Refactor to simplify `saveCredential` * :test_tube: Add non-owned tests for owner * :pencil2: Improve naming * :pencil2: Add clarifying comments * :truck: Improve imports * :zap: Initialize config file * :fire: Remove unneeded import * :truck: Rename dir * :zap: Adjust deletion call * :zap: Adjust error code * :pencil2: Touch up comment * :zap: Optimize fetching with `@RelationId` * :test_tube: Add expectations * :zap: Simplify mock calls * :blue_book: Set deep readonly to object constants * :fire: Remove unused param and encryption key * :zap: Add more `@RelationId` calls in models * :rewind: Restore * :bug: no auth for .svg * 🛠 move auth cookie name to constant; 🐛 fix auth for push-connection * ✅ Add auth middleware tests (#2853) * :zap: Simplify existing suite * :test_tube: Validate that auth cookie exists * :pencil2: Move comment * :fire: Remove unneeded imports * :pencil2: Add clarifying comments * :pencil2: Document auth endpoints * :test_tube: Add middleware tests * :pencil2: Fix typos Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com> * 🔥 Remove test description wrappers (#2874) * :fire: Remove /owner test wrappers * :fire: Remove auth middleware test wrappers * :fire: Remove auth endpoints test wrappers * :fire: Remove overlooked middleware wrappers * :fire: Remove me namespace test wrappers Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * ✨ Runtime checks for credentials load and execute workflows (#2697) * Runtime checks for credentials load and execute workflows * Fixed from reviewers * Changed runtime validation for credentials to be on start instead of on demand * Refactored validations to use user id instead of whole User instance * Removed user entity from workflow project because it is no longer needed * General fixes and improvements to runtime checks * Remove query builder and improve styling * Fix lint issues * :zap: remove personalizationAnswers when fetching all users * ✅ fix failing get all users test * ✅ check authorization routes also for authentication * :bug: fix defaults in reset command * 🛠 refactorings from walkthrough (#2856) * :zap: Make `getTemplate` async * :zap: Remove query builder from `getCredentials` * :zap: Add save manual executions log message * :rewind: Restore and hide migrations logs * :zap: Centralize ignore paths check * :shirt: Fix build * :truck: Rename `hasOwner` to `isInstanceOwnerSetUp` * :zap: Add `isSetUp` flag to `User` * :zap: Add `isSetUp` to FE interface * :zap: Adjust `isSetUp` checks on FE * :shirt: Fix build * :zap: Adjust `isPendingUser()` check * :truck: Shorten helper name * :zap: Refactor as `isPending` per feedback * :pencil2: Update log message * :zap: Broaden check * :fire: Remove unneeded relation * :zap: Refactor query * :fire: Re-remove logs from migrations * 🛠 set up credentials router (#2882) * :zap: Refactor creds endpoints into router * :test_tube: Refactor creds tests to use router * :truck: Rename arg for consistency * :truck: Move `credentials.api.ts` outside /public * :truck: Rename constant for consistency * :blue_book: Simplify types * :fire: Remove unneeded arg * :truck: Rename router to controller * :zap: Shorten endpoint * :zap: Update `initTestServer()` arg * :zap: Mutate response body in GET /credentials * 🏎 improve performance of type cast for FE Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :bug: remove GET /login from auth * 🔀 merge master + FE update (#2905) * :sparkles: Add Templates (#2720) * Templates Bugs / Fixed Various Bugs / Multiply Api Request, Carousel Gradient, Core Nodes Filters ... * Updated MainSidebar Paddings * N8N-Templates Bugfixing - Remove Unnecesairy Icon (Shape), Refatctor infiniteScrollEnabled Prop + updated infiniterScroll functinality * N8N-2853 Fixed Carousel Arrows Bug after Cleaning the SearchBar * fix telemetry init * fix search tracking issues * N8N-2853 Created FilterTemplateNode Constant Array, Filter PlayButton and WebhookRespond from Nodes, Added Box for showing more nodes inside TemplateList, Updated NewWorkflowButton to primary, Fixed Markdown issue with Code * N8N-2853 Removed Placeholder if Workflows Or Collections are not found, Updated the Logic * fix telemetry events * clean up session id * update user inserted event * N8N-2853 Fixed Categories to Moving if the names are long * Add todos * Update Routes on loading * fix spacing * Update Border Color * Update Border Readius * fix filter fn * fix constant, console error * N8N-2853 PR Fixes, Refactoring, Removing unnecesairy code .. * N8N-2853 PR Fixes - Editor-ui Fixes, Refactoring, Removing Dead Code ... * N8N-2853 Refactor Card to LongCard * clean up spacing, replace css var * clean up spacing * set categories as optional in node * replace vars * refactor store * remove unnesssary import * fix error * fix templates view to start * add to cache * fix coll view data * fix categories * fix category event * fix collections carousel * fix initial load and search * fix infinite load * fix query param * fix scrolling issues * fix scroll to top * fix search * fix collections search * fix navigation bug * rename view * update package lock * rename workflow view * rename coll view * update routes * add wrapper component * set session id * fix search tracking * fix session tracking * remove deleted mutation * remove check for unsupported nodes * refactor filters * lazy load template * clean up types * refactor infinte scroll * fix end of search * Fix spacing * fix coll loading * fix types * fix coll view list * fix navigation * rename types * rename state * fix search responsiveness * fix coll view spacing * fix search view spacing * clean up views * set background color * center page not vert * fix workflow view * remove import * fix background color * fix background * clean props * clean up imports * refactor button * update background color * fix spacing issue * rename event * update telemetry event * update endpoints, add loading view, check for endpoint health * remove conolse log * N8N-2853 Fixed Menu Items Padding * replace endpoints * fix type issues * fix categories * N8N-2853 Fixed ParameterInput Placeholder after ElementUI Upgrade * update createdAt * :zap: Fix placeholder in creds config modal * :pencil2: Adjust docstring to `credText` placeholder version * N8N-2853 Optimized * N8N-2853 Optimized code * :zap: Add deployment type to FE settings * :zap: Add deployment type to interfaces * N8N-2853 Removed Animated prop from components * :zap: Add deployment type to store module * :sparkles: Create hiring banner * :zap: Display hiring banner * :rewind: Undo unrelated change * N8N-2853 Refactor TemplateFilters * :zap: Fix indentation * N8N-2853 Reorder items / TemplateList * :shirt: Fix lint * N8N-2853 Refactor TemplateFilters Component * N8N-2853 Reorder TemplateList * refactor template card * update timeout * fix removelistener * fix spacing * split enabled from offline * add spacing to go back * N8N-2853 Fixed Screens for Tablet & Mobile * N8N-2853 Update Stores Order * remove image componet * remove placeholder changes * N8N-2853 Fixed Chinnese Placeholders for El Select Component that comes from the Library Upgrade * N8N-2853 Fixed Vue Agile Console Warnings * N8N-2853 Update Collection Route * :pencil2: Update jobs URL * :truck: Move logging to root component * :zap: Refactor `deploymentType` to `isInternalUser` * :zap: Improve syntax * fix cut bug in readonly view * N8N-3012 Fixed Details section in templates with lots of description, Fixed Mardown Block with overflox-x * N8N-3012 Increased Font-size, Spacing and Line-height of the Categories Items * N8N-3012 Fixed Vue-agile client width error on resize * only delay redirect for root path * N8N-3012 Fixed Carousel Arrows that Disappear * N8N-3012 Make Loading Screen same color as Templates * N8N-3012 Markdown renders inline block as block code * add offline warning * hide log from workflow iframe * update text * make search button larger * N8N-3012 Categories / Tags extended all the way in details section * load data in cred modals * remove deleted message * add external hook * remove import * update env variable description * fix markdown width issue * disable telemetry for demo, add session id to template pages * fix telemetery bugs * N8N-3012 Not found Collections/Wokrkflow * N8N-3012 Checkboxes change order when categories are changed * N8N-3012 Refactor SortedCategories inside TemplateFilters component * fix firefox bug * add telemetry requirements * add error check * N8N-3012 Update GoBackButton to check if Route History is present * N8N-3012 Fixed WF Nodes Icons * hide workflow screenshots * remove unnessary mixins * rename prop * fix design a bit * rename data * clear workspace on destroy * fix copy paste bug * fix disabled state * N8N-3012 Fixed Saving/Leave without saving Modal * fix telemetry issue * fix telemetry issues, error bug * fix error notification * disable workflow menu items on templates * fix i18n elementui issue * Remove Emit - NodeType from HoverableNodeIcon component * TechnicalFixes: NavigateTo passed down as function should be helper * TechnicalFixes: Update NavigateTo function * TechnicalFixes: Add FilterCoreNodes directly as function * check for empty connecitions * fix titles * respect new lines * increase categories to be sliced * rename prop * onUseWorkflow * refactor click event * fix bug, refactor * fix loading story * add default * fix styles at right level of abstraction * add wrapper with width * remove loading blocks component * add story * rename prop * fix spacing * refactor tag, add story * move margin to container * fix tag redirect, remove unnessary check * make version optional * rename view * move from workflows to templates store * remove unnessary change * remove unnessary css * rename component * refactor collection card * add boolean to prevent shrink * clean up carousel * fix redirection bug on save * remove listeners to fix multiple listeners bug * remove unnessary types * clean up boolean set * fix node select bug * rename component * remove unnessary class * fix redirection bug * remove unnessary error * fix typo * fix blockquotes, pre * refactor markdown rendering * remove console log * escape markdown * fix safari bug * load active workflows to fix modal bug * :arrow_up: Update package-lock.json file * :zap: Add n8n version as header Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com> Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :bookmark: Release n8n-workflow@0.88.0 * :arrow_up: Set n8n-workflow@0.88.0 on n8n-core * :bookmark: Release n8n-core@0.106.0 * :arrow_up: Set n8n-core@0.106.0 and n8n-workflow@0.88.0 on n8n-node-dev * :bookmark: Release n8n-node-dev@0.45.0 * :arrow_up: Set n8n-core@0.106.0 and n8n-workflow@0.88.0 on n8n-nodes-base * :bookmark: Release n8n-nodes-base@0.163.0 * :bookmark: Release n8n-design-system@0.12.0 * :arrow_up: Set n8n-design-system@0.12.0 and n8n-workflow@0.88.0 on n8n-editor-ui * :bookmark: Release n8n-editor-ui@0.132.0 * :arrow_up: Set n8n-core@0.106.0, n8n-editor-ui@0.132.0, n8n-nodes-base@0.163.0 and n8n-workflow@0.88.0 on n8n * :bookmark: Release n8n@0.165.0 * fix default user bug * fix bug * update package lock * fix duplicate import * fix settings * fix templates access Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :zap: n8n 2952 personalisation (#2911) * refactor/update survey * update customers * Fix up personalization survey * fix recommendation logic * set to false * hide suggested nodes when empty * use keys * add missing logic * switch types * Fix logic * remove unused constants * add back constant * refactor filtering inputs * hide last input on personal * fix other * ✨ add current pw check for change password (#2912) * fix back button * Add current password input * add to modal * update package.json * delete mock file * delete mock file * get settings func * update router * update package lock * update package lock * Fix invite text * update error i18n * open personalization on search if not set * update error view i18n * update change password * update settings sidebar * remove import * fix sidebar * :goal_net: fix error for credential/workflow not found * update invite modal * ✨ persist skipping owner setup (#2894) * 🚧 added skipInstanceOwnerSetup to DB + route to save skipping * ✨ skipping owner setup persists * ✅ add tests for authorization and /owner/skip-setup * 🛠 refactor FE settings getter * 🛠 move setting setup stop to owner creation * :bug: fix wrong setting of User.isPending * :bug: fix isPending * 🏷 add isPending to PublicUser * :bug: fix unused import * update delete modal * change password modal * remove _label * sort keys * remove key * update key names * fix test endpoint * 🥅 Handle error workflows permissions (#2908) * Handle error workflows permissions * Fixed wrong query format * 🛠 refactor query Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com> * fix ts issue * fix list after ispending changes * fix error page bugs * fix error redirect * fix notification * :bug: fix survey import in migration * fix up spacing * update keys spacing * update keys * add space * update key * fix up more spacing * 🔐 add current password (#2919) * add curr pass * update key names * :bug: stringify tag ids * 🔐 check current password before update * add package lock * fix dep version * update version * 🐛 fix access for instance owner to credentials (#2927) * 🛠 stringify tag id on entity * 🔐 Update password requirements (#2920) * :zap: Update password requirements * :zap: Adjust random helpers * ✅ fix tests for currentPassword check * change redirection, add homepage * fix error view redirection * updated wording * fix setup redirection * update validator * remove successfully * update consumers * update settings redirect * on signup, redirect to homepage * update empty state * add space to emails * remove brackets * add opacity * update spacing * remove border from last user * personal details updated * update redirect on sign up * prevent text wrap * fix notification title line height * remove console log * 🐘 Support testing with Postgres and MySQL (#2886) * :card_file_box: Fix Postgres migrations * :zap: Add DB-specific scripts * :sparkles: Set up test connections * :zap: Add Postgres UUID check * :test_tube: Make test adjustments for Postgres * :zap: Refactor connection logic * :sparkles: Set up double init for Postgres * :pencil2: Add TODOs * :zap: Refactor DB dropping logic * :sparkles: Implement global teardown * :sparkles: Create TypeORM wrappers * :sparkles: Initial MySQL setup * :zap: Clean up Postgres connection options * :zap: Simplify by sharing bootstrap connection name * :card_file_box: Fix MySQL migrations * :fire: Remove comments * :zap: Use ES6 imports * :fire: Remove outdated comments * :zap: Centralize bootstrap connection name handles * :zap: Centralize database types * :pencil2: Update comment * :truck: Rename `findRepository` * :construction: Attempt to truncate MySQL * :sparkles: Implement creds router * :bug: Fix duplicated MySQL bootstrap * :bug: Fix misresolved merge conflict * :card_file_box: Fix tags migration * :card_file_box: Fix MySQL UM migration * :bug: Fix MySQL parallelization issues * :blue_book: Augment TypeORM to prevent error * :fire: Remove comments * :sparkles: Support one sqlite DB per suite run * :truck: Move `testDb` to own module * :fire: Deduplicate bootstrap Postgres logic * :fire: Remove unneeded comment * :zap: Make logger init calls consistent * :pencil2: Improve comment * :pencil2: Add dividers * :art: Improve formatting * :fire: Remove duplicate MySQL global setting * :truck: Move comment * :zap: Update default test script * :fire: Remove unneeded helper * :zap: Unmarshal answers from Postgres * :bug: Phase out `isTestRun` * :zap: Refactor `isEmailSetup` * :fire: Remove unneeded imports * :zap: Handle bootstrap connection errors * :fire: Remove unneeded imports * :fire: Remove outdated comments * :pencil2: Fix typos * :truck: Relocate `answersFormatter` * :rewind: Undo package.json miscommit * :fire: Remove unneeded import * :zap: Refactor test DB prefixing * :zap: Add no-leftover check to MySQL * :package: Update package.json * :zap: Autoincrement on simulated MySQL truncation * :fire: Remove debugging queries * ✏️ fix email template link expiry * 🔥 remove unused import * ✅ fix testing email not sent error * fix duplicate import * add package lock * fix export * change opacity * fix text issue * update action box * update error title * update forgot password * update survey * update product text * remove unset fields * add category to page events * remove duplicate import * update key * update key * update label type * 🎨 um/fe review (#2946) * :whale: Update Node.js versions of Docker images to 16 * :bug: Fix that some keyboard shortcuts did no longer work * N8N-3057 Fixed Keyboard shortcuts no longer working on / Fixed callDebounced function * N8N-3057 Update Debounce Function * N8N-3057 Refactor callDebounce function * N8N-3057 Update Dobounce Function * :bug: Fix issue with tooltips getting displayed behind node details view * fix tooltips z-index * move all element ui components * update package lock * :bug: Fix credentials list load issue (#2931) * always fetch credentials * only fetch credentials once * :zap: Allow to disable hiring banner (#2902) * :sparkles: Add flag * :zap: Adjust interfaces * :zap: Adjust store module * :zap: Adjust frontend settings * :zap: Adjust frontend display * :bug: Fix issue that ctrl + o did behave wrong on workflow templates page (#2934) * N8N-3094 Workflow Templates cmd-o acts on the Preview/Iframe * N8N-3094 Workflow Templates cmd-o acts on the Preview/Iframe * disable shortcuts for preview Co-authored-by: Mutasem <mutdmour@gmail.com> * :arrow_up: Update package-lock.json file * :bug: Fix sorting by field in Baserow Node (#2942) This fixes a bug which currently leads to the "Sorting" option of the node to be ignored. * :bug: Fix some i18n line break issues * :sparkles: Add Odoo Node (#2601) * added odoo scaffolding * update getting data from odoo instance * added scaffolding for main loop and request functions * added functions for CRUD opperations * improoved error handling for odooJSONRPCRequest * updated odoo node and fixing nodelinter issues * fixed alpabetical order * fixed types in odoo node * fixing linter errors * fixing linter errors * fixed data shape returned from man loop * updated node input types, added fields list to models * update when custom resource is selected options for fields list will be populated dynamicly * minor fixes * :hammer: fixed credential test, updating CRUD methods * :hammer: added additional fields to crm resource * :hammer: added descriptions, fixed credentials test bug * :hammer: standardize node and descriptions design * :hammer: removed comments * :hammer: added pagination to getAll operation * :zap: removed leftover function from previous implementation, removed required from optional fields * :zap: fixed id field, added indication of type and if required to field description, replaced string input in filters to fetched list of fields * :hammer: fetching list of models from odoo, added selection of fields to be returned to predefined models, fixes accordingly to review * :zap: Small improvements * :hammer: extracted adress fields into collection, changed fields to include in descriptions, minor tweaks * :zap: Improvements * :hammer: working on review * :hammer: fixed linter errors * :hammer: review wip * :hammer: review wip * :hammer: review wip * :zap: updated display name for URL in credentials * :hammer: added checks for valid id to delete and update * :zap: Minor improvements Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :bug: Handle Wise SCA requests (#2734) * :zap: Improve Wise error message after previous change * fix duplicate import * add package lock * fix export * change opacity * fix text issue * update action box * update error title * update forgot password * update survey * update product text * remove unset fields * add category to page events * remove duplicate import * update key * update key Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Tom <19203795+that-one-tom@users.noreply.github.com> Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com> Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: pemontto <939704+pemontto@users.noreply.github.com> * Move owner skip from settings * 🐛 SMTP fixes (#2937) * :fire: Remove `UM_` from SMTP env vars * :fire: Remove SMTP host default value * :zap: Update sender value * :zap: Update invite template * :zap: Update password reset template * :zap: Update `N8N_EMAIL_MODE` default value * :fire: Remove `EMAIL` from all SMTP vars * :sparkles: Implement `verifyConnection()` * :truck: Reposition comment * :pencil2: Fix typo * :pencil2: Minor env var documentation improvements * :art: Fix spacing * :art: Fix spacing * :card_file_box: Remove SMTP settings cache * :zap: Adjust log message * :zap: Update error message * :pencil2: Fix template typo * :pencil2: Adjust wording * :zap: Interpolate email into success toast * :pencil2: Adjust base message in `verifyConnection()` * :zap: Verify connection on password reset * :zap: Bring up POST /users SMTP check * :bug: remove cookie if cookie is not valid * :zap: verify connection on instantiation Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * 🔊 create logger helper for migrations (#2944) * 🔥 remove unused database * :loud_sound: add migration logging for sqlite * 🔥 remove unnecessary index creation * ⚡️ change log level to warn * 🐛 Fix issue with workflow process to initialize db connection correctly (#2948) * ✏️ update error messages for webhhook run/activation * 📈 Implement telemetry events (#2868) * Implement basic telemetry events * Fixing user id as part of the telemetry data * Added user id to be part of the tracked data * :sparkles: Create telemetry mock * :test_tube: Fix tests with telemetry mock * :test_tube: Fix missing key in authless endpoint * :blue_book: Create authless request type * :fire: Remove log * :bug: Fix `migration_strategy` assignment * :blue_book: Remove `instance_id` from `ITelemetryUserDeletionData` * :zap: Simplify concatenation * :zap: Simplify `track()` call signature * Fixed payload of telemetry to always include user_id * Fixing minor issues Co-authored-by: Iván Ovejero <ivov.src@gmail.com> * 🔊 Added logs to credentials, executions and workflows (#2915) * Added logs to credentials, executions and workflows * Some updates according to ivov's feedback * :zap: update log levels * ✅ fix tests Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :bug: fix telemetry error * fix conflicts with master * fix duplicate * add package-lock * :bug: Um/fixes (#2952) * add initials to avatar * redirect to signin if invalid token * update pluralization * add auth page category * data transferred * touch up setup page * update button to add cursor * fix personalization modal not closing * ✏️ fix environment name * 🐛 fix disabling UM * 🐛 fix email setup flag * 🐛 FE fixes 1 (#2953) * add initials to avatar * redirect to signin if invalid token * update pluralization * add auth page category * data transferred * touch up setup page * update button to add cursor * fix personalization modal not closing * capitalize labels, refactor text * Fixed the issue with telemetry data missing for personalization survey * Changed invite email text * 🐛 Fix quotes issue with postgres migration (#2958) * Changed text for invite link * 🐛 fix reset command for mysql * ✅ fix race condition in test DB creation * 🔐 block user creation if UM is disabled * 🥅 improve smtp setup issue error * :zap: update error message * refactor route rules * set package lock * fix access * remove capitalize * update input labels * refactor heading * change span to fragment * add route types * refactor views * ✅ fix increase timeout for mysql * :zap: correct logic of error message * refactor view names * :zap: update randomString * 📈 Added missing event regarding failed emails (#2964) * replace label with info * 🛠 refactor JWT-secret creation * remove duplicate key * remove unused part * remove semicolon * fix up i18n pattern * update translation keys * update urls * support i18n in nds * fix how external keys are handled * add source * 💥 update timestamp of UM migration * ✏️ small message updates * fix tracking * update notification line-height * fix avatar opacity * fix up empty state * shift focus to input * 🔐 Disable basic auth after owner has been set up (#2973) * Disable basic auth after owner has been set up * Remove unnecessary comparison * rename modal title * 🐛 use pgcrypto extension for uuid creation (#2977) * 📧 Added public url variable for emails (#2967) * Added public url variable for emails * Fixed base url for reset password - the current implementation overrides possibly existing path * Change variable name to editorUrl * Using correct name editorUrl for emails * Changed variable description * Improved base url naming and appending path so it remains consistent * Removed trailing slash from editor base url * 🌐 fix i18n pattern (#2970) * fix up i18n pattern * update translation keys * update urls * support i18n in nds * fix how external keys are handled * add source * Um/fixes 1000 (#2980) * fix select issue * 😫 hacky solution to circumvent pgcrypto (#2979) * fix owner bug after transfer. always fetch latest credentials * add confirmation modal to setup * Use webhook url as fallback when editor url is not defined * fix enter bug * update modal * update modal * update modal text, fix bug in settings view * Updating editor url to not append path * rename keys Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com> Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> Co-authored-by: Omar Ajoue <krynble@gmail.com> Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> Co-authored-by: Tom <19203795+that-one-tom@users.noreply.github.com> Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com> Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: pemontto <939704+pemontto@users.noreply.github.com>
2022-03-14 06:46:32 -07:00
}
2019-06-23 03:35:23 -07:00
if (workflowData === undefined) {
// The error workflow could not be found
:art: Set up linting and formatting (#2120) * :arrow_up: Upgrade TS to 4.3.5 * :shirt: Add ESLint configs * :art: Add Prettier config * :package: Add deps and commands * :zap: Adjust global .editorconfig to new ruleset * :fire: Remove unneeded local .editorconfig * :package: Update deps in editor-ui * :hammer: Limit Prettier to only TS files * :zap: Add recommended VSCode extensions * :shirt: Fix build * :fire: Remove Vue setting from global config * :zap: Disable prefer-default-export per feedback * :pencil2: Add forgotten divider * :shirt: Disable no-plusplus * :shirt: Disable class-methods-use-this * :pencil2: Alphabetize overrides * :shirt: Add one-var consecutive override * :rewind: Revert one-var consecutive override This reverts commit b9252cf935659ba6d76727ad484a1d3c00008fcc. * 🎨 👕 Lint and format workflow package (#2121) * :art: Format /workflow package * :shirt: Lint /workflow package * :art: Re-format /workflow package * :shirt: Re-lint /workflow package * :pencil2: Fix typo * :zap: Consolidate if-checks * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format node-dev package (#2122) * :art: Format /node-dev package * :zap: Exclude templates from ESLint config This keeps the templates consistent with the codebase while preventing lint exceptions from being made part of the templates. * :shirt: Lint /node-dev package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * 🎨 👕 Lint and format core package (#2123) * :art: Format /core package * :shirt: Lint /core package * :art: Re-format /core package * :shirt: Re-lint /core package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format cli package (#2124) * :art: Format /cli package * :shirt: Exclude migrations from linting * :shirt: Lint /cli package * :art: Re-format /cli package * :shirt: Re-lint /cli package * :shirt: Fix build * :fire: Remove prefer-default-export exceptions * :zap: Update exceptions in ActiveExecutions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 👕 fix lint issues * :wrench: use package specific linter, remove tslint command * :hammer: resolve build issue, sync dependencies * :wrench: change lint command Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>
2021-08-29 11:58:11 -07:00
Logger.error(
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
`Calling Error Workflow for "${workflowErrorData.workflow.id}". Could not find error workflow "${workflowId}"`,
{ workflowId },
);
2019-06-23 03:35:23 -07:00
return;
}
feat: Add User Management (#2636) * ✅ adjust tests * 🛠 refactor user invites to be indempotent (#2791) * 🔐 Encrypt SMTP pass for user management backend (#2793) * :package: Add crypto-js to /cli * :package: Update package-lock.json * :sparkles: Create type for SMTP config * :zap: Encrypt SMTP pass * :zap: Update format for `userManagement.emails.mode` * :zap: Update format for `binaryDataManager.mode` * :zap: Update format for `logs.level` * :fire: Remove logging * :shirt: Fix lint * 👰 n8n 2826 um wedding FE<>BE (#2789) * remove mocks * update authorization func * lock down default role * 🐛 fix requiring authentication for OPTIONS requests * :bug: fix cors and cookie issues in dev * update setup route Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * update telemetry * 🐛 preload role for users * :bug: remove auth for password reset routes * 🐛 fix forgot-password flow * :zap: allow workflow tag disabling * update telemetry init * add reset * clear error notifications on signin * remove load settings from node view * remove user id from user state * inherit existing user props * go back in history on button click * use replace to force redirect * update stories * :zap: add env check for tag create * :test_tube: Add `/users` tests for user management backend (#2790) * :zap: Refactor users namespace * :zap: Adjust fillout endpoint * :zap: Refactor initTestServer arg * :pencil2: Specify agent type * :pencil2: Specify role type * :zap: Tighten `/users/:id` check * :sparkles: Add initial tests * :truck: Reposition init server map * :zap: Set constants in `validatePassword()` * :zap: Tighten `/users/:id` check * :zap: Improve checks in `/users/:id` * :sparkles: Add tests for `/users/:id` * :package: Update package-lock.json * :zap: Simplify expectation * :zap: Reuse util for authless agent * :truck: Make role names consistent * :blue_book: Tighten namespaces map type * :fire: Remove unneeded default arg * :sparkles: Add tests for `POST /users` * :blue_book: Create test SMTP account type * :pencil2: Improve wording * :art: Formatting * :fire: Remove temp fix * :zap: Replace helper with config call * :zap: Fix failing tests * :fire: Remove outdated test * :fire: Remove unused helper * :zap: Increase readability of domain fetcher * :zap: Refactor payload validation * :fire: Remove repetition * :rewind: Restore logging * :zap: Initialize logger in tests * :fire: Remove redundancy from check * :truck: Move `globalOwnerRole` fetching to global scope * :fire: Remove unused imports * :truck: Move random utils to own module * :truck: Move test types to own module * :pencil2: Add dividers to utils * :pencil2: Reorder `initTestServer` param docstring * :pencil2: Add TODO comment * :zap: Dry up member creation * :zap: Tighten search criteria * :test_tube: Add expectation to `GET /users` * :zap: Create role fetcher utils * :zap: Create one more role fetch util * :fire: Remove unneeded DB query * :test_tube: Add expectation to `POST /users` * :test_tube: Add expectation to `DELETE /users/:id` * :test_tube: Add another expectation to `DELETE /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :test_tube: Adjust expectations in `POST /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :shirt: Fix build * :zap: Update method * :blue_book: Fix `userToDelete` type * :zap: Refactor `createAgent()` * :zap: Make role fetching global * :zap: Optimize roles fetching * :zap: Centralize member creation * :zap: Refactor truncation helper * :test_tube: Add teardown to `DELETE /users/:id` * :test_tube: Add DB expectations to users tests * :fire: Remove pass validation due to hash * :pencil2: Improve pass validation error message * :zap: Improve owner pass validation * :zap: Create logger initialization helper * :zap: Optimize helpers * :zap: Restructure `getAllRoles` helper * :test_tube: Add password reset flow tests for user management backend (#2807) * :zap: Refactor users namespace * :zap: Adjust fillout endpoint * :zap: Refactor initTestServer arg * :pencil2: Specify agent type * :pencil2: Specify role type * :zap: Tighten `/users/:id` check * :sparkles: Add initial tests * :truck: Reposition init server map * :zap: Set constants in `validatePassword()` * :zap: Tighten `/users/:id` check * :zap: Improve checks in `/users/:id` * :sparkles: Add tests for `/users/:id` * :package: Update package-lock.json * :zap: Simplify expectation * :zap: Reuse util for authless agent * :truck: Make role names consistent * :blue_book: Tighten namespaces map type * :fire: Remove unneeded default arg * :sparkles: Add tests for `POST /users` * :blue_book: Create test SMTP account type * :pencil2: Improve wording * :art: Formatting * :fire: Remove temp fix * :zap: Replace helper with config call * :zap: Fix failing tests * :fire: Remove outdated test * :sparkles: Add tests for password reset flow * :pencil2: Fix test wording * :zap: Set password reset namespace * :fire: Remove unused helper * :zap: Increase readability of domain fetcher * :zap: Refactor payload validation * :fire: Remove repetition * :rewind: Restore logging * :zap: Initialize logger in tests * :fire: Remove redundancy from check * :truck: Move `globalOwnerRole` fetching to global scope * :fire: Remove unused imports * :truck: Move random utils to own module * :truck: Move test types to own module * :pencil2: Add dividers to utils * :pencil2: Reorder `initTestServer` param docstring * :pencil2: Add TODO comment * :zap: Dry up member creation * :zap: Tighten search criteria * :test_tube: Add expectation to `GET /users` * :zap: Create role fetcher utils * :zap: Create one more role fetch util * :fire: Remove unneeded DB query * :test_tube: Add expectation to `POST /users` * :test_tube: Add expectation to `DELETE /users/:id` * :test_tube: Add another expectation to `DELETE /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :test_tube: Adjust expectations in `POST /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :blue_book: Add namespace name to type * :truck: Adjust imports * :zap: Optimize `globalOwnerRole` fetching * :test_tube: Add expectations * :shirt: Fix build * :shirt: Fix build * :zap: Update method * :zap: Update method * :test_tube: Fix `POST /change-password` test * :blue_book: Fix `userToDelete` type * :zap: Refactor `createAgent()` * :zap: Make role fetching global * :zap: Optimize roles fetching * :zap: Centralize member creation * :zap: Refactor truncation helper * :test_tube: Add teardown to `DELETE /users/:id` * :test_tube: Add DB expectations to users tests * :zap: Refactor as in users namespace * :test_tube: Add expectation to `POST /change-password` * :fire: Remove pass validation due to hash * :pencil2: Improve pass validation error message * :zap: Improve owner pass validation * :zap: Create logger initialization helper * :zap: Optimize helpers * :zap: Restructure `getAllRoles` helper * :zap: Update `truncate` calls * :bug: return 200 for non-existing user * ✅ fix tests for forgot-password and user creation * Update packages/editor-ui/src/components/MainSidebar.vue Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/components/Telemetry.vue Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * :truck: Fix imports * :zap: reset password just if password exists * Fix validation at `PATCH /workfows/:id` (#2819) * :bug: Validate entity only if workflow * :shirt: Fix build * 🔨 refactor response from user creation * 🐛 um email invite fix (#2833) * update users invite * fix notificaitons stacking on top of each other * remove unnessary check * fix type issues * update structure * fix types * 🐘 database migrations UM + password reset expiration (#2710) * Add table prefix and assign existing workflows and credentials to owner for sqlite * Added user management migration to MySQL * Fixed some missing table prefixes and removed unnecessary user id * Created migration for postgres and applies minor fixes * Fixed migration for sqlite by removing the unnecessary index and for mysql by removing unnecessary user data * Added password reset token expiration * Addressing comments made by Ben * ⚡️ add missing tablePrefix * ✅ fix tests + add tests for expiring pw-reset-token Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :zap: treat skipped personalizationSurvey as not answered * :bug: removing active workflows when deleting user, :bug: fix reinvite, :bug: fix resolve-signup-token, 🐘 remove workflowname uniqueness * ✅ Add DB state check tests (#2841) * :fire: Remove unneeded import * :fire: Remove unneeded vars * :pencil2: Improve naming * :test_tube: Add expectations to `POST /owner` * :test_tube: Add expectations to `PATCH /me` * :test_tube: Add expectation to `PATCH /me/password` * :pencil2: Clarify when owner is owner shell * :test_tube: Add more expectations * :rewind: Restore package-lock to parent branch state * Add logging to user management endpoints v2 (#2836) * :zap: Initialize logger in tests * :zap: Add logs to mailer * :zap: Add logs to middleware * :zap: Add logs to me endpoints * :zap: Add logs to owner endpoints * :zap: Add logs to pass flow endpoints * :zap: Add logs to users endpoints * :blue_book: Improve typings * :zap: Merge two logs into one * :zap: Adjust log type * :zap: Add password reset email log * :pencil2: Reword log message * :zap: Adjust log meta object * :zap: Add total to log * :pencil2: Add detail to log message * :pencil2: Reword log message * :pencil2: Reword log message * :bug: Make total users to set up accurate * :pencil2: Reword `Logger.debug()` messages * :pencil2: Phrasing change for consistency * :bug: Fix ID overridden in range query * :hammer: small refactoring * 🔐 add auth to push-connection * 🛠 ✅ Create credentials namespace and add tests (#2831) * :test_tube: Fix failing test * :blue_book: Improve `createAgent` signature * :truck: Fix `LoggerProxy` import * :sparkles: Create credentials endpoints namespace * :test_tube: Set up initial tests * :zap: Add validation to model * :zap: Adjust validation * :test_tube: Add test * :truck: Sort creds endpoints * :pencil2: Plan out pending tests * :test_tube: Add deletion tests * :test_tube: Add patch tests * :test_tube: Add get cred tests * :truck: Hoist import * :pencil2: Make test descriptions consistent * :pencil2: Adjust description * :test_tube: Add missing test * :pencil2: Make get descriptions consistent * :rewind: Undo line break * :zap: Refactor to simplify `saveCredential` * :test_tube: Add non-owned tests for owner * :pencil2: Improve naming * :pencil2: Add clarifying comments * :truck: Improve imports * :zap: Initialize config file * :fire: Remove unneeded import * :truck: Rename dir * :zap: Adjust deletion call * :zap: Adjust error code * :pencil2: Touch up comment * :zap: Optimize fetching with `@RelationId` * :test_tube: Add expectations * :zap: Simplify mock calls * :blue_book: Set deep readonly to object constants * :fire: Remove unused param and encryption key * :zap: Add more `@RelationId` calls in models * :rewind: Restore * :bug: no auth for .svg * 🛠 move auth cookie name to constant; 🐛 fix auth for push-connection * ✅ Add auth middleware tests (#2853) * :zap: Simplify existing suite * :test_tube: Validate that auth cookie exists * :pencil2: Move comment * :fire: Remove unneeded imports * :pencil2: Add clarifying comments * :pencil2: Document auth endpoints * :test_tube: Add middleware tests * :pencil2: Fix typos Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com> * 🔥 Remove test description wrappers (#2874) * :fire: Remove /owner test wrappers * :fire: Remove auth middleware test wrappers * :fire: Remove auth endpoints test wrappers * :fire: Remove overlooked middleware wrappers * :fire: Remove me namespace test wrappers Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * ✨ Runtime checks for credentials load and execute workflows (#2697) * Runtime checks for credentials load and execute workflows * Fixed from reviewers * Changed runtime validation for credentials to be on start instead of on demand * Refactored validations to use user id instead of whole User instance * Removed user entity from workflow project because it is no longer needed * General fixes and improvements to runtime checks * Remove query builder and improve styling * Fix lint issues * :zap: remove personalizationAnswers when fetching all users * ✅ fix failing get all users test * ✅ check authorization routes also for authentication * :bug: fix defaults in reset command * 🛠 refactorings from walkthrough (#2856) * :zap: Make `getTemplate` async * :zap: Remove query builder from `getCredentials` * :zap: Add save manual executions log message * :rewind: Restore and hide migrations logs * :zap: Centralize ignore paths check * :shirt: Fix build * :truck: Rename `hasOwner` to `isInstanceOwnerSetUp` * :zap: Add `isSetUp` flag to `User` * :zap: Add `isSetUp` to FE interface * :zap: Adjust `isSetUp` checks on FE * :shirt: Fix build * :zap: Adjust `isPendingUser()` check * :truck: Shorten helper name * :zap: Refactor as `isPending` per feedback * :pencil2: Update log message * :zap: Broaden check * :fire: Remove unneeded relation * :zap: Refactor query * :fire: Re-remove logs from migrations * 🛠 set up credentials router (#2882) * :zap: Refactor creds endpoints into router * :test_tube: Refactor creds tests to use router * :truck: Rename arg for consistency * :truck: Move `credentials.api.ts` outside /public * :truck: Rename constant for consistency * :blue_book: Simplify types * :fire: Remove unneeded arg * :truck: Rename router to controller * :zap: Shorten endpoint * :zap: Update `initTestServer()` arg * :zap: Mutate response body in GET /credentials * 🏎 improve performance of type cast for FE Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :bug: remove GET /login from auth * 🔀 merge master + FE update (#2905) * :sparkles: Add Templates (#2720) * Templates Bugs / Fixed Various Bugs / Multiply Api Request, Carousel Gradient, Core Nodes Filters ... * Updated MainSidebar Paddings * N8N-Templates Bugfixing - Remove Unnecesairy Icon (Shape), Refatctor infiniteScrollEnabled Prop + updated infiniterScroll functinality * N8N-2853 Fixed Carousel Arrows Bug after Cleaning the SearchBar * fix telemetry init * fix search tracking issues * N8N-2853 Created FilterTemplateNode Constant Array, Filter PlayButton and WebhookRespond from Nodes, Added Box for showing more nodes inside TemplateList, Updated NewWorkflowButton to primary, Fixed Markdown issue with Code * N8N-2853 Removed Placeholder if Workflows Or Collections are not found, Updated the Logic * fix telemetry events * clean up session id * update user inserted event * N8N-2853 Fixed Categories to Moving if the names are long * Add todos * Update Routes on loading * fix spacing * Update Border Color * Update Border Readius * fix filter fn * fix constant, console error * N8N-2853 PR Fixes, Refactoring, Removing unnecesairy code .. * N8N-2853 PR Fixes - Editor-ui Fixes, Refactoring, Removing Dead Code ... * N8N-2853 Refactor Card to LongCard * clean up spacing, replace css var * clean up spacing * set categories as optional in node * replace vars * refactor store * remove unnesssary import * fix error * fix templates view to start * add to cache * fix coll view data * fix categories * fix category event * fix collections carousel * fix initial load and search * fix infinite load * fix query param * fix scrolling issues * fix scroll to top * fix search * fix collections search * fix navigation bug * rename view * update package lock * rename workflow view * rename coll view * update routes * add wrapper component * set session id * fix search tracking * fix session tracking * remove deleted mutation * remove check for unsupported nodes * refactor filters * lazy load template * clean up types * refactor infinte scroll * fix end of search * Fix spacing * fix coll loading * fix types * fix coll view list * fix navigation * rename types * rename state * fix search responsiveness * fix coll view spacing * fix search view spacing * clean up views * set background color * center page not vert * fix workflow view * remove import * fix background color * fix background * clean props * clean up imports * refactor button * update background color * fix spacing issue * rename event * update telemetry event * update endpoints, add loading view, check for endpoint health * remove conolse log * N8N-2853 Fixed Menu Items Padding * replace endpoints * fix type issues * fix categories * N8N-2853 Fixed ParameterInput Placeholder after ElementUI Upgrade * update createdAt * :zap: Fix placeholder in creds config modal * :pencil2: Adjust docstring to `credText` placeholder version * N8N-2853 Optimized * N8N-2853 Optimized code * :zap: Add deployment type to FE settings * :zap: Add deployment type to interfaces * N8N-2853 Removed Animated prop from components * :zap: Add deployment type to store module * :sparkles: Create hiring banner * :zap: Display hiring banner * :rewind: Undo unrelated change * N8N-2853 Refactor TemplateFilters * :zap: Fix indentation * N8N-2853 Reorder items / TemplateList * :shirt: Fix lint * N8N-2853 Refactor TemplateFilters Component * N8N-2853 Reorder TemplateList * refactor template card * update timeout * fix removelistener * fix spacing * split enabled from offline * add spacing to go back * N8N-2853 Fixed Screens for Tablet & Mobile * N8N-2853 Update Stores Order * remove image componet * remove placeholder changes * N8N-2853 Fixed Chinnese Placeholders for El Select Component that comes from the Library Upgrade * N8N-2853 Fixed Vue Agile Console Warnings * N8N-2853 Update Collection Route * :pencil2: Update jobs URL * :truck: Move logging to root component * :zap: Refactor `deploymentType` to `isInternalUser` * :zap: Improve syntax * fix cut bug in readonly view * N8N-3012 Fixed Details section in templates with lots of description, Fixed Mardown Block with overflox-x * N8N-3012 Increased Font-size, Spacing and Line-height of the Categories Items * N8N-3012 Fixed Vue-agile client width error on resize * only delay redirect for root path * N8N-3012 Fixed Carousel Arrows that Disappear * N8N-3012 Make Loading Screen same color as Templates * N8N-3012 Markdown renders inline block as block code * add offline warning * hide log from workflow iframe * update text * make search button larger * N8N-3012 Categories / Tags extended all the way in details section * load data in cred modals * remove deleted message * add external hook * remove import * update env variable description * fix markdown width issue * disable telemetry for demo, add session id to template pages * fix telemetery bugs * N8N-3012 Not found Collections/Wokrkflow * N8N-3012 Checkboxes change order when categories are changed * N8N-3012 Refactor SortedCategories inside TemplateFilters component * fix firefox bug * add telemetry requirements * add error check * N8N-3012 Update GoBackButton to check if Route History is present * N8N-3012 Fixed WF Nodes Icons * hide workflow screenshots * remove unnessary mixins * rename prop * fix design a bit * rename data * clear workspace on destroy * fix copy paste bug * fix disabled state * N8N-3012 Fixed Saving/Leave without saving Modal * fix telemetry issue * fix telemetry issues, error bug * fix error notification * disable workflow menu items on templates * fix i18n elementui issue * Remove Emit - NodeType from HoverableNodeIcon component * TechnicalFixes: NavigateTo passed down as function should be helper * TechnicalFixes: Update NavigateTo function * TechnicalFixes: Add FilterCoreNodes directly as function * check for empty connecitions * fix titles * respect new lines * increase categories to be sliced * rename prop * onUseWorkflow * refactor click event * fix bug, refactor * fix loading story * add default * fix styles at right level of abstraction * add wrapper with width * remove loading blocks component * add story * rename prop * fix spacing * refactor tag, add story * move margin to container * fix tag redirect, remove unnessary check * make version optional * rename view * move from workflows to templates store * remove unnessary change * remove unnessary css * rename component * refactor collection card * add boolean to prevent shrink * clean up carousel * fix redirection bug on save * remove listeners to fix multiple listeners bug * remove unnessary types * clean up boolean set * fix node select bug * rename component * remove unnessary class * fix redirection bug * remove unnessary error * fix typo * fix blockquotes, pre * refactor markdown rendering * remove console log * escape markdown * fix safari bug * load active workflows to fix modal bug * :arrow_up: Update package-lock.json file * :zap: Add n8n version as header Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com> Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :bookmark: Release n8n-workflow@0.88.0 * :arrow_up: Set n8n-workflow@0.88.0 on n8n-core * :bookmark: Release n8n-core@0.106.0 * :arrow_up: Set n8n-core@0.106.0 and n8n-workflow@0.88.0 on n8n-node-dev * :bookmark: Release n8n-node-dev@0.45.0 * :arrow_up: Set n8n-core@0.106.0 and n8n-workflow@0.88.0 on n8n-nodes-base * :bookmark: Release n8n-nodes-base@0.163.0 * :bookmark: Release n8n-design-system@0.12.0 * :arrow_up: Set n8n-design-system@0.12.0 and n8n-workflow@0.88.0 on n8n-editor-ui * :bookmark: Release n8n-editor-ui@0.132.0 * :arrow_up: Set n8n-core@0.106.0, n8n-editor-ui@0.132.0, n8n-nodes-base@0.163.0 and n8n-workflow@0.88.0 on n8n * :bookmark: Release n8n@0.165.0 * fix default user bug * fix bug * update package lock * fix duplicate import * fix settings * fix templates access Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :zap: n8n 2952 personalisation (#2911) * refactor/update survey * update customers * Fix up personalization survey * fix recommendation logic * set to false * hide suggested nodes when empty * use keys * add missing logic * switch types * Fix logic * remove unused constants * add back constant * refactor filtering inputs * hide last input on personal * fix other * ✨ add current pw check for change password (#2912) * fix back button * Add current password input * add to modal * update package.json * delete mock file * delete mock file * get settings func * update router * update package lock * update package lock * Fix invite text * update error i18n * open personalization on search if not set * update error view i18n * update change password * update settings sidebar * remove import * fix sidebar * :goal_net: fix error for credential/workflow not found * update invite modal * ✨ persist skipping owner setup (#2894) * 🚧 added skipInstanceOwnerSetup to DB + route to save skipping * ✨ skipping owner setup persists * ✅ add tests for authorization and /owner/skip-setup * 🛠 refactor FE settings getter * 🛠 move setting setup stop to owner creation * :bug: fix wrong setting of User.isPending * :bug: fix isPending * 🏷 add isPending to PublicUser * :bug: fix unused import * update delete modal * change password modal * remove _label * sort keys * remove key * update key names * fix test endpoint * 🥅 Handle error workflows permissions (#2908) * Handle error workflows permissions * Fixed wrong query format * 🛠 refactor query Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com> * fix ts issue * fix list after ispending changes * fix error page bugs * fix error redirect * fix notification * :bug: fix survey import in migration * fix up spacing * update keys spacing * update keys * add space * update key * fix up more spacing * 🔐 add current password (#2919) * add curr pass * update key names * :bug: stringify tag ids * 🔐 check current password before update * add package lock * fix dep version * update version * 🐛 fix access for instance owner to credentials (#2927) * 🛠 stringify tag id on entity * 🔐 Update password requirements (#2920) * :zap: Update password requirements * :zap: Adjust random helpers * ✅ fix tests for currentPassword check * change redirection, add homepage * fix error view redirection * updated wording * fix setup redirection * update validator * remove successfully * update consumers * update settings redirect * on signup, redirect to homepage * update empty state * add space to emails * remove brackets * add opacity * update spacing * remove border from last user * personal details updated * update redirect on sign up * prevent text wrap * fix notification title line height * remove console log * 🐘 Support testing with Postgres and MySQL (#2886) * :card_file_box: Fix Postgres migrations * :zap: Add DB-specific scripts * :sparkles: Set up test connections * :zap: Add Postgres UUID check * :test_tube: Make test adjustments for Postgres * :zap: Refactor connection logic * :sparkles: Set up double init for Postgres * :pencil2: Add TODOs * :zap: Refactor DB dropping logic * :sparkles: Implement global teardown * :sparkles: Create TypeORM wrappers * :sparkles: Initial MySQL setup * :zap: Clean up Postgres connection options * :zap: Simplify by sharing bootstrap connection name * :card_file_box: Fix MySQL migrations * :fire: Remove comments * :zap: Use ES6 imports * :fire: Remove outdated comments * :zap: Centralize bootstrap connection name handles * :zap: Centralize database types * :pencil2: Update comment * :truck: Rename `findRepository` * :construction: Attempt to truncate MySQL * :sparkles: Implement creds router * :bug: Fix duplicated MySQL bootstrap * :bug: Fix misresolved merge conflict * :card_file_box: Fix tags migration * :card_file_box: Fix MySQL UM migration * :bug: Fix MySQL parallelization issues * :blue_book: Augment TypeORM to prevent error * :fire: Remove comments * :sparkles: Support one sqlite DB per suite run * :truck: Move `testDb` to own module * :fire: Deduplicate bootstrap Postgres logic * :fire: Remove unneeded comment * :zap: Make logger init calls consistent * :pencil2: Improve comment * :pencil2: Add dividers * :art: Improve formatting * :fire: Remove duplicate MySQL global setting * :truck: Move comment * :zap: Update default test script * :fire: Remove unneeded helper * :zap: Unmarshal answers from Postgres * :bug: Phase out `isTestRun` * :zap: Refactor `isEmailSetup` * :fire: Remove unneeded imports * :zap: Handle bootstrap connection errors * :fire: Remove unneeded imports * :fire: Remove outdated comments * :pencil2: Fix typos * :truck: Relocate `answersFormatter` * :rewind: Undo package.json miscommit * :fire: Remove unneeded import * :zap: Refactor test DB prefixing * :zap: Add no-leftover check to MySQL * :package: Update package.json * :zap: Autoincrement on simulated MySQL truncation * :fire: Remove debugging queries * ✏️ fix email template link expiry * 🔥 remove unused import * ✅ fix testing email not sent error * fix duplicate import * add package lock * fix export * change opacity * fix text issue * update action box * update error title * update forgot password * update survey * update product text * remove unset fields * add category to page events * remove duplicate import * update key * update key * update label type * 🎨 um/fe review (#2946) * :whale: Update Node.js versions of Docker images to 16 * :bug: Fix that some keyboard shortcuts did no longer work * N8N-3057 Fixed Keyboard shortcuts no longer working on / Fixed callDebounced function * N8N-3057 Update Debounce Function * N8N-3057 Refactor callDebounce function * N8N-3057 Update Dobounce Function * :bug: Fix issue with tooltips getting displayed behind node details view * fix tooltips z-index * move all element ui components * update package lock * :bug: Fix credentials list load issue (#2931) * always fetch credentials * only fetch credentials once * :zap: Allow to disable hiring banner (#2902) * :sparkles: Add flag * :zap: Adjust interfaces * :zap: Adjust store module * :zap: Adjust frontend settings * :zap: Adjust frontend display * :bug: Fix issue that ctrl + o did behave wrong on workflow templates page (#2934) * N8N-3094 Workflow Templates cmd-o acts on the Preview/Iframe * N8N-3094 Workflow Templates cmd-o acts on the Preview/Iframe * disable shortcuts for preview Co-authored-by: Mutasem <mutdmour@gmail.com> * :arrow_up: Update package-lock.json file * :bug: Fix sorting by field in Baserow Node (#2942) This fixes a bug which currently leads to the "Sorting" option of the node to be ignored. * :bug: Fix some i18n line break issues * :sparkles: Add Odoo Node (#2601) * added odoo scaffolding * update getting data from odoo instance * added scaffolding for main loop and request functions * added functions for CRUD opperations * improoved error handling for odooJSONRPCRequest * updated odoo node and fixing nodelinter issues * fixed alpabetical order * fixed types in odoo node * fixing linter errors * fixing linter errors * fixed data shape returned from man loop * updated node input types, added fields list to models * update when custom resource is selected options for fields list will be populated dynamicly * minor fixes * :hammer: fixed credential test, updating CRUD methods * :hammer: added additional fields to crm resource * :hammer: added descriptions, fixed credentials test bug * :hammer: standardize node and descriptions design * :hammer: removed comments * :hammer: added pagination to getAll operation * :zap: removed leftover function from previous implementation, removed required from optional fields * :zap: fixed id field, added indication of type and if required to field description, replaced string input in filters to fetched list of fields * :hammer: fetching list of models from odoo, added selection of fields to be returned to predefined models, fixes accordingly to review * :zap: Small improvements * :hammer: extracted adress fields into collection, changed fields to include in descriptions, minor tweaks * :zap: Improvements * :hammer: working on review * :hammer: fixed linter errors * :hammer: review wip * :hammer: review wip * :hammer: review wip * :zap: updated display name for URL in credentials * :hammer: added checks for valid id to delete and update * :zap: Minor improvements Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :bug: Handle Wise SCA requests (#2734) * :zap: Improve Wise error message after previous change * fix duplicate import * add package lock * fix export * change opacity * fix text issue * update action box * update error title * update forgot password * update survey * update product text * remove unset fields * add category to page events * remove duplicate import * update key * update key Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Tom <19203795+that-one-tom@users.noreply.github.com> Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com> Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: pemontto <939704+pemontto@users.noreply.github.com> * Move owner skip from settings * 🐛 SMTP fixes (#2937) * :fire: Remove `UM_` from SMTP env vars * :fire: Remove SMTP host default value * :zap: Update sender value * :zap: Update invite template * :zap: Update password reset template * :zap: Update `N8N_EMAIL_MODE` default value * :fire: Remove `EMAIL` from all SMTP vars * :sparkles: Implement `verifyConnection()` * :truck: Reposition comment * :pencil2: Fix typo * :pencil2: Minor env var documentation improvements * :art: Fix spacing * :art: Fix spacing * :card_file_box: Remove SMTP settings cache * :zap: Adjust log message * :zap: Update error message * :pencil2: Fix template typo * :pencil2: Adjust wording * :zap: Interpolate email into success toast * :pencil2: Adjust base message in `verifyConnection()` * :zap: Verify connection on password reset * :zap: Bring up POST /users SMTP check * :bug: remove cookie if cookie is not valid * :zap: verify connection on instantiation Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * 🔊 create logger helper for migrations (#2944) * 🔥 remove unused database * :loud_sound: add migration logging for sqlite * 🔥 remove unnecessary index creation * ⚡️ change log level to warn * 🐛 Fix issue with workflow process to initialize db connection correctly (#2948) * ✏️ update error messages for webhhook run/activation * 📈 Implement telemetry events (#2868) * Implement basic telemetry events * Fixing user id as part of the telemetry data * Added user id to be part of the tracked data * :sparkles: Create telemetry mock * :test_tube: Fix tests with telemetry mock * :test_tube: Fix missing key in authless endpoint * :blue_book: Create authless request type * :fire: Remove log * :bug: Fix `migration_strategy` assignment * :blue_book: Remove `instance_id` from `ITelemetryUserDeletionData` * :zap: Simplify concatenation * :zap: Simplify `track()` call signature * Fixed payload of telemetry to always include user_id * Fixing minor issues Co-authored-by: Iván Ovejero <ivov.src@gmail.com> * 🔊 Added logs to credentials, executions and workflows (#2915) * Added logs to credentials, executions and workflows * Some updates according to ivov's feedback * :zap: update log levels * ✅ fix tests Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :bug: fix telemetry error * fix conflicts with master * fix duplicate * add package-lock * :bug: Um/fixes (#2952) * add initials to avatar * redirect to signin if invalid token * update pluralization * add auth page category * data transferred * touch up setup page * update button to add cursor * fix personalization modal not closing * ✏️ fix environment name * 🐛 fix disabling UM * 🐛 fix email setup flag * 🐛 FE fixes 1 (#2953) * add initials to avatar * redirect to signin if invalid token * update pluralization * add auth page category * data transferred * touch up setup page * update button to add cursor * fix personalization modal not closing * capitalize labels, refactor text * Fixed the issue with telemetry data missing for personalization survey * Changed invite email text * 🐛 Fix quotes issue with postgres migration (#2958) * Changed text for invite link * 🐛 fix reset command for mysql * ✅ fix race condition in test DB creation * 🔐 block user creation if UM is disabled * 🥅 improve smtp setup issue error * :zap: update error message * refactor route rules * set package lock * fix access * remove capitalize * update input labels * refactor heading * change span to fragment * add route types * refactor views * ✅ fix increase timeout for mysql * :zap: correct logic of error message * refactor view names * :zap: update randomString * 📈 Added missing event regarding failed emails (#2964) * replace label with info * 🛠 refactor JWT-secret creation * remove duplicate key * remove unused part * remove semicolon * fix up i18n pattern * update translation keys * update urls * support i18n in nds * fix how external keys are handled * add source * 💥 update timestamp of UM migration * ✏️ small message updates * fix tracking * update notification line-height * fix avatar opacity * fix up empty state * shift focus to input * 🔐 Disable basic auth after owner has been set up (#2973) * Disable basic auth after owner has been set up * Remove unnecessary comparison * rename modal title * 🐛 use pgcrypto extension for uuid creation (#2977) * 📧 Added public url variable for emails (#2967) * Added public url variable for emails * Fixed base url for reset password - the current implementation overrides possibly existing path * Change variable name to editorUrl * Using correct name editorUrl for emails * Changed variable description * Improved base url naming and appending path so it remains consistent * Removed trailing slash from editor base url * 🌐 fix i18n pattern (#2970) * fix up i18n pattern * update translation keys * update urls * support i18n in nds * fix how external keys are handled * add source * Um/fixes 1000 (#2980) * fix select issue * 😫 hacky solution to circumvent pgcrypto (#2979) * fix owner bug after transfer. always fetch latest credentials * add confirmation modal to setup * Use webhook url as fallback when editor url is not defined * fix enter bug * update modal * update modal * update modal text, fix bug in settings view * Updating editor url to not append path * rename keys Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com> Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> Co-authored-by: Omar Ajoue <krynble@gmail.com> Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> Co-authored-by: Tom <19203795+that-one-tom@users.noreply.github.com> Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com> Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: pemontto <939704+pemontto@users.noreply.github.com>
2022-03-14 06:46:32 -07:00
const user = await getWorkflowOwner(workflowId);
if (user.id !== runningUser.id) {
// The error workflow could not be found
Logger.warn(
`An attempt to execute workflow ID ${workflowId} as error workflow was blocked due to wrong permission`,
);
return;
}
2019-06-23 03:35:23 -07:00
const executionMode = 'error';
const nodeTypes = NodeTypes();
:art: Set up linting and formatting (#2120) * :arrow_up: Upgrade TS to 4.3.5 * :shirt: Add ESLint configs * :art: Add Prettier config * :package: Add deps and commands * :zap: Adjust global .editorconfig to new ruleset * :fire: Remove unneeded local .editorconfig * :package: Update deps in editor-ui * :hammer: Limit Prettier to only TS files * :zap: Add recommended VSCode extensions * :shirt: Fix build * :fire: Remove Vue setting from global config * :zap: Disable prefer-default-export per feedback * :pencil2: Add forgotten divider * :shirt: Disable no-plusplus * :shirt: Disable class-methods-use-this * :pencil2: Alphabetize overrides * :shirt: Add one-var consecutive override * :rewind: Revert one-var consecutive override This reverts commit b9252cf935659ba6d76727ad484a1d3c00008fcc. * 🎨 👕 Lint and format workflow package (#2121) * :art: Format /workflow package * :shirt: Lint /workflow package * :art: Re-format /workflow package * :shirt: Re-lint /workflow package * :pencil2: Fix typo * :zap: Consolidate if-checks * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format node-dev package (#2122) * :art: Format /node-dev package * :zap: Exclude templates from ESLint config This keeps the templates consistent with the codebase while preventing lint exceptions from being made part of the templates. * :shirt: Lint /node-dev package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * 🎨 👕 Lint and format core package (#2123) * :art: Format /core package * :shirt: Lint /core package * :art: Re-format /core package * :shirt: Re-lint /core package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format cli package (#2124) * :art: Format /cli package * :shirt: Exclude migrations from linting * :shirt: Lint /cli package * :art: Re-format /cli package * :shirt: Re-lint /cli package * :shirt: Fix build * :fire: Remove prefer-default-export exceptions * :zap: Update exceptions in ActiveExecutions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 👕 fix lint issues * :wrench: use package specific linter, remove tslint command * :hammer: resolve build issue, sync dependencies * :wrench: change lint command Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>
2021-08-29 11:58:11 -07:00
const workflowInstance = new Workflow({
id: workflowId,
name: workflowData.name,
nodeTypes,
nodes: workflowData.nodes,
connections: workflowData.connections,
active: workflowData.active,
staticData: workflowData.staticData,
settings: workflowData.settings,
});
2019-06-23 03:35:23 -07:00
let node: INode;
let workflowStartNode: INode | undefined;
for (const nodeName of Object.keys(workflowInstance.nodes)) {
node = workflowInstance.nodes[nodeName];
if (node.type === ERROR_TRIGGER_TYPE) {
workflowStartNode = node;
}
}
if (workflowStartNode === undefined) {
:art: Set up linting and formatting (#2120) * :arrow_up: Upgrade TS to 4.3.5 * :shirt: Add ESLint configs * :art: Add Prettier config * :package: Add deps and commands * :zap: Adjust global .editorconfig to new ruleset * :fire: Remove unneeded local .editorconfig * :package: Update deps in editor-ui * :hammer: Limit Prettier to only TS files * :zap: Add recommended VSCode extensions * :shirt: Fix build * :fire: Remove Vue setting from global config * :zap: Disable prefer-default-export per feedback * :pencil2: Add forgotten divider * :shirt: Disable no-plusplus * :shirt: Disable class-methods-use-this * :pencil2: Alphabetize overrides * :shirt: Add one-var consecutive override * :rewind: Revert one-var consecutive override This reverts commit b9252cf935659ba6d76727ad484a1d3c00008fcc. * 🎨 👕 Lint and format workflow package (#2121) * :art: Format /workflow package * :shirt: Lint /workflow package * :art: Re-format /workflow package * :shirt: Re-lint /workflow package * :pencil2: Fix typo * :zap: Consolidate if-checks * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format node-dev package (#2122) * :art: Format /node-dev package * :zap: Exclude templates from ESLint config This keeps the templates consistent with the codebase while preventing lint exceptions from being made part of the templates. * :shirt: Lint /node-dev package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * 🎨 👕 Lint and format core package (#2123) * :art: Format /core package * :shirt: Lint /core package * :art: Re-format /core package * :shirt: Re-lint /core package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format cli package (#2124) * :art: Format /cli package * :shirt: Exclude migrations from linting * :shirt: Lint /cli package * :art: Re-format /cli package * :shirt: Re-lint /cli package * :shirt: Fix build * :fire: Remove prefer-default-export exceptions * :zap: Update exceptions in ActiveExecutions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 👕 fix lint issues * :wrench: use package specific linter, remove tslint command * :hammer: resolve build issue, sync dependencies * :wrench: change lint command Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>
2021-08-29 11:58:11 -07:00
Logger.error(
`Calling Error Workflow for "${workflowErrorData.workflow.id}". Could not find "${ERROR_TRIGGER_TYPE}" in workflow "${workflowId}"`,
);
2019-06-23 03:35:23 -07:00
return;
}
// Can execute without webhook so go on
// Initialize the data of the webhook node
const nodeExecutionStack: IExecuteData[] = [];
:art: Set up linting and formatting (#2120) * :arrow_up: Upgrade TS to 4.3.5 * :shirt: Add ESLint configs * :art: Add Prettier config * :package: Add deps and commands * :zap: Adjust global .editorconfig to new ruleset * :fire: Remove unneeded local .editorconfig * :package: Update deps in editor-ui * :hammer: Limit Prettier to only TS files * :zap: Add recommended VSCode extensions * :shirt: Fix build * :fire: Remove Vue setting from global config * :zap: Disable prefer-default-export per feedback * :pencil2: Add forgotten divider * :shirt: Disable no-plusplus * :shirt: Disable class-methods-use-this * :pencil2: Alphabetize overrides * :shirt: Add one-var consecutive override * :rewind: Revert one-var consecutive override This reverts commit b9252cf935659ba6d76727ad484a1d3c00008fcc. * 🎨 👕 Lint and format workflow package (#2121) * :art: Format /workflow package * :shirt: Lint /workflow package * :art: Re-format /workflow package * :shirt: Re-lint /workflow package * :pencil2: Fix typo * :zap: Consolidate if-checks * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format node-dev package (#2122) * :art: Format /node-dev package * :zap: Exclude templates from ESLint config This keeps the templates consistent with the codebase while preventing lint exceptions from being made part of the templates. * :shirt: Lint /node-dev package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * 🎨 👕 Lint and format core package (#2123) * :art: Format /core package * :shirt: Lint /core package * :art: Re-format /core package * :shirt: Re-lint /core package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format cli package (#2124) * :art: Format /cli package * :shirt: Exclude migrations from linting * :shirt: Lint /cli package * :art: Re-format /cli package * :shirt: Re-lint /cli package * :shirt: Fix build * :fire: Remove prefer-default-export exceptions * :zap: Update exceptions in ActiveExecutions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 👕 fix lint issues * :wrench: use package specific linter, remove tslint command * :hammer: resolve build issue, sync dependencies * :wrench: change lint command Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>
2021-08-29 11:58:11 -07:00
nodeExecutionStack.push({
node: workflowStartNode,
data: {
main: [
[
{
json: workflowErrorData,
},
2019-06-23 03:35:23 -07:00
],
:art: Set up linting and formatting (#2120) * :arrow_up: Upgrade TS to 4.3.5 * :shirt: Add ESLint configs * :art: Add Prettier config * :package: Add deps and commands * :zap: Adjust global .editorconfig to new ruleset * :fire: Remove unneeded local .editorconfig * :package: Update deps in editor-ui * :hammer: Limit Prettier to only TS files * :zap: Add recommended VSCode extensions * :shirt: Fix build * :fire: Remove Vue setting from global config * :zap: Disable prefer-default-export per feedback * :pencil2: Add forgotten divider * :shirt: Disable no-plusplus * :shirt: Disable class-methods-use-this * :pencil2: Alphabetize overrides * :shirt: Add one-var consecutive override * :rewind: Revert one-var consecutive override This reverts commit b9252cf935659ba6d76727ad484a1d3c00008fcc. * 🎨 👕 Lint and format workflow package (#2121) * :art: Format /workflow package * :shirt: Lint /workflow package * :art: Re-format /workflow package * :shirt: Re-lint /workflow package * :pencil2: Fix typo * :zap: Consolidate if-checks * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format node-dev package (#2122) * :art: Format /node-dev package * :zap: Exclude templates from ESLint config This keeps the templates consistent with the codebase while preventing lint exceptions from being made part of the templates. * :shirt: Lint /node-dev package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * 🎨 👕 Lint and format core package (#2123) * :art: Format /core package * :shirt: Lint /core package * :art: Re-format /core package * :shirt: Re-lint /core package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format cli package (#2124) * :art: Format /cli package * :shirt: Exclude migrations from linting * :shirt: Lint /cli package * :art: Re-format /cli package * :shirt: Re-lint /cli package * :shirt: Fix build * :fire: Remove prefer-default-export exceptions * :zap: Update exceptions in ActiveExecutions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 👕 fix lint issues * :wrench: use package specific linter, remove tslint command * :hammer: resolve build issue, sync dependencies * :wrench: change lint command Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>
2021-08-29 11:58:11 -07:00
],
},
source: null,
:art: Set up linting and formatting (#2120) * :arrow_up: Upgrade TS to 4.3.5 * :shirt: Add ESLint configs * :art: Add Prettier config * :package: Add deps and commands * :zap: Adjust global .editorconfig to new ruleset * :fire: Remove unneeded local .editorconfig * :package: Update deps in editor-ui * :hammer: Limit Prettier to only TS files * :zap: Add recommended VSCode extensions * :shirt: Fix build * :fire: Remove Vue setting from global config * :zap: Disable prefer-default-export per feedback * :pencil2: Add forgotten divider * :shirt: Disable no-plusplus * :shirt: Disable class-methods-use-this * :pencil2: Alphabetize overrides * :shirt: Add one-var consecutive override * :rewind: Revert one-var consecutive override This reverts commit b9252cf935659ba6d76727ad484a1d3c00008fcc. * 🎨 👕 Lint and format workflow package (#2121) * :art: Format /workflow package * :shirt: Lint /workflow package * :art: Re-format /workflow package * :shirt: Re-lint /workflow package * :pencil2: Fix typo * :zap: Consolidate if-checks * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format node-dev package (#2122) * :art: Format /node-dev package * :zap: Exclude templates from ESLint config This keeps the templates consistent with the codebase while preventing lint exceptions from being made part of the templates. * :shirt: Lint /node-dev package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * 🎨 👕 Lint and format core package (#2123) * :art: Format /core package * :shirt: Lint /core package * :art: Re-format /core package * :shirt: Re-lint /core package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format cli package (#2124) * :art: Format /cli package * :shirt: Exclude migrations from linting * :shirt: Lint /cli package * :art: Re-format /cli package * :shirt: Re-lint /cli package * :shirt: Fix build * :fire: Remove prefer-default-export exceptions * :zap: Update exceptions in ActiveExecutions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 👕 fix lint issues * :wrench: use package specific linter, remove tslint command * :hammer: resolve build issue, sync dependencies * :wrench: change lint command Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>
2021-08-29 11:58:11 -07:00
});
2019-06-23 03:35:23 -07:00
const runExecutionData: IRunExecutionData = {
:art: Set up linting and formatting (#2120) * :arrow_up: Upgrade TS to 4.3.5 * :shirt: Add ESLint configs * :art: Add Prettier config * :package: Add deps and commands * :zap: Adjust global .editorconfig to new ruleset * :fire: Remove unneeded local .editorconfig * :package: Update deps in editor-ui * :hammer: Limit Prettier to only TS files * :zap: Add recommended VSCode extensions * :shirt: Fix build * :fire: Remove Vue setting from global config * :zap: Disable prefer-default-export per feedback * :pencil2: Add forgotten divider * :shirt: Disable no-plusplus * :shirt: Disable class-methods-use-this * :pencil2: Alphabetize overrides * :shirt: Add one-var consecutive override * :rewind: Revert one-var consecutive override This reverts commit b9252cf935659ba6d76727ad484a1d3c00008fcc. * 🎨 👕 Lint and format workflow package (#2121) * :art: Format /workflow package * :shirt: Lint /workflow package * :art: Re-format /workflow package * :shirt: Re-lint /workflow package * :pencil2: Fix typo * :zap: Consolidate if-checks * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format node-dev package (#2122) * :art: Format /node-dev package * :zap: Exclude templates from ESLint config This keeps the templates consistent with the codebase while preventing lint exceptions from being made part of the templates. * :shirt: Lint /node-dev package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * 🎨 👕 Lint and format core package (#2123) * :art: Format /core package * :shirt: Lint /core package * :art: Re-format /core package * :shirt: Re-lint /core package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format cli package (#2124) * :art: Format /cli package * :shirt: Exclude migrations from linting * :shirt: Lint /cli package * :art: Re-format /cli package * :shirt: Re-lint /cli package * :shirt: Fix build * :fire: Remove prefer-default-export exceptions * :zap: Update exceptions in ActiveExecutions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 👕 fix lint issues * :wrench: use package specific linter, remove tslint command * :hammer: resolve build issue, sync dependencies * :wrench: change lint command Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>
2021-08-29 11:58:11 -07:00
startData: {},
2019-06-23 03:35:23 -07:00
resultData: {
runData: {},
},
executionData: {
contextData: {},
nodeExecutionStack,
waitingExecution: {},
waitingExecutionSource: {},
2019-06-23 03:35:23 -07:00
},
};
const runData: IWorkflowExecutionDataProcess = {
executionMode,
executionData: runExecutionData,
workflowData,
feat: Add User Management (#2636) * ✅ adjust tests * 🛠 refactor user invites to be indempotent (#2791) * 🔐 Encrypt SMTP pass for user management backend (#2793) * :package: Add crypto-js to /cli * :package: Update package-lock.json * :sparkles: Create type for SMTP config * :zap: Encrypt SMTP pass * :zap: Update format for `userManagement.emails.mode` * :zap: Update format for `binaryDataManager.mode` * :zap: Update format for `logs.level` * :fire: Remove logging * :shirt: Fix lint * 👰 n8n 2826 um wedding FE<>BE (#2789) * remove mocks * update authorization func * lock down default role * 🐛 fix requiring authentication for OPTIONS requests * :bug: fix cors and cookie issues in dev * update setup route Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * update telemetry * 🐛 preload role for users * :bug: remove auth for password reset routes * 🐛 fix forgot-password flow * :zap: allow workflow tag disabling * update telemetry init * add reset * clear error notifications on signin * remove load settings from node view * remove user id from user state * inherit existing user props * go back in history on button click * use replace to force redirect * update stories * :zap: add env check for tag create * :test_tube: Add `/users` tests for user management backend (#2790) * :zap: Refactor users namespace * :zap: Adjust fillout endpoint * :zap: Refactor initTestServer arg * :pencil2: Specify agent type * :pencil2: Specify role type * :zap: Tighten `/users/:id` check * :sparkles: Add initial tests * :truck: Reposition init server map * :zap: Set constants in `validatePassword()` * :zap: Tighten `/users/:id` check * :zap: Improve checks in `/users/:id` * :sparkles: Add tests for `/users/:id` * :package: Update package-lock.json * :zap: Simplify expectation * :zap: Reuse util for authless agent * :truck: Make role names consistent * :blue_book: Tighten namespaces map type * :fire: Remove unneeded default arg * :sparkles: Add tests for `POST /users` * :blue_book: Create test SMTP account type * :pencil2: Improve wording * :art: Formatting * :fire: Remove temp fix * :zap: Replace helper with config call * :zap: Fix failing tests * :fire: Remove outdated test * :fire: Remove unused helper * :zap: Increase readability of domain fetcher * :zap: Refactor payload validation * :fire: Remove repetition * :rewind: Restore logging * :zap: Initialize logger in tests * :fire: Remove redundancy from check * :truck: Move `globalOwnerRole` fetching to global scope * :fire: Remove unused imports * :truck: Move random utils to own module * :truck: Move test types to own module * :pencil2: Add dividers to utils * :pencil2: Reorder `initTestServer` param docstring * :pencil2: Add TODO comment * :zap: Dry up member creation * :zap: Tighten search criteria * :test_tube: Add expectation to `GET /users` * :zap: Create role fetcher utils * :zap: Create one more role fetch util * :fire: Remove unneeded DB query * :test_tube: Add expectation to `POST /users` * :test_tube: Add expectation to `DELETE /users/:id` * :test_tube: Add another expectation to `DELETE /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :test_tube: Adjust expectations in `POST /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :shirt: Fix build * :zap: Update method * :blue_book: Fix `userToDelete` type * :zap: Refactor `createAgent()` * :zap: Make role fetching global * :zap: Optimize roles fetching * :zap: Centralize member creation * :zap: Refactor truncation helper * :test_tube: Add teardown to `DELETE /users/:id` * :test_tube: Add DB expectations to users tests * :fire: Remove pass validation due to hash * :pencil2: Improve pass validation error message * :zap: Improve owner pass validation * :zap: Create logger initialization helper * :zap: Optimize helpers * :zap: Restructure `getAllRoles` helper * :test_tube: Add password reset flow tests for user management backend (#2807) * :zap: Refactor users namespace * :zap: Adjust fillout endpoint * :zap: Refactor initTestServer arg * :pencil2: Specify agent type * :pencil2: Specify role type * :zap: Tighten `/users/:id` check * :sparkles: Add initial tests * :truck: Reposition init server map * :zap: Set constants in `validatePassword()` * :zap: Tighten `/users/:id` check * :zap: Improve checks in `/users/:id` * :sparkles: Add tests for `/users/:id` * :package: Update package-lock.json * :zap: Simplify expectation * :zap: Reuse util for authless agent * :truck: Make role names consistent * :blue_book: Tighten namespaces map type * :fire: Remove unneeded default arg * :sparkles: Add tests for `POST /users` * :blue_book: Create test SMTP account type * :pencil2: Improve wording * :art: Formatting * :fire: Remove temp fix * :zap: Replace helper with config call * :zap: Fix failing tests * :fire: Remove outdated test * :sparkles: Add tests for password reset flow * :pencil2: Fix test wording * :zap: Set password reset namespace * :fire: Remove unused helper * :zap: Increase readability of domain fetcher * :zap: Refactor payload validation * :fire: Remove repetition * :rewind: Restore logging * :zap: Initialize logger in tests * :fire: Remove redundancy from check * :truck: Move `globalOwnerRole` fetching to global scope * :fire: Remove unused imports * :truck: Move random utils to own module * :truck: Move test types to own module * :pencil2: Add dividers to utils * :pencil2: Reorder `initTestServer` param docstring * :pencil2: Add TODO comment * :zap: Dry up member creation * :zap: Tighten search criteria * :test_tube: Add expectation to `GET /users` * :zap: Create role fetcher utils * :zap: Create one more role fetch util * :fire: Remove unneeded DB query * :test_tube: Add expectation to `POST /users` * :test_tube: Add expectation to `DELETE /users/:id` * :test_tube: Add another expectation to `DELETE /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :test_tube: Adjust expectations in `POST /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :blue_book: Add namespace name to type * :truck: Adjust imports * :zap: Optimize `globalOwnerRole` fetching * :test_tube: Add expectations * :shirt: Fix build * :shirt: Fix build * :zap: Update method * :zap: Update method * :test_tube: Fix `POST /change-password` test * :blue_book: Fix `userToDelete` type * :zap: Refactor `createAgent()` * :zap: Make role fetching global * :zap: Optimize roles fetching * :zap: Centralize member creation * :zap: Refactor truncation helper * :test_tube: Add teardown to `DELETE /users/:id` * :test_tube: Add DB expectations to users tests * :zap: Refactor as in users namespace * :test_tube: Add expectation to `POST /change-password` * :fire: Remove pass validation due to hash * :pencil2: Improve pass validation error message * :zap: Improve owner pass validation * :zap: Create logger initialization helper * :zap: Optimize helpers * :zap: Restructure `getAllRoles` helper * :zap: Update `truncate` calls * :bug: return 200 for non-existing user * ✅ fix tests for forgot-password and user creation * Update packages/editor-ui/src/components/MainSidebar.vue Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/components/Telemetry.vue Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * :truck: Fix imports * :zap: reset password just if password exists * Fix validation at `PATCH /workfows/:id` (#2819) * :bug: Validate entity only if workflow * :shirt: Fix build * 🔨 refactor response from user creation * 🐛 um email invite fix (#2833) * update users invite * fix notificaitons stacking on top of each other * remove unnessary check * fix type issues * update structure * fix types * 🐘 database migrations UM + password reset expiration (#2710) * Add table prefix and assign existing workflows and credentials to owner for sqlite * Added user management migration to MySQL * Fixed some missing table prefixes and removed unnecessary user id * Created migration for postgres and applies minor fixes * Fixed migration for sqlite by removing the unnecessary index and for mysql by removing unnecessary user data * Added password reset token expiration * Addressing comments made by Ben * ⚡️ add missing tablePrefix * ✅ fix tests + add tests for expiring pw-reset-token Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :zap: treat skipped personalizationSurvey as not answered * :bug: removing active workflows when deleting user, :bug: fix reinvite, :bug: fix resolve-signup-token, 🐘 remove workflowname uniqueness * ✅ Add DB state check tests (#2841) * :fire: Remove unneeded import * :fire: Remove unneeded vars * :pencil2: Improve naming * :test_tube: Add expectations to `POST /owner` * :test_tube: Add expectations to `PATCH /me` * :test_tube: Add expectation to `PATCH /me/password` * :pencil2: Clarify when owner is owner shell * :test_tube: Add more expectations * :rewind: Restore package-lock to parent branch state * Add logging to user management endpoints v2 (#2836) * :zap: Initialize logger in tests * :zap: Add logs to mailer * :zap: Add logs to middleware * :zap: Add logs to me endpoints * :zap: Add logs to owner endpoints * :zap: Add logs to pass flow endpoints * :zap: Add logs to users endpoints * :blue_book: Improve typings * :zap: Merge two logs into one * :zap: Adjust log type * :zap: Add password reset email log * :pencil2: Reword log message * :zap: Adjust log meta object * :zap: Add total to log * :pencil2: Add detail to log message * :pencil2: Reword log message * :pencil2: Reword log message * :bug: Make total users to set up accurate * :pencil2: Reword `Logger.debug()` messages * :pencil2: Phrasing change for consistency * :bug: Fix ID overridden in range query * :hammer: small refactoring * 🔐 add auth to push-connection * 🛠 ✅ Create credentials namespace and add tests (#2831) * :test_tube: Fix failing test * :blue_book: Improve `createAgent` signature * :truck: Fix `LoggerProxy` import * :sparkles: Create credentials endpoints namespace * :test_tube: Set up initial tests * :zap: Add validation to model * :zap: Adjust validation * :test_tube: Add test * :truck: Sort creds endpoints * :pencil2: Plan out pending tests * :test_tube: Add deletion tests * :test_tube: Add patch tests * :test_tube: Add get cred tests * :truck: Hoist import * :pencil2: Make test descriptions consistent * :pencil2: Adjust description * :test_tube: Add missing test * :pencil2: Make get descriptions consistent * :rewind: Undo line break * :zap: Refactor to simplify `saveCredential` * :test_tube: Add non-owned tests for owner * :pencil2: Improve naming * :pencil2: Add clarifying comments * :truck: Improve imports * :zap: Initialize config file * :fire: Remove unneeded import * :truck: Rename dir * :zap: Adjust deletion call * :zap: Adjust error code * :pencil2: Touch up comment * :zap: Optimize fetching with `@RelationId` * :test_tube: Add expectations * :zap: Simplify mock calls * :blue_book: Set deep readonly to object constants * :fire: Remove unused param and encryption key * :zap: Add more `@RelationId` calls in models * :rewind: Restore * :bug: no auth for .svg * 🛠 move auth cookie name to constant; 🐛 fix auth for push-connection * ✅ Add auth middleware tests (#2853) * :zap: Simplify existing suite * :test_tube: Validate that auth cookie exists * :pencil2: Move comment * :fire: Remove unneeded imports * :pencil2: Add clarifying comments * :pencil2: Document auth endpoints * :test_tube: Add middleware tests * :pencil2: Fix typos Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com> * 🔥 Remove test description wrappers (#2874) * :fire: Remove /owner test wrappers * :fire: Remove auth middleware test wrappers * :fire: Remove auth endpoints test wrappers * :fire: Remove overlooked middleware wrappers * :fire: Remove me namespace test wrappers Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * ✨ Runtime checks for credentials load and execute workflows (#2697) * Runtime checks for credentials load and execute workflows * Fixed from reviewers * Changed runtime validation for credentials to be on start instead of on demand * Refactored validations to use user id instead of whole User instance * Removed user entity from workflow project because it is no longer needed * General fixes and improvements to runtime checks * Remove query builder and improve styling * Fix lint issues * :zap: remove personalizationAnswers when fetching all users * ✅ fix failing get all users test * ✅ check authorization routes also for authentication * :bug: fix defaults in reset command * 🛠 refactorings from walkthrough (#2856) * :zap: Make `getTemplate` async * :zap: Remove query builder from `getCredentials` * :zap: Add save manual executions log message * :rewind: Restore and hide migrations logs * :zap: Centralize ignore paths check * :shirt: Fix build * :truck: Rename `hasOwner` to `isInstanceOwnerSetUp` * :zap: Add `isSetUp` flag to `User` * :zap: Add `isSetUp` to FE interface * :zap: Adjust `isSetUp` checks on FE * :shirt: Fix build * :zap: Adjust `isPendingUser()` check * :truck: Shorten helper name * :zap: Refactor as `isPending` per feedback * :pencil2: Update log message * :zap: Broaden check * :fire: Remove unneeded relation * :zap: Refactor query * :fire: Re-remove logs from migrations * 🛠 set up credentials router (#2882) * :zap: Refactor creds endpoints into router * :test_tube: Refactor creds tests to use router * :truck: Rename arg for consistency * :truck: Move `credentials.api.ts` outside /public * :truck: Rename constant for consistency * :blue_book: Simplify types * :fire: Remove unneeded arg * :truck: Rename router to controller * :zap: Shorten endpoint * :zap: Update `initTestServer()` arg * :zap: Mutate response body in GET /credentials * 🏎 improve performance of type cast for FE Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :bug: remove GET /login from auth * 🔀 merge master + FE update (#2905) * :sparkles: Add Templates (#2720) * Templates Bugs / Fixed Various Bugs / Multiply Api Request, Carousel Gradient, Core Nodes Filters ... * Updated MainSidebar Paddings * N8N-Templates Bugfixing - Remove Unnecesairy Icon (Shape), Refatctor infiniteScrollEnabled Prop + updated infiniterScroll functinality * N8N-2853 Fixed Carousel Arrows Bug after Cleaning the SearchBar * fix telemetry init * fix search tracking issues * N8N-2853 Created FilterTemplateNode Constant Array, Filter PlayButton and WebhookRespond from Nodes, Added Box for showing more nodes inside TemplateList, Updated NewWorkflowButton to primary, Fixed Markdown issue with Code * N8N-2853 Removed Placeholder if Workflows Or Collections are not found, Updated the Logic * fix telemetry events * clean up session id * update user inserted event * N8N-2853 Fixed Categories to Moving if the names are long * Add todos * Update Routes on loading * fix spacing * Update Border Color * Update Border Readius * fix filter fn * fix constant, console error * N8N-2853 PR Fixes, Refactoring, Removing unnecesairy code .. * N8N-2853 PR Fixes - Editor-ui Fixes, Refactoring, Removing Dead Code ... * N8N-2853 Refactor Card to LongCard * clean up spacing, replace css var * clean up spacing * set categories as optional in node * replace vars * refactor store * remove unnesssary import * fix error * fix templates view to start * add to cache * fix coll view data * fix categories * fix category event * fix collections carousel * fix initial load and search * fix infinite load * fix query param * fix scrolling issues * fix scroll to top * fix search * fix collections search * fix navigation bug * rename view * update package lock * rename workflow view * rename coll view * update routes * add wrapper component * set session id * fix search tracking * fix session tracking * remove deleted mutation * remove check for unsupported nodes * refactor filters * lazy load template * clean up types * refactor infinte scroll * fix end of search * Fix spacing * fix coll loading * fix types * fix coll view list * fix navigation * rename types * rename state * fix search responsiveness * fix coll view spacing * fix search view spacing * clean up views * set background color * center page not vert * fix workflow view * remove import * fix background color * fix background * clean props * clean up imports * refactor button * update background color * fix spacing issue * rename event * update telemetry event * update endpoints, add loading view, check for endpoint health * remove conolse log * N8N-2853 Fixed Menu Items Padding * replace endpoints * fix type issues * fix categories * N8N-2853 Fixed ParameterInput Placeholder after ElementUI Upgrade * update createdAt * :zap: Fix placeholder in creds config modal * :pencil2: Adjust docstring to `credText` placeholder version * N8N-2853 Optimized * N8N-2853 Optimized code * :zap: Add deployment type to FE settings * :zap: Add deployment type to interfaces * N8N-2853 Removed Animated prop from components * :zap: Add deployment type to store module * :sparkles: Create hiring banner * :zap: Display hiring banner * :rewind: Undo unrelated change * N8N-2853 Refactor TemplateFilters * :zap: Fix indentation * N8N-2853 Reorder items / TemplateList * :shirt: Fix lint * N8N-2853 Refactor TemplateFilters Component * N8N-2853 Reorder TemplateList * refactor template card * update timeout * fix removelistener * fix spacing * split enabled from offline * add spacing to go back * N8N-2853 Fixed Screens for Tablet & Mobile * N8N-2853 Update Stores Order * remove image componet * remove placeholder changes * N8N-2853 Fixed Chinnese Placeholders for El Select Component that comes from the Library Upgrade * N8N-2853 Fixed Vue Agile Console Warnings * N8N-2853 Update Collection Route * :pencil2: Update jobs URL * :truck: Move logging to root component * :zap: Refactor `deploymentType` to `isInternalUser` * :zap: Improve syntax * fix cut bug in readonly view * N8N-3012 Fixed Details section in templates with lots of description, Fixed Mardown Block with overflox-x * N8N-3012 Increased Font-size, Spacing and Line-height of the Categories Items * N8N-3012 Fixed Vue-agile client width error on resize * only delay redirect for root path * N8N-3012 Fixed Carousel Arrows that Disappear * N8N-3012 Make Loading Screen same color as Templates * N8N-3012 Markdown renders inline block as block code * add offline warning * hide log from workflow iframe * update text * make search button larger * N8N-3012 Categories / Tags extended all the way in details section * load data in cred modals * remove deleted message * add external hook * remove import * update env variable description * fix markdown width issue * disable telemetry for demo, add session id to template pages * fix telemetery bugs * N8N-3012 Not found Collections/Wokrkflow * N8N-3012 Checkboxes change order when categories are changed * N8N-3012 Refactor SortedCategories inside TemplateFilters component * fix firefox bug * add telemetry requirements * add error check * N8N-3012 Update GoBackButton to check if Route History is present * N8N-3012 Fixed WF Nodes Icons * hide workflow screenshots * remove unnessary mixins * rename prop * fix design a bit * rename data * clear workspace on destroy * fix copy paste bug * fix disabled state * N8N-3012 Fixed Saving/Leave without saving Modal * fix telemetry issue * fix telemetry issues, error bug * fix error notification * disable workflow menu items on templates * fix i18n elementui issue * Remove Emit - NodeType from HoverableNodeIcon component * TechnicalFixes: NavigateTo passed down as function should be helper * TechnicalFixes: Update NavigateTo function * TechnicalFixes: Add FilterCoreNodes directly as function * check for empty connecitions * fix titles * respect new lines * increase categories to be sliced * rename prop * onUseWorkflow * refactor click event * fix bug, refactor * fix loading story * add default * fix styles at right level of abstraction * add wrapper with width * remove loading blocks component * add story * rename prop * fix spacing * refactor tag, add story * move margin to container * fix tag redirect, remove unnessary check * make version optional * rename view * move from workflows to templates store * remove unnessary change * remove unnessary css * rename component * refactor collection card * add boolean to prevent shrink * clean up carousel * fix redirection bug on save * remove listeners to fix multiple listeners bug * remove unnessary types * clean up boolean set * fix node select bug * rename component * remove unnessary class * fix redirection bug * remove unnessary error * fix typo * fix blockquotes, pre * refactor markdown rendering * remove console log * escape markdown * fix safari bug * load active workflows to fix modal bug * :arrow_up: Update package-lock.json file * :zap: Add n8n version as header Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com> Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :bookmark: Release n8n-workflow@0.88.0 * :arrow_up: Set n8n-workflow@0.88.0 on n8n-core * :bookmark: Release n8n-core@0.106.0 * :arrow_up: Set n8n-core@0.106.0 and n8n-workflow@0.88.0 on n8n-node-dev * :bookmark: Release n8n-node-dev@0.45.0 * :arrow_up: Set n8n-core@0.106.0 and n8n-workflow@0.88.0 on n8n-nodes-base * :bookmark: Release n8n-nodes-base@0.163.0 * :bookmark: Release n8n-design-system@0.12.0 * :arrow_up: Set n8n-design-system@0.12.0 and n8n-workflow@0.88.0 on n8n-editor-ui * :bookmark: Release n8n-editor-ui@0.132.0 * :arrow_up: Set n8n-core@0.106.0, n8n-editor-ui@0.132.0, n8n-nodes-base@0.163.0 and n8n-workflow@0.88.0 on n8n * :bookmark: Release n8n@0.165.0 * fix default user bug * fix bug * update package lock * fix duplicate import * fix settings * fix templates access Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :zap: n8n 2952 personalisation (#2911) * refactor/update survey * update customers * Fix up personalization survey * fix recommendation logic * set to false * hide suggested nodes when empty * use keys * add missing logic * switch types * Fix logic * remove unused constants * add back constant * refactor filtering inputs * hide last input on personal * fix other * ✨ add current pw check for change password (#2912) * fix back button * Add current password input * add to modal * update package.json * delete mock file * delete mock file * get settings func * update router * update package lock * update package lock * Fix invite text * update error i18n * open personalization on search if not set * update error view i18n * update change password * update settings sidebar * remove import * fix sidebar * :goal_net: fix error for credential/workflow not found * update invite modal * ✨ persist skipping owner setup (#2894) * 🚧 added skipInstanceOwnerSetup to DB + route to save skipping * ✨ skipping owner setup persists * ✅ add tests for authorization and /owner/skip-setup * 🛠 refactor FE settings getter * 🛠 move setting setup stop to owner creation * :bug: fix wrong setting of User.isPending * :bug: fix isPending * 🏷 add isPending to PublicUser * :bug: fix unused import * update delete modal * change password modal * remove _label * sort keys * remove key * update key names * fix test endpoint * 🥅 Handle error workflows permissions (#2908) * Handle error workflows permissions * Fixed wrong query format * 🛠 refactor query Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com> * fix ts issue * fix list after ispending changes * fix error page bugs * fix error redirect * fix notification * :bug: fix survey import in migration * fix up spacing * update keys spacing * update keys * add space * update key * fix up more spacing * 🔐 add current password (#2919) * add curr pass * update key names * :bug: stringify tag ids * 🔐 check current password before update * add package lock * fix dep version * update version * 🐛 fix access for instance owner to credentials (#2927) * 🛠 stringify tag id on entity * 🔐 Update password requirements (#2920) * :zap: Update password requirements * :zap: Adjust random helpers * ✅ fix tests for currentPassword check * change redirection, add homepage * fix error view redirection * updated wording * fix setup redirection * update validator * remove successfully * update consumers * update settings redirect * on signup, redirect to homepage * update empty state * add space to emails * remove brackets * add opacity * update spacing * remove border from last user * personal details updated * update redirect on sign up * prevent text wrap * fix notification title line height * remove console log * 🐘 Support testing with Postgres and MySQL (#2886) * :card_file_box: Fix Postgres migrations * :zap: Add DB-specific scripts * :sparkles: Set up test connections * :zap: Add Postgres UUID check * :test_tube: Make test adjustments for Postgres * :zap: Refactor connection logic * :sparkles: Set up double init for Postgres * :pencil2: Add TODOs * :zap: Refactor DB dropping logic * :sparkles: Implement global teardown * :sparkles: Create TypeORM wrappers * :sparkles: Initial MySQL setup * :zap: Clean up Postgres connection options * :zap: Simplify by sharing bootstrap connection name * :card_file_box: Fix MySQL migrations * :fire: Remove comments * :zap: Use ES6 imports * :fire: Remove outdated comments * :zap: Centralize bootstrap connection name handles * :zap: Centralize database types * :pencil2: Update comment * :truck: Rename `findRepository` * :construction: Attempt to truncate MySQL * :sparkles: Implement creds router * :bug: Fix duplicated MySQL bootstrap * :bug: Fix misresolved merge conflict * :card_file_box: Fix tags migration * :card_file_box: Fix MySQL UM migration * :bug: Fix MySQL parallelization issues * :blue_book: Augment TypeORM to prevent error * :fire: Remove comments * :sparkles: Support one sqlite DB per suite run * :truck: Move `testDb` to own module * :fire: Deduplicate bootstrap Postgres logic * :fire: Remove unneeded comment * :zap: Make logger init calls consistent * :pencil2: Improve comment * :pencil2: Add dividers * :art: Improve formatting * :fire: Remove duplicate MySQL global setting * :truck: Move comment * :zap: Update default test script * :fire: Remove unneeded helper * :zap: Unmarshal answers from Postgres * :bug: Phase out `isTestRun` * :zap: Refactor `isEmailSetup` * :fire: Remove unneeded imports * :zap: Handle bootstrap connection errors * :fire: Remove unneeded imports * :fire: Remove outdated comments * :pencil2: Fix typos * :truck: Relocate `answersFormatter` * :rewind: Undo package.json miscommit * :fire: Remove unneeded import * :zap: Refactor test DB prefixing * :zap: Add no-leftover check to MySQL * :package: Update package.json * :zap: Autoincrement on simulated MySQL truncation * :fire: Remove debugging queries * ✏️ fix email template link expiry * 🔥 remove unused import * ✅ fix testing email not sent error * fix duplicate import * add package lock * fix export * change opacity * fix text issue * update action box * update error title * update forgot password * update survey * update product text * remove unset fields * add category to page events * remove duplicate import * update key * update key * update label type * 🎨 um/fe review (#2946) * :whale: Update Node.js versions of Docker images to 16 * :bug: Fix that some keyboard shortcuts did no longer work * N8N-3057 Fixed Keyboard shortcuts no longer working on / Fixed callDebounced function * N8N-3057 Update Debounce Function * N8N-3057 Refactor callDebounce function * N8N-3057 Update Dobounce Function * :bug: Fix issue with tooltips getting displayed behind node details view * fix tooltips z-index * move all element ui components * update package lock * :bug: Fix credentials list load issue (#2931) * always fetch credentials * only fetch credentials once * :zap: Allow to disable hiring banner (#2902) * :sparkles: Add flag * :zap: Adjust interfaces * :zap: Adjust store module * :zap: Adjust frontend settings * :zap: Adjust frontend display * :bug: Fix issue that ctrl + o did behave wrong on workflow templates page (#2934) * N8N-3094 Workflow Templates cmd-o acts on the Preview/Iframe * N8N-3094 Workflow Templates cmd-o acts on the Preview/Iframe * disable shortcuts for preview Co-authored-by: Mutasem <mutdmour@gmail.com> * :arrow_up: Update package-lock.json file * :bug: Fix sorting by field in Baserow Node (#2942) This fixes a bug which currently leads to the "Sorting" option of the node to be ignored. * :bug: Fix some i18n line break issues * :sparkles: Add Odoo Node (#2601) * added odoo scaffolding * update getting data from odoo instance * added scaffolding for main loop and request functions * added functions for CRUD opperations * improoved error handling for odooJSONRPCRequest * updated odoo node and fixing nodelinter issues * fixed alpabetical order * fixed types in odoo node * fixing linter errors * fixing linter errors * fixed data shape returned from man loop * updated node input types, added fields list to models * update when custom resource is selected options for fields list will be populated dynamicly * minor fixes * :hammer: fixed credential test, updating CRUD methods * :hammer: added additional fields to crm resource * :hammer: added descriptions, fixed credentials test bug * :hammer: standardize node and descriptions design * :hammer: removed comments * :hammer: added pagination to getAll operation * :zap: removed leftover function from previous implementation, removed required from optional fields * :zap: fixed id field, added indication of type and if required to field description, replaced string input in filters to fetched list of fields * :hammer: fetching list of models from odoo, added selection of fields to be returned to predefined models, fixes accordingly to review * :zap: Small improvements * :hammer: extracted adress fields into collection, changed fields to include in descriptions, minor tweaks * :zap: Improvements * :hammer: working on review * :hammer: fixed linter errors * :hammer: review wip * :hammer: review wip * :hammer: review wip * :zap: updated display name for URL in credentials * :hammer: added checks for valid id to delete and update * :zap: Minor improvements Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :bug: Handle Wise SCA requests (#2734) * :zap: Improve Wise error message after previous change * fix duplicate import * add package lock * fix export * change opacity * fix text issue * update action box * update error title * update forgot password * update survey * update product text * remove unset fields * add category to page events * remove duplicate import * update key * update key Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Tom <19203795+that-one-tom@users.noreply.github.com> Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com> Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: pemontto <939704+pemontto@users.noreply.github.com> * Move owner skip from settings * 🐛 SMTP fixes (#2937) * :fire: Remove `UM_` from SMTP env vars * :fire: Remove SMTP host default value * :zap: Update sender value * :zap: Update invite template * :zap: Update password reset template * :zap: Update `N8N_EMAIL_MODE` default value * :fire: Remove `EMAIL` from all SMTP vars * :sparkles: Implement `verifyConnection()` * :truck: Reposition comment * :pencil2: Fix typo * :pencil2: Minor env var documentation improvements * :art: Fix spacing * :art: Fix spacing * :card_file_box: Remove SMTP settings cache * :zap: Adjust log message * :zap: Update error message * :pencil2: Fix template typo * :pencil2: Adjust wording * :zap: Interpolate email into success toast * :pencil2: Adjust base message in `verifyConnection()` * :zap: Verify connection on password reset * :zap: Bring up POST /users SMTP check * :bug: remove cookie if cookie is not valid * :zap: verify connection on instantiation Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * 🔊 create logger helper for migrations (#2944) * 🔥 remove unused database * :loud_sound: add migration logging for sqlite * 🔥 remove unnecessary index creation * ⚡️ change log level to warn * 🐛 Fix issue with workflow process to initialize db connection correctly (#2948) * ✏️ update error messages for webhhook run/activation * 📈 Implement telemetry events (#2868) * Implement basic telemetry events * Fixing user id as part of the telemetry data * Added user id to be part of the tracked data * :sparkles: Create telemetry mock * :test_tube: Fix tests with telemetry mock * :test_tube: Fix missing key in authless endpoint * :blue_book: Create authless request type * :fire: Remove log * :bug: Fix `migration_strategy` assignment * :blue_book: Remove `instance_id` from `ITelemetryUserDeletionData` * :zap: Simplify concatenation * :zap: Simplify `track()` call signature * Fixed payload of telemetry to always include user_id * Fixing minor issues Co-authored-by: Iván Ovejero <ivov.src@gmail.com> * 🔊 Added logs to credentials, executions and workflows (#2915) * Added logs to credentials, executions and workflows * Some updates according to ivov's feedback * :zap: update log levels * ✅ fix tests Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :bug: fix telemetry error * fix conflicts with master * fix duplicate * add package-lock * :bug: Um/fixes (#2952) * add initials to avatar * redirect to signin if invalid token * update pluralization * add auth page category * data transferred * touch up setup page * update button to add cursor * fix personalization modal not closing * ✏️ fix environment name * 🐛 fix disabling UM * 🐛 fix email setup flag * 🐛 FE fixes 1 (#2953) * add initials to avatar * redirect to signin if invalid token * update pluralization * add auth page category * data transferred * touch up setup page * update button to add cursor * fix personalization modal not closing * capitalize labels, refactor text * Fixed the issue with telemetry data missing for personalization survey * Changed invite email text * 🐛 Fix quotes issue with postgres migration (#2958) * Changed text for invite link * 🐛 fix reset command for mysql * ✅ fix race condition in test DB creation * 🔐 block user creation if UM is disabled * 🥅 improve smtp setup issue error * :zap: update error message * refactor route rules * set package lock * fix access * remove capitalize * update input labels * refactor heading * change span to fragment * add route types * refactor views * ✅ fix increase timeout for mysql * :zap: correct logic of error message * refactor view names * :zap: update randomString * 📈 Added missing event regarding failed emails (#2964) * replace label with info * 🛠 refactor JWT-secret creation * remove duplicate key * remove unused part * remove semicolon * fix up i18n pattern * update translation keys * update urls * support i18n in nds * fix how external keys are handled * add source * 💥 update timestamp of UM migration * ✏️ small message updates * fix tracking * update notification line-height * fix avatar opacity * fix up empty state * shift focus to input * 🔐 Disable basic auth after owner has been set up (#2973) * Disable basic auth after owner has been set up * Remove unnecessary comparison * rename modal title * 🐛 use pgcrypto extension for uuid creation (#2977) * 📧 Added public url variable for emails (#2967) * Added public url variable for emails * Fixed base url for reset password - the current implementation overrides possibly existing path * Change variable name to editorUrl * Using correct name editorUrl for emails * Changed variable description * Improved base url naming and appending path so it remains consistent * Removed trailing slash from editor base url * 🌐 fix i18n pattern (#2970) * fix up i18n pattern * update translation keys * update urls * support i18n in nds * fix how external keys are handled * add source * Um/fixes 1000 (#2980) * fix select issue * 😫 hacky solution to circumvent pgcrypto (#2979) * fix owner bug after transfer. always fetch latest credentials * add confirmation modal to setup * Use webhook url as fallback when editor url is not defined * fix enter bug * update modal * update modal * update modal text, fix bug in settings view * Updating editor url to not append path * rename keys Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com> Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> Co-authored-by: Omar Ajoue <krynble@gmail.com> Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> Co-authored-by: Tom <19203795+that-one-tom@users.noreply.github.com> Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com> Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: pemontto <939704+pemontto@users.noreply.github.com>
2022-03-14 06:46:32 -07:00
userId: user.id,
};
const workflowRunner = new WorkflowRunner();
await workflowRunner.run(runData);
2019-06-23 03:35:23 -07:00
} catch (error) {
:art: Set up linting and formatting (#2120) * :arrow_up: Upgrade TS to 4.3.5 * :shirt: Add ESLint configs * :art: Add Prettier config * :package: Add deps and commands * :zap: Adjust global .editorconfig to new ruleset * :fire: Remove unneeded local .editorconfig * :package: Update deps in editor-ui * :hammer: Limit Prettier to only TS files * :zap: Add recommended VSCode extensions * :shirt: Fix build * :fire: Remove Vue setting from global config * :zap: Disable prefer-default-export per feedback * :pencil2: Add forgotten divider * :shirt: Disable no-plusplus * :shirt: Disable class-methods-use-this * :pencil2: Alphabetize overrides * :shirt: Add one-var consecutive override * :rewind: Revert one-var consecutive override This reverts commit b9252cf935659ba6d76727ad484a1d3c00008fcc. * 🎨 👕 Lint and format workflow package (#2121) * :art: Format /workflow package * :shirt: Lint /workflow package * :art: Re-format /workflow package * :shirt: Re-lint /workflow package * :pencil2: Fix typo * :zap: Consolidate if-checks * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format node-dev package (#2122) * :art: Format /node-dev package * :zap: Exclude templates from ESLint config This keeps the templates consistent with the codebase while preventing lint exceptions from being made part of the templates. * :shirt: Lint /node-dev package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * 🎨 👕 Lint and format core package (#2123) * :art: Format /core package * :shirt: Lint /core package * :art: Re-format /core package * :shirt: Re-lint /core package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format cli package (#2124) * :art: Format /cli package * :shirt: Exclude migrations from linting * :shirt: Lint /cli package * :art: Re-format /cli package * :shirt: Re-lint /cli package * :shirt: Fix build * :fire: Remove prefer-default-export exceptions * :zap: Update exceptions in ActiveExecutions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 👕 fix lint issues * :wrench: use package specific linter, remove tslint command * :hammer: resolve build issue, sync dependencies * :wrench: change lint command Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>
2021-08-29 11:58:11 -07:00
Logger.error(
`Calling Error Workflow for "${workflowErrorData.workflow.id}": "${error.message}"`,
{ workflowId: workflowErrorData.workflow.id },
);
2019-06-23 03:35:23 -07:00
}
}
2019-12-19 14:07:55 -08:00
/**
* Returns all the defined NodeTypes
*
* @export
* @returns {ITransferNodeTypes}
*/
export function getAllNodeTypeData(): ITransferNodeTypes {
const nodeTypes = NodeTypes();
// Get the data of all thenode types that they
// can be loaded again in the process
const returnData: ITransferNodeTypes = {};
for (const nodeTypeName of Object.keys(nodeTypes.nodeTypes)) {
if (nodeTypes.nodeTypes[nodeTypeName] === undefined) {
throw new Error(`The NodeType "${nodeTypeName}" could not be found!`);
}
returnData[nodeTypeName] = {
className: nodeTypes.nodeTypes[nodeTypeName].type.constructor.name,
sourcePath: nodeTypes.nodeTypes[nodeTypeName].sourcePath,
};
}
return returnData;
}
:sparkles: Nodes as JSON and authentication redesign (#2401) * :sparkles: change FE to handle new object type * 🚸 improve UX of handling invalid credentials * 🚧 WIP * :art: fix typescript issues * 🐘 add migrations for all supported dbs * ✏️ add description to migrations * :zap: add credential update on import * :zap: resolve after merge issues * :shirt: fix lint issues * :zap: check credentials on workflow create/update * update interface * :shirt: fix ts issues * :zap: adaption to new credentials UI * :bug: intialize cache on BE for credentials check * :bug: fix undefined oldCredentials * :bug: fix deleting credential * :bug: fix check for undefined keys * :bug: fix disabling edit in execution * :art: just show credential name on execution view * ✏️ remove TODO * :zap: implement review suggestions * :zap: add cache to getCredentialsByType * ⏪ use getter instead of cache * ✏️ fix variable name typo * 🐘 include waiting nodes to migrations * :bug: fix reverting migrations command * :zap: update typeorm command * :sparkles: create db:revert command * 👕 fix lint error * :sparkles: Add optional authenticate method to credentials * :zap: Simplify code and add authentication support to MattermostApi * :shirt: Fix lint issue * :zap: Add support to own-mode * :shirt: Fix lint issue * :sparkles: Add support for predefined auth types bearer and headerAuth * :zap: Make sure that DateTime Node always returns strings * :zap: Add support for moment types to If Node * :zap: Make it possible for HTTP Request Node to use all credential types * :sparkles: Add basicAuth support * Add a new dropcontact node * :sparkles: First basic implementation of mainly JSON based nodes * :sparkles: Add fixedCollection support, added value parameter and expression support for value and property * Improvements to #2389 * :zap: Add credentials verification * :zap: Small improvement * :zap: set default time to 45 seconds * :sparkles: Add support for preSend and postReceive methods * :heavy_plus_sign: Add lodash merge and set depedency to workflow * :shirt: Fix lint issue * :zap: Improvements * :zap: Improvements * :zap: Improvements * :zap: Improvements * :zap: Improvements * :bug: Set siren and language correctly * :zap: Add support for requestDefaults * :zap: Add support for baseURL to httpRequest * :zap: Move baseURL to correct location * :sparkles: Add support for options loading * :bug: Fix error with fullAccess nodes * :sparkles: Add credential test functionality * :bug: Fix issue with OAuth autentication and lint issue * :zap: Fix build issue * :bug: Fix issue that url got always overwritten to empty * :sparkles: Add pagination support * :zap: Code fix required after merge * :zap: Remove not needed imports * :zap: Fix credential test * :sparkles: Add expression support for request properties and $self support on properties * :zap: Rename $self to $value * :shirt: Fix lint issue * :zap: Add example how to send data in path * :sparkles: Make it possible to not sent in dot notation * :sparkles: Add support for postReceive:rootProperty * :zap: Fix typo * :sparkles: Add support for postReceive:set * :zap: Some fixes * :zap: Small improvement * ;zap: Separate RoutingNode code * :zap: Simplify code and fix bug * :zap: Remove unused code * :sparkles: Make it possible to define "request" and "requestProperty" on options * :shirt: Fix lint issue * :zap: Change $credentials variables name * :sparkles: Enable expressions and access to credentials in requestDefaults * :zap: Make parameter option loading use RoutingNode.makeRoutingRequest * :sparkles: Allow requestOperations overwrite on LoadOptions * :sparkles: Make it possible to access current node parameters in loadOptions * :zap: Rename parameters variable to make future proof * :zap: Make it possible to use offset-pagination with body * :sparkles: Add support for queryAuth * :zap: Never return more items than requested * :sparkles: Make it possible to overwrite requestOperations on parameter and option level * :shirt: Fix lint issue * :sparkles: Allow simplified auth also with regular nodes * :sparkles: Add support for receiving binary data * :bug: Fix example node * :zap: Rename property "name" to "displayName" in loadOptions * :zap: Send data by default as "query" if nothing is set * :zap: Rename $self to $parent * :zap: Change to work with INodeExecutionData instead of IDataObject * :zap: Improve binaryData handling * :zap: Property design improvements * :zap: Fix property name * :rotating_light: Add some tests * :zap: Add also test for request * :zap: Improve test and fix issues * :zap: Improvements to loadOptions * :zap: Normalize loadOptions with rest of code * :zap: Add info text * :sparkles: Add support for $value in postReceive * :rotating_light: Add tests for RoutingNode.runNode * :zap: Remove TODOs and make url property optional * :zap: Fix bug and lint issue * :bug: Fix bug that not the correct property got used * :rotating_light: Add tests for CredentialsHelper.authenticate * :zap: Improve code and resolve expressions also everywhere for loadOptions and credential test requests * :sparkles: Make it possible to define multiple preSend and postReceive actions * :sparkles: Allow to define tests on credentials * :zap: Remove test data * :arrow_up: Update package-lock.json file * :zap: 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 13:55:43 -08:00
/**
* Returns all the defined CredentialTypes
*
* @export
* @returns {ICredentialsTypeData}
*/
export function getAllCredentalsTypeData(): ICredentialsTypeData {
const credentialTypes = CredentialTypes();
// Get the data of all the credential types that they
// can be loaded again in the subprocess
const returnData: ICredentialsTypeData = {};
for (const credentialTypeName of Object.keys(credentialTypes.credentialTypes)) {
if (credentialTypes.credentialTypes[credentialTypeName] === undefined) {
throw new Error(`The CredentialType "${credentialTypeName}" could not be found!`);
}
returnData[credentialTypeName] = {
className: credentialTypes.credentialTypes[credentialTypeName].type.constructor.name,
sourcePath: credentialTypes.credentialTypes[credentialTypeName].sourcePath,
};
}
return returnData;
}
2019-12-19 14:07:55 -08:00
/**
* Returns the data of the node types that are needed
* to execute the given nodes
*
* @export
* @param {INode[]} nodes
* @returns {ITransferNodeTypes}
*/
export function getNodeTypeData(nodes: INode[]): ITransferNodeTypes {
const nodeTypes = NodeTypes();
// Check which node-types have to be loaded
:art: Set up linting and formatting (#2120) * :arrow_up: Upgrade TS to 4.3.5 * :shirt: Add ESLint configs * :art: Add Prettier config * :package: Add deps and commands * :zap: Adjust global .editorconfig to new ruleset * :fire: Remove unneeded local .editorconfig * :package: Update deps in editor-ui * :hammer: Limit Prettier to only TS files * :zap: Add recommended VSCode extensions * :shirt: Fix build * :fire: Remove Vue setting from global config * :zap: Disable prefer-default-export per feedback * :pencil2: Add forgotten divider * :shirt: Disable no-plusplus * :shirt: Disable class-methods-use-this * :pencil2: Alphabetize overrides * :shirt: Add one-var consecutive override * :rewind: Revert one-var consecutive override This reverts commit b9252cf935659ba6d76727ad484a1d3c00008fcc. * 🎨 👕 Lint and format workflow package (#2121) * :art: Format /workflow package * :shirt: Lint /workflow package * :art: Re-format /workflow package * :shirt: Re-lint /workflow package * :pencil2: Fix typo * :zap: Consolidate if-checks * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format node-dev package (#2122) * :art: Format /node-dev package * :zap: Exclude templates from ESLint config This keeps the templates consistent with the codebase while preventing lint exceptions from being made part of the templates. * :shirt: Lint /node-dev package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * 🎨 👕 Lint and format core package (#2123) * :art: Format /core package * :shirt: Lint /core package * :art: Re-format /core package * :shirt: Re-lint /core package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format cli package (#2124) * :art: Format /cli package * :shirt: Exclude migrations from linting * :shirt: Lint /cli package * :art: Re-format /cli package * :shirt: Re-lint /cli package * :shirt: Fix build * :fire: Remove prefer-default-export exceptions * :zap: Update exceptions in ActiveExecutions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 👕 fix lint issues * :wrench: use package specific linter, remove tslint command * :hammer: resolve build issue, sync dependencies * :wrench: change lint command Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>
2021-08-29 11:58:11 -07:00
// eslint-disable-next-line @typescript-eslint/no-use-before-define
2019-12-19 14:07:55 -08:00
const neededNodeTypes = getNeededNodeTypes(nodes);
// Get all the data of the needed node types that they
// can be loaded again in the process
const returnData: ITransferNodeTypes = {};
for (const nodeTypeName of neededNodeTypes) {
:sparkles: Updated node design and node versioning (#1961) * :zap: introduce versioned nodes * Export versioned nodes for separate process run * Add bse node for versioned nodes * fix node name for versioned nodes * extend node from nodeVersionedType * improve nodes base and flow to FE * revert lib es2019 to es2017 * include version in key to prevent duplicate key * handle type versions on FE * clean up * cleanup nodes base * add type versions in getNodeParameterOptions * cleanup * code review * code review + add default version to node type description * remove node default types from store * :lipstick: cleanups * Draft for migrated Mattermost node * First version of Mattermost node versioned according to node standards * Correcting deactivate operations name to match currently used one * :sparkles: Create utility types * :zap: Simplify Mattermost types * :zap: Rename exports for consistency * :zap: Type channel properties * :zap: Type message properties * :zap: Type reaction properties * :zap: Type user properties * :zap: Add type import to router * :bug: Add missing key * :hammer: Adjust typo in operation name * :hammer: Inline exports for channel properties * :hammer: Inline exports for message properties * :hammer: Inline exports for reaction properties * :hammer: Inline exports for user properties * :hammer: Inline exports for load options * :shirt: Fix lint issue * :hammer: Inline export for description * :hammer: Rename descriptions for clarity * :hammer: Refactor imports/exports for methods * :hammer: Refactor latest version retrieval * :fire: Remove unneeded else clause When the string literal union is exhausted, the resource key becomes never, so TS disallows wrong key usage. * :sparkles: Add overloads to getNodeParameter * :zap: Improve overload * :fire: Remove superfluous INodeVersions type * :hammer: Relocate pre-existing interface * :fire: Remove JSDoc arg descriptions * :zap: Minor reformatting in transport file * :zap: Fix API call function type * Created first draft for Axios requests * Working version of mattermost node with Axios * Work in progress for replacing request library * Improvements to request translations * Fixed sending files via multipart / form-data * Fixing translation from request to axios and loading node parameter options * Improved typing for new http helper * Added ignore any for specific lines for linting * Fixed follow redirects changes on http request node and manual execution of previously existing workflow with older node versions * Adding default headers according to body on httpRequest helper * Spec error handling and fixed workflows with older node versions * Showcase how to export errors in a standard format * Merging master * Refactored mattermost node to keep files in a uniform structure. Also fix bugs with merges * Reverting changes to http request node * Changed nullish comparison and removed repeated code from nodes * Renamed queryString back to qs and simplified node output * Simplified some comparisons * Changed header names to be uc first * Added default user agent to requests and patch http method support * Fixed indentation, remove unnecessary file and console log * Fixed mattermost node name * Fixed lint issues * Further fix linting issues * Further fix lint issues * Fixed http request helper's return type Co-authored-by: ahsan-virani <ahsan.virani@gmail.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
2021-09-21 10:38:24 -07:00
if (nodeTypes.nodeTypes[nodeTypeName.type] === undefined) {
throw new Error(`The NodeType "${nodeTypeName.type}" could not be found!`);
2019-12-19 14:07:55 -08:00
}
:sparkles: Updated node design and node versioning (#1961) * :zap: introduce versioned nodes * Export versioned nodes for separate process run * Add bse node for versioned nodes * fix node name for versioned nodes * extend node from nodeVersionedType * improve nodes base and flow to FE * revert lib es2019 to es2017 * include version in key to prevent duplicate key * handle type versions on FE * clean up * cleanup nodes base * add type versions in getNodeParameterOptions * cleanup * code review * code review + add default version to node type description * remove node default types from store * :lipstick: cleanups * Draft for migrated Mattermost node * First version of Mattermost node versioned according to node standards * Correcting deactivate operations name to match currently used one * :sparkles: Create utility types * :zap: Simplify Mattermost types * :zap: Rename exports for consistency * :zap: Type channel properties * :zap: Type message properties * :zap: Type reaction properties * :zap: Type user properties * :zap: Add type import to router * :bug: Add missing key * :hammer: Adjust typo in operation name * :hammer: Inline exports for channel properties * :hammer: Inline exports for message properties * :hammer: Inline exports for reaction properties * :hammer: Inline exports for user properties * :hammer: Inline exports for load options * :shirt: Fix lint issue * :hammer: Inline export for description * :hammer: Rename descriptions for clarity * :hammer: Refactor imports/exports for methods * :hammer: Refactor latest version retrieval * :fire: Remove unneeded else clause When the string literal union is exhausted, the resource key becomes never, so TS disallows wrong key usage. * :sparkles: Add overloads to getNodeParameter * :zap: Improve overload * :fire: Remove superfluous INodeVersions type * :hammer: Relocate pre-existing interface * :fire: Remove JSDoc arg descriptions * :zap: Minor reformatting in transport file * :zap: Fix API call function type * Created first draft for Axios requests * Working version of mattermost node with Axios * Work in progress for replacing request library * Improvements to request translations * Fixed sending files via multipart / form-data * Fixing translation from request to axios and loading node parameter options * Improved typing for new http helper * Added ignore any for specific lines for linting * Fixed follow redirects changes on http request node and manual execution of previously existing workflow with older node versions * Adding default headers according to body on httpRequest helper * Spec error handling and fixed workflows with older node versions * Showcase how to export errors in a standard format * Merging master * Refactored mattermost node to keep files in a uniform structure. Also fix bugs with merges * Reverting changes to http request node * Changed nullish comparison and removed repeated code from nodes * Renamed queryString back to qs and simplified node output * Simplified some comparisons * Changed header names to be uc first * Added default user agent to requests and patch http method support * Fixed indentation, remove unnecessary file and console log * Fixed mattermost node name * Fixed lint issues * Further fix linting issues * Further fix lint issues * Fixed http request helper's return type Co-authored-by: ahsan-virani <ahsan.virani@gmail.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
2021-09-21 10:38:24 -07:00
returnData[nodeTypeName.type] = {
className: nodeTypes.nodeTypes[nodeTypeName.type].type.constructor.name,
sourcePath: nodeTypes.nodeTypes[nodeTypeName.type].sourcePath,
2019-12-19 14:07:55 -08:00
};
}
return returnData;
}
/**
* Returns the credentials data of the given type and its parent types
* it extends
*
* @export
* @param {string} type The credential type to return data off
* @returns {ICredentialsTypeData}
*/
export function getCredentialsDataWithParents(type: string): ICredentialsTypeData {
const credentialTypes = CredentialTypes();
const credentialType = credentialTypes.getByName(type);
const credentialTypeData: ICredentialsTypeData = {};
:sparkles: Nodes as JSON and authentication redesign (#2401) * :sparkles: change FE to handle new object type * 🚸 improve UX of handling invalid credentials * 🚧 WIP * :art: fix typescript issues * 🐘 add migrations for all supported dbs * ✏️ add description to migrations * :zap: add credential update on import * :zap: resolve after merge issues * :shirt: fix lint issues * :zap: check credentials on workflow create/update * update interface * :shirt: fix ts issues * :zap: adaption to new credentials UI * :bug: intialize cache on BE for credentials check * :bug: fix undefined oldCredentials * :bug: fix deleting credential * :bug: fix check for undefined keys * :bug: fix disabling edit in execution * :art: just show credential name on execution view * ✏️ remove TODO * :zap: implement review suggestions * :zap: add cache to getCredentialsByType * ⏪ use getter instead of cache * ✏️ fix variable name typo * 🐘 include waiting nodes to migrations * :bug: fix reverting migrations command * :zap: update typeorm command * :sparkles: create db:revert command * 👕 fix lint error * :sparkles: Add optional authenticate method to credentials * :zap: Simplify code and add authentication support to MattermostApi * :shirt: Fix lint issue * :zap: Add support to own-mode * :shirt: Fix lint issue * :sparkles: Add support for predefined auth types bearer and headerAuth * :zap: Make sure that DateTime Node always returns strings * :zap: Add support for moment types to If Node * :zap: Make it possible for HTTP Request Node to use all credential types * :sparkles: Add basicAuth support * Add a new dropcontact node * :sparkles: First basic implementation of mainly JSON based nodes * :sparkles: Add fixedCollection support, added value parameter and expression support for value and property * Improvements to #2389 * :zap: Add credentials verification * :zap: Small improvement * :zap: set default time to 45 seconds * :sparkles: Add support for preSend and postReceive methods * :heavy_plus_sign: Add lodash merge and set depedency to workflow * :shirt: Fix lint issue * :zap: Improvements * :zap: Improvements * :zap: Improvements * :zap: Improvements * :zap: Improvements * :bug: Set siren and language correctly * :zap: Add support for requestDefaults * :zap: Add support for baseURL to httpRequest * :zap: Move baseURL to correct location * :sparkles: Add support for options loading * :bug: Fix error with fullAccess nodes * :sparkles: Add credential test functionality * :bug: Fix issue with OAuth autentication and lint issue * :zap: Fix build issue * :bug: Fix issue that url got always overwritten to empty * :sparkles: Add pagination support * :zap: Code fix required after merge * :zap: Remove not needed imports * :zap: Fix credential test * :sparkles: Add expression support for request properties and $self support on properties * :zap: Rename $self to $value * :shirt: Fix lint issue * :zap: Add example how to send data in path * :sparkles: Make it possible to not sent in dot notation * :sparkles: Add support for postReceive:rootProperty * :zap: Fix typo * :sparkles: Add support for postReceive:set * :zap: Some fixes * :zap: Small improvement * ;zap: Separate RoutingNode code * :zap: Simplify code and fix bug * :zap: Remove unused code * :sparkles: Make it possible to define "request" and "requestProperty" on options * :shirt: Fix lint issue * :zap: Change $credentials variables name * :sparkles: Enable expressions and access to credentials in requestDefaults * :zap: Make parameter option loading use RoutingNode.makeRoutingRequest * :sparkles: Allow requestOperations overwrite on LoadOptions * :sparkles: Make it possible to access current node parameters in loadOptions * :zap: Rename parameters variable to make future proof * :zap: Make it possible to use offset-pagination with body * :sparkles: Add support for queryAuth * :zap: Never return more items than requested * :sparkles: Make it possible to overwrite requestOperations on parameter and option level * :shirt: Fix lint issue * :sparkles: Allow simplified auth also with regular nodes * :sparkles: Add support for receiving binary data * :bug: Fix example node * :zap: Rename property "name" to "displayName" in loadOptions * :zap: Send data by default as "query" if nothing is set * :zap: Rename $self to $parent * :zap: Change to work with INodeExecutionData instead of IDataObject * :zap: Improve binaryData handling * :zap: Property design improvements * :zap: Fix property name * :rotating_light: Add some tests * :zap: Add also test for request * :zap: Improve test and fix issues * :zap: Improvements to loadOptions * :zap: Normalize loadOptions with rest of code * :zap: Add info text * :sparkles: Add support for $value in postReceive * :rotating_light: Add tests for RoutingNode.runNode * :zap: Remove TODOs and make url property optional * :zap: Fix bug and lint issue * :bug: Fix bug that not the correct property got used * :rotating_light: Add tests for CredentialsHelper.authenticate * :zap: Improve code and resolve expressions also everywhere for loadOptions and credential test requests * :sparkles: Make it possible to define multiple preSend and postReceive actions * :sparkles: Allow to define tests on credentials * :zap: Remove test data * :arrow_up: Update package-lock.json file * :zap: 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 13:55:43 -08:00
credentialTypeData[type] = {
className: credentialTypes.credentialTypes[type].type.constructor.name,
sourcePath: credentialTypes.credentialTypes[type].sourcePath,
};
if (credentialType === undefined || credentialType.extends === undefined) {
return credentialTypeData;
}
for (const typeName of credentialType.extends) {
if (credentialTypeData[typeName] !== undefined) {
continue;
}
:sparkles: Nodes as JSON and authentication redesign (#2401) * :sparkles: change FE to handle new object type * 🚸 improve UX of handling invalid credentials * 🚧 WIP * :art: fix typescript issues * 🐘 add migrations for all supported dbs * ✏️ add description to migrations * :zap: add credential update on import * :zap: resolve after merge issues * :shirt: fix lint issues * :zap: check credentials on workflow create/update * update interface * :shirt: fix ts issues * :zap: adaption to new credentials UI * :bug: intialize cache on BE for credentials check * :bug: fix undefined oldCredentials * :bug: fix deleting credential * :bug: fix check for undefined keys * :bug: fix disabling edit in execution * :art: just show credential name on execution view * ✏️ remove TODO * :zap: implement review suggestions * :zap: add cache to getCredentialsByType * ⏪ use getter instead of cache * ✏️ fix variable name typo * 🐘 include waiting nodes to migrations * :bug: fix reverting migrations command * :zap: update typeorm command * :sparkles: create db:revert command * 👕 fix lint error * :sparkles: Add optional authenticate method to credentials * :zap: Simplify code and add authentication support to MattermostApi * :shirt: Fix lint issue * :zap: Add support to own-mode * :shirt: Fix lint issue * :sparkles: Add support for predefined auth types bearer and headerAuth * :zap: Make sure that DateTime Node always returns strings * :zap: Add support for moment types to If Node * :zap: Make it possible for HTTP Request Node to use all credential types * :sparkles: Add basicAuth support * Add a new dropcontact node * :sparkles: First basic implementation of mainly JSON based nodes * :sparkles: Add fixedCollection support, added value parameter and expression support for value and property * Improvements to #2389 * :zap: Add credentials verification * :zap: Small improvement * :zap: set default time to 45 seconds * :sparkles: Add support for preSend and postReceive methods * :heavy_plus_sign: Add lodash merge and set depedency to workflow * :shirt: Fix lint issue * :zap: Improvements * :zap: Improvements * :zap: Improvements * :zap: Improvements * :zap: Improvements * :bug: Set siren and language correctly * :zap: Add support for requestDefaults * :zap: Add support for baseURL to httpRequest * :zap: Move baseURL to correct location * :sparkles: Add support for options loading * :bug: Fix error with fullAccess nodes * :sparkles: Add credential test functionality * :bug: Fix issue with OAuth autentication and lint issue * :zap: Fix build issue * :bug: Fix issue that url got always overwritten to empty * :sparkles: Add pagination support * :zap: Code fix required after merge * :zap: Remove not needed imports * :zap: Fix credential test * :sparkles: Add expression support for request properties and $self support on properties * :zap: Rename $self to $value * :shirt: Fix lint issue * :zap: Add example how to send data in path * :sparkles: Make it possible to not sent in dot notation * :sparkles: Add support for postReceive:rootProperty * :zap: Fix typo * :sparkles: Add support for postReceive:set * :zap: Some fixes * :zap: Small improvement * ;zap: Separate RoutingNode code * :zap: Simplify code and fix bug * :zap: Remove unused code * :sparkles: Make it possible to define "request" and "requestProperty" on options * :shirt: Fix lint issue * :zap: Change $credentials variables name * :sparkles: Enable expressions and access to credentials in requestDefaults * :zap: Make parameter option loading use RoutingNode.makeRoutingRequest * :sparkles: Allow requestOperations overwrite on LoadOptions * :sparkles: Make it possible to access current node parameters in loadOptions * :zap: Rename parameters variable to make future proof * :zap: Make it possible to use offset-pagination with body * :sparkles: Add support for queryAuth * :zap: Never return more items than requested * :sparkles: Make it possible to overwrite requestOperations on parameter and option level * :shirt: Fix lint issue * :sparkles: Allow simplified auth also with regular nodes * :sparkles: Add support for receiving binary data * :bug: Fix example node * :zap: Rename property "name" to "displayName" in loadOptions * :zap: Send data by default as "query" if nothing is set * :zap: Rename $self to $parent * :zap: Change to work with INodeExecutionData instead of IDataObject * :zap: Improve binaryData handling * :zap: Property design improvements * :zap: Fix property name * :rotating_light: Add some tests * :zap: Add also test for request * :zap: Improve test and fix issues * :zap: Improvements to loadOptions * :zap: Normalize loadOptions with rest of code * :zap: Add info text * :sparkles: Add support for $value in postReceive * :rotating_light: Add tests for RoutingNode.runNode * :zap: Remove TODOs and make url property optional * :zap: Fix bug and lint issue * :bug: Fix bug that not the correct property got used * :rotating_light: Add tests for CredentialsHelper.authenticate * :zap: Improve code and resolve expressions also everywhere for loadOptions and credential test requests * :sparkles: Make it possible to define multiple preSend and postReceive actions * :sparkles: Allow to define tests on credentials * :zap: Remove test data * :arrow_up: Update package-lock.json file * :zap: 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 13:55:43 -08:00
credentialTypeData[typeName] = {
className: credentialTypes.credentialTypes[typeName].type.constructor.name,
sourcePath: credentialTypes.credentialTypes[typeName].sourcePath,
};
Object.assign(credentialTypeData, getCredentialsDataWithParents(typeName));
}
return credentialTypeData;
}
/**
* Returns all the credentialTypes which are needed to resolve
* the given workflow credentials
*
* @export
* @param {IWorkflowCredentials} credentials The credentials which have to be able to be resolved
* @returns {ICredentialsTypeData}
*/
export function getCredentialsDataByNodes(nodes: INode[]): ICredentialsTypeData {
const credentialTypeData: ICredentialsTypeData = {};
for (const node of nodes) {
const credentialsUsedByThisNode = node.credentials;
if (credentialsUsedByThisNode) {
// const credentialTypesUsedByThisNode = Object.keys(credentialsUsedByThisNode!);
:art: Set up linting and formatting (#2120) * :arrow_up: Upgrade TS to 4.3.5 * :shirt: Add ESLint configs * :art: Add Prettier config * :package: Add deps and commands * :zap: Adjust global .editorconfig to new ruleset * :fire: Remove unneeded local .editorconfig * :package: Update deps in editor-ui * :hammer: Limit Prettier to only TS files * :zap: Add recommended VSCode extensions * :shirt: Fix build * :fire: Remove Vue setting from global config * :zap: Disable prefer-default-export per feedback * :pencil2: Add forgotten divider * :shirt: Disable no-plusplus * :shirt: Disable class-methods-use-this * :pencil2: Alphabetize overrides * :shirt: Add one-var consecutive override * :rewind: Revert one-var consecutive override This reverts commit b9252cf935659ba6d76727ad484a1d3c00008fcc. * 🎨 👕 Lint and format workflow package (#2121) * :art: Format /workflow package * :shirt: Lint /workflow package * :art: Re-format /workflow package * :shirt: Re-lint /workflow package * :pencil2: Fix typo * :zap: Consolidate if-checks * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format node-dev package (#2122) * :art: Format /node-dev package * :zap: Exclude templates from ESLint config This keeps the templates consistent with the codebase while preventing lint exceptions from being made part of the templates. * :shirt: Lint /node-dev package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * 🎨 👕 Lint and format core package (#2123) * :art: Format /core package * :shirt: Lint /core package * :art: Re-format /core package * :shirt: Re-lint /core package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format cli package (#2124) * :art: Format /cli package * :shirt: Exclude migrations from linting * :shirt: Lint /cli package * :art: Re-format /cli package * :shirt: Re-lint /cli package * :shirt: Fix build * :fire: Remove prefer-default-export exceptions * :zap: Update exceptions in ActiveExecutions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 👕 fix lint issues * :wrench: use package specific linter, remove tslint command * :hammer: resolve build issue, sync dependencies * :wrench: change lint command Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>
2021-08-29 11:58:11 -07:00
for (const credentialType of Object.keys(credentialsUsedByThisNode)) {
if (credentialTypeData[credentialType] !== undefined) {
continue;
}
Object.assign(credentialTypeData, getCredentialsDataWithParents(credentialType));
}
}
}
return credentialTypeData;
}
2019-12-19 14:07:55 -08:00
/**
* Returns the names of the NodeTypes which are are needed
* to execute the gives nodes
*
* @export
* @param {INode[]} nodes
* @returns {string[]}
*/
:sparkles: Updated node design and node versioning (#1961) * :zap: introduce versioned nodes * Export versioned nodes for separate process run * Add bse node for versioned nodes * fix node name for versioned nodes * extend node from nodeVersionedType * improve nodes base and flow to FE * revert lib es2019 to es2017 * include version in key to prevent duplicate key * handle type versions on FE * clean up * cleanup nodes base * add type versions in getNodeParameterOptions * cleanup * code review * code review + add default version to node type description * remove node default types from store * :lipstick: cleanups * Draft for migrated Mattermost node * First version of Mattermost node versioned according to node standards * Correcting deactivate operations name to match currently used one * :sparkles: Create utility types * :zap: Simplify Mattermost types * :zap: Rename exports for consistency * :zap: Type channel properties * :zap: Type message properties * :zap: Type reaction properties * :zap: Type user properties * :zap: Add type import to router * :bug: Add missing key * :hammer: Adjust typo in operation name * :hammer: Inline exports for channel properties * :hammer: Inline exports for message properties * :hammer: Inline exports for reaction properties * :hammer: Inline exports for user properties * :hammer: Inline exports for load options * :shirt: Fix lint issue * :hammer: Inline export for description * :hammer: Rename descriptions for clarity * :hammer: Refactor imports/exports for methods * :hammer: Refactor latest version retrieval * :fire: Remove unneeded else clause When the string literal union is exhausted, the resource key becomes never, so TS disallows wrong key usage. * :sparkles: Add overloads to getNodeParameter * :zap: Improve overload * :fire: Remove superfluous INodeVersions type * :hammer: Relocate pre-existing interface * :fire: Remove JSDoc arg descriptions * :zap: Minor reformatting in transport file * :zap: Fix API call function type * Created first draft for Axios requests * Working version of mattermost node with Axios * Work in progress for replacing request library * Improvements to request translations * Fixed sending files via multipart / form-data * Fixing translation from request to axios and loading node parameter options * Improved typing for new http helper * Added ignore any for specific lines for linting * Fixed follow redirects changes on http request node and manual execution of previously existing workflow with older node versions * Adding default headers according to body on httpRequest helper * Spec error handling and fixed workflows with older node versions * Showcase how to export errors in a standard format * Merging master * Refactored mattermost node to keep files in a uniform structure. Also fix bugs with merges * Reverting changes to http request node * Changed nullish comparison and removed repeated code from nodes * Renamed queryString back to qs and simplified node output * Simplified some comparisons * Changed header names to be uc first * Added default user agent to requests and patch http method support * Fixed indentation, remove unnecessary file and console log * Fixed mattermost node name * Fixed lint issues * Further fix linting issues * Further fix lint issues * Fixed http request helper's return type Co-authored-by: ahsan-virani <ahsan.virani@gmail.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
2021-09-21 10:38:24 -07:00
export function getNeededNodeTypes(nodes: INode[]): Array<{ type: string; version: number }> {
2019-12-19 14:07:55 -08:00
// Check which node-types have to be loaded
:sparkles: Updated node design and node versioning (#1961) * :zap: introduce versioned nodes * Export versioned nodes for separate process run * Add bse node for versioned nodes * fix node name for versioned nodes * extend node from nodeVersionedType * improve nodes base and flow to FE * revert lib es2019 to es2017 * include version in key to prevent duplicate key * handle type versions on FE * clean up * cleanup nodes base * add type versions in getNodeParameterOptions * cleanup * code review * code review + add default version to node type description * remove node default types from store * :lipstick: cleanups * Draft for migrated Mattermost node * First version of Mattermost node versioned according to node standards * Correcting deactivate operations name to match currently used one * :sparkles: Create utility types * :zap: Simplify Mattermost types * :zap: Rename exports for consistency * :zap: Type channel properties * :zap: Type message properties * :zap: Type reaction properties * :zap: Type user properties * :zap: Add type import to router * :bug: Add missing key * :hammer: Adjust typo in operation name * :hammer: Inline exports for channel properties * :hammer: Inline exports for message properties * :hammer: Inline exports for reaction properties * :hammer: Inline exports for user properties * :hammer: Inline exports for load options * :shirt: Fix lint issue * :hammer: Inline export for description * :hammer: Rename descriptions for clarity * :hammer: Refactor imports/exports for methods * :hammer: Refactor latest version retrieval * :fire: Remove unneeded else clause When the string literal union is exhausted, the resource key becomes never, so TS disallows wrong key usage. * :sparkles: Add overloads to getNodeParameter * :zap: Improve overload * :fire: Remove superfluous INodeVersions type * :hammer: Relocate pre-existing interface * :fire: Remove JSDoc arg descriptions * :zap: Minor reformatting in transport file * :zap: Fix API call function type * Created first draft for Axios requests * Working version of mattermost node with Axios * Work in progress for replacing request library * Improvements to request translations * Fixed sending files via multipart / form-data * Fixing translation from request to axios and loading node parameter options * Improved typing for new http helper * Added ignore any for specific lines for linting * Fixed follow redirects changes on http request node and manual execution of previously existing workflow with older node versions * Adding default headers according to body on httpRequest helper * Spec error handling and fixed workflows with older node versions * Showcase how to export errors in a standard format * Merging master * Refactored mattermost node to keep files in a uniform structure. Also fix bugs with merges * Reverting changes to http request node * Changed nullish comparison and removed repeated code from nodes * Renamed queryString back to qs and simplified node output * Simplified some comparisons * Changed header names to be uc first * Added default user agent to requests and patch http method support * Fixed indentation, remove unnecessary file and console log * Fixed mattermost node name * Fixed lint issues * Further fix linting issues * Further fix lint issues * Fixed http request helper's return type Co-authored-by: ahsan-virani <ahsan.virani@gmail.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
2021-09-21 10:38:24 -07:00
const neededNodeTypes: Array<{ type: string; version: number }> = [];
2019-12-19 14:07:55 -08:00
for (const node of nodes) {
:sparkles: Updated node design and node versioning (#1961) * :zap: introduce versioned nodes * Export versioned nodes for separate process run * Add bse node for versioned nodes * fix node name for versioned nodes * extend node from nodeVersionedType * improve nodes base and flow to FE * revert lib es2019 to es2017 * include version in key to prevent duplicate key * handle type versions on FE * clean up * cleanup nodes base * add type versions in getNodeParameterOptions * cleanup * code review * code review + add default version to node type description * remove node default types from store * :lipstick: cleanups * Draft for migrated Mattermost node * First version of Mattermost node versioned according to node standards * Correcting deactivate operations name to match currently used one * :sparkles: Create utility types * :zap: Simplify Mattermost types * :zap: Rename exports for consistency * :zap: Type channel properties * :zap: Type message properties * :zap: Type reaction properties * :zap: Type user properties * :zap: Add type import to router * :bug: Add missing key * :hammer: Adjust typo in operation name * :hammer: Inline exports for channel properties * :hammer: Inline exports for message properties * :hammer: Inline exports for reaction properties * :hammer: Inline exports for user properties * :hammer: Inline exports for load options * :shirt: Fix lint issue * :hammer: Inline export for description * :hammer: Rename descriptions for clarity * :hammer: Refactor imports/exports for methods * :hammer: Refactor latest version retrieval * :fire: Remove unneeded else clause When the string literal union is exhausted, the resource key becomes never, so TS disallows wrong key usage. * :sparkles: Add overloads to getNodeParameter * :zap: Improve overload * :fire: Remove superfluous INodeVersions type * :hammer: Relocate pre-existing interface * :fire: Remove JSDoc arg descriptions * :zap: Minor reformatting in transport file * :zap: Fix API call function type * Created first draft for Axios requests * Working version of mattermost node with Axios * Work in progress for replacing request library * Improvements to request translations * Fixed sending files via multipart / form-data * Fixing translation from request to axios and loading node parameter options * Improved typing for new http helper * Added ignore any for specific lines for linting * Fixed follow redirects changes on http request node and manual execution of previously existing workflow with older node versions * Adding default headers according to body on httpRequest helper * Spec error handling and fixed workflows with older node versions * Showcase how to export errors in a standard format * Merging master * Refactored mattermost node to keep files in a uniform structure. Also fix bugs with merges * Reverting changes to http request node * Changed nullish comparison and removed repeated code from nodes * Renamed queryString back to qs and simplified node output * Simplified some comparisons * Changed header names to be uc first * Added default user agent to requests and patch http method support * Fixed indentation, remove unnecessary file and console log * Fixed mattermost node name * Fixed lint issues * Further fix linting issues * Further fix lint issues * Fixed http request helper's return type Co-authored-by: ahsan-virani <ahsan.virani@gmail.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
2021-09-21 10:38:24 -07:00
if (neededNodeTypes.find((neededNodes) => node.type === neededNodes.type) === undefined) {
neededNodeTypes.push({ type: node.type, version: node.typeVersion });
2019-12-19 14:07:55 -08:00
}
}
return neededNodeTypes;
}
2019-06-23 03:35:23 -07:00
/**
* Saves the static data if it changed
*
* @export
* @param {Workflow} workflow
* @returns {Promise <void>}
*/
:art: Set up linting and formatting (#2120) * :arrow_up: Upgrade TS to 4.3.5 * :shirt: Add ESLint configs * :art: Add Prettier config * :package: Add deps and commands * :zap: Adjust global .editorconfig to new ruleset * :fire: Remove unneeded local .editorconfig * :package: Update deps in editor-ui * :hammer: Limit Prettier to only TS files * :zap: Add recommended VSCode extensions * :shirt: Fix build * :fire: Remove Vue setting from global config * :zap: Disable prefer-default-export per feedback * :pencil2: Add forgotten divider * :shirt: Disable no-plusplus * :shirt: Disable class-methods-use-this * :pencil2: Alphabetize overrides * :shirt: Add one-var consecutive override * :rewind: Revert one-var consecutive override This reverts commit b9252cf935659ba6d76727ad484a1d3c00008fcc. * 🎨 👕 Lint and format workflow package (#2121) * :art: Format /workflow package * :shirt: Lint /workflow package * :art: Re-format /workflow package * :shirt: Re-lint /workflow package * :pencil2: Fix typo * :zap: Consolidate if-checks * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format node-dev package (#2122) * :art: Format /node-dev package * :zap: Exclude templates from ESLint config This keeps the templates consistent with the codebase while preventing lint exceptions from being made part of the templates. * :shirt: Lint /node-dev package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * 🎨 👕 Lint and format core package (#2123) * :art: Format /core package * :shirt: Lint /core package * :art: Re-format /core package * :shirt: Re-lint /core package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format cli package (#2124) * :art: Format /cli package * :shirt: Exclude migrations from linting * :shirt: Lint /cli package * :art: Re-format /cli package * :shirt: Re-lint /cli package * :shirt: Fix build * :fire: Remove prefer-default-export exceptions * :zap: Update exceptions in ActiveExecutions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 👕 fix lint issues * :wrench: use package specific linter, remove tslint command * :hammer: resolve build issue, sync dependencies * :wrench: change lint command Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>
2021-08-29 11:58:11 -07:00
export async function saveStaticData(workflow: Workflow): Promise<void> {
2019-06-23 03:35:23 -07:00
if (workflow.staticData.__dataChanged === true) {
// Static data of workflow changed and so has to be saved
:art: Set up linting and formatting (#2120) * :arrow_up: Upgrade TS to 4.3.5 * :shirt: Add ESLint configs * :art: Add Prettier config * :package: Add deps and commands * :zap: Adjust global .editorconfig to new ruleset * :fire: Remove unneeded local .editorconfig * :package: Update deps in editor-ui * :hammer: Limit Prettier to only TS files * :zap: Add recommended VSCode extensions * :shirt: Fix build * :fire: Remove Vue setting from global config * :zap: Disable prefer-default-export per feedback * :pencil2: Add forgotten divider * :shirt: Disable no-plusplus * :shirt: Disable class-methods-use-this * :pencil2: Alphabetize overrides * :shirt: Add one-var consecutive override * :rewind: Revert one-var consecutive override This reverts commit b9252cf935659ba6d76727ad484a1d3c00008fcc. * 🎨 👕 Lint and format workflow package (#2121) * :art: Format /workflow package * :shirt: Lint /workflow package * :art: Re-format /workflow package * :shirt: Re-lint /workflow package * :pencil2: Fix typo * :zap: Consolidate if-checks * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format node-dev package (#2122) * :art: Format /node-dev package * :zap: Exclude templates from ESLint config This keeps the templates consistent with the codebase while preventing lint exceptions from being made part of the templates. * :shirt: Lint /node-dev package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * 🎨 👕 Lint and format core package (#2123) * :art: Format /core package * :shirt: Lint /core package * :art: Re-format /core package * :shirt: Re-lint /core package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format cli package (#2124) * :art: Format /cli package * :shirt: Exclude migrations from linting * :shirt: Lint /cli package * :art: Re-format /cli package * :shirt: Re-lint /cli package * :shirt: Fix build * :fire: Remove prefer-default-export exceptions * :zap: Update exceptions in ActiveExecutions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 👕 fix lint issues * :wrench: use package specific linter, remove tslint command * :hammer: resolve build issue, sync dependencies * :wrench: change lint command Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>
2021-08-29 11:58:11 -07:00
if (isWorkflowIdValid(workflow.id)) {
2019-06-23 03:35:23 -07:00
// Workflow is saved so update in database
try {
:art: Set up linting and formatting (#2120) * :arrow_up: Upgrade TS to 4.3.5 * :shirt: Add ESLint configs * :art: Add Prettier config * :package: Add deps and commands * :zap: Adjust global .editorconfig to new ruleset * :fire: Remove unneeded local .editorconfig * :package: Update deps in editor-ui * :hammer: Limit Prettier to only TS files * :zap: Add recommended VSCode extensions * :shirt: Fix build * :fire: Remove Vue setting from global config * :zap: Disable prefer-default-export per feedback * :pencil2: Add forgotten divider * :shirt: Disable no-plusplus * :shirt: Disable class-methods-use-this * :pencil2: Alphabetize overrides * :shirt: Add one-var consecutive override * :rewind: Revert one-var consecutive override This reverts commit b9252cf935659ba6d76727ad484a1d3c00008fcc. * 🎨 👕 Lint and format workflow package (#2121) * :art: Format /workflow package * :shirt: Lint /workflow package * :art: Re-format /workflow package * :shirt: Re-lint /workflow package * :pencil2: Fix typo * :zap: Consolidate if-checks * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format node-dev package (#2122) * :art: Format /node-dev package * :zap: Exclude templates from ESLint config This keeps the templates consistent with the codebase while preventing lint exceptions from being made part of the templates. * :shirt: Lint /node-dev package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * 🎨 👕 Lint and format core package (#2123) * :art: Format /core package * :shirt: Lint /core package * :art: Re-format /core package * :shirt: Re-lint /core package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format cli package (#2124) * :art: Format /cli package * :shirt: Exclude migrations from linting * :shirt: Lint /cli package * :art: Re-format /cli package * :shirt: Re-lint /cli package * :shirt: Fix build * :fire: Remove prefer-default-export exceptions * :zap: Update exceptions in ActiveExecutions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 👕 fix lint issues * :wrench: use package specific linter, remove tslint command * :hammer: resolve build issue, sync dependencies * :wrench: change lint command Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>
2021-08-29 11:58:11 -07:00
// eslint-disable-next-line @typescript-eslint/no-use-before-define
await saveStaticDataById(workflow.id!, workflow.staticData);
2019-06-23 03:35:23 -07:00
workflow.staticData.__dataChanged = false;
} catch (e) {
:art: Set up linting and formatting (#2120) * :arrow_up: Upgrade TS to 4.3.5 * :shirt: Add ESLint configs * :art: Add Prettier config * :package: Add deps and commands * :zap: Adjust global .editorconfig to new ruleset * :fire: Remove unneeded local .editorconfig * :package: Update deps in editor-ui * :hammer: Limit Prettier to only TS files * :zap: Add recommended VSCode extensions * :shirt: Fix build * :fire: Remove Vue setting from global config * :zap: Disable prefer-default-export per feedback * :pencil2: Add forgotten divider * :shirt: Disable no-plusplus * :shirt: Disable class-methods-use-this * :pencil2: Alphabetize overrides * :shirt: Add one-var consecutive override * :rewind: Revert one-var consecutive override This reverts commit b9252cf935659ba6d76727ad484a1d3c00008fcc. * 🎨 👕 Lint and format workflow package (#2121) * :art: Format /workflow package * :shirt: Lint /workflow package * :art: Re-format /workflow package * :shirt: Re-lint /workflow package * :pencil2: Fix typo * :zap: Consolidate if-checks * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format node-dev package (#2122) * :art: Format /node-dev package * :zap: Exclude templates from ESLint config This keeps the templates consistent with the codebase while preventing lint exceptions from being made part of the templates. * :shirt: Lint /node-dev package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * 🎨 👕 Lint and format core package (#2123) * :art: Format /core package * :shirt: Lint /core package * :art: Re-format /core package * :shirt: Re-lint /core package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format cli package (#2124) * :art: Format /cli package * :shirt: Exclude migrations from linting * :shirt: Lint /cli package * :art: Re-format /cli package * :shirt: Re-lint /cli package * :shirt: Fix build * :fire: Remove prefer-default-export exceptions * :zap: Update exceptions in ActiveExecutions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 👕 fix lint issues * :wrench: use package specific linter, remove tslint command * :hammer: resolve build issue, sync dependencies * :wrench: change lint command Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>
2021-08-29 11:58:11 -07:00
Logger.error(
`There was a problem saving the workflow with id "${workflow.id}" to save changed staticData: "${e.message}"`,
{ workflowId: workflow.id },
);
2019-06-23 03:35:23 -07:00
}
}
}
}
/**
* Saves the given static data on workflow
*
* @export
* @param {(string | number)} workflowId The id of the workflow to save data on
* @param {IDataObject} newStaticData The static data to save
* @returns {Promise<void>}
*/
:art: Set up linting and formatting (#2120) * :arrow_up: Upgrade TS to 4.3.5 * :shirt: Add ESLint configs * :art: Add Prettier config * :package: Add deps and commands * :zap: Adjust global .editorconfig to new ruleset * :fire: Remove unneeded local .editorconfig * :package: Update deps in editor-ui * :hammer: Limit Prettier to only TS files * :zap: Add recommended VSCode extensions * :shirt: Fix build * :fire: Remove Vue setting from global config * :zap: Disable prefer-default-export per feedback * :pencil2: Add forgotten divider * :shirt: Disable no-plusplus * :shirt: Disable class-methods-use-this * :pencil2: Alphabetize overrides * :shirt: Add one-var consecutive override * :rewind: Revert one-var consecutive override This reverts commit b9252cf935659ba6d76727ad484a1d3c00008fcc. * 🎨 👕 Lint and format workflow package (#2121) * :art: Format /workflow package * :shirt: Lint /workflow package * :art: Re-format /workflow package * :shirt: Re-lint /workflow package * :pencil2: Fix typo * :zap: Consolidate if-checks * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format node-dev package (#2122) * :art: Format /node-dev package * :zap: Exclude templates from ESLint config This keeps the templates consistent with the codebase while preventing lint exceptions from being made part of the templates. * :shirt: Lint /node-dev package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * 🎨 👕 Lint and format core package (#2123) * :art: Format /core package * :shirt: Lint /core package * :art: Re-format /core package * :shirt: Re-lint /core package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format cli package (#2124) * :art: Format /cli package * :shirt: Exclude migrations from linting * :shirt: Lint /cli package * :art: Re-format /cli package * :shirt: Re-lint /cli package * :shirt: Fix build * :fire: Remove prefer-default-export exceptions * :zap: Update exceptions in ActiveExecutions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 👕 fix lint issues * :wrench: use package specific linter, remove tslint command * :hammer: resolve build issue, sync dependencies * :wrench: change lint command Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>
2021-08-29 11:58:11 -07:00
export async function saveStaticDataById(
workflowId: string | number,
newStaticData: IDataObject,
): Promise<void> {
await Db.collections.Workflow.update(workflowId, {
:art: Set up linting and formatting (#2120) * :arrow_up: Upgrade TS to 4.3.5 * :shirt: Add ESLint configs * :art: Add Prettier config * :package: Add deps and commands * :zap: Adjust global .editorconfig to new ruleset * :fire: Remove unneeded local .editorconfig * :package: Update deps in editor-ui * :hammer: Limit Prettier to only TS files * :zap: Add recommended VSCode extensions * :shirt: Fix build * :fire: Remove Vue setting from global config * :zap: Disable prefer-default-export per feedback * :pencil2: Add forgotten divider * :shirt: Disable no-plusplus * :shirt: Disable class-methods-use-this * :pencil2: Alphabetize overrides * :shirt: Add one-var consecutive override * :rewind: Revert one-var consecutive override This reverts commit b9252cf935659ba6d76727ad484a1d3c00008fcc. * 🎨 👕 Lint and format workflow package (#2121) * :art: Format /workflow package * :shirt: Lint /workflow package * :art: Re-format /workflow package * :shirt: Re-lint /workflow package * :pencil2: Fix typo * :zap: Consolidate if-checks * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format node-dev package (#2122) * :art: Format /node-dev package * :zap: Exclude templates from ESLint config This keeps the templates consistent with the codebase while preventing lint exceptions from being made part of the templates. * :shirt: Lint /node-dev package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * 🎨 👕 Lint and format core package (#2123) * :art: Format /core package * :shirt: Lint /core package * :art: Re-format /core package * :shirt: Re-lint /core package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format cli package (#2124) * :art: Format /cli package * :shirt: Exclude migrations from linting * :shirt: Lint /cli package * :art: Re-format /cli package * :shirt: Re-lint /cli package * :shirt: Fix build * :fire: Remove prefer-default-export exceptions * :zap: Update exceptions in ActiveExecutions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 👕 fix lint issues * :wrench: use package specific linter, remove tslint command * :hammer: resolve build issue, sync dependencies * :wrench: change lint command Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>
2021-08-29 11:58:11 -07:00
staticData: newStaticData,
});
}
/**
* Returns the static data of workflow
*
* @export
* @param {(string | number)} workflowId The id of the workflow to get static data of
* @returns
*/
:art: Set up linting and formatting (#2120) * :arrow_up: Upgrade TS to 4.3.5 * :shirt: Add ESLint configs * :art: Add Prettier config * :package: Add deps and commands * :zap: Adjust global .editorconfig to new ruleset * :fire: Remove unneeded local .editorconfig * :package: Update deps in editor-ui * :hammer: Limit Prettier to only TS files * :zap: Add recommended VSCode extensions * :shirt: Fix build * :fire: Remove Vue setting from global config * :zap: Disable prefer-default-export per feedback * :pencil2: Add forgotten divider * :shirt: Disable no-plusplus * :shirt: Disable class-methods-use-this * :pencil2: Alphabetize overrides * :shirt: Add one-var consecutive override * :rewind: Revert one-var consecutive override This reverts commit b9252cf935659ba6d76727ad484a1d3c00008fcc. * 🎨 👕 Lint and format workflow package (#2121) * :art: Format /workflow package * :shirt: Lint /workflow package * :art: Re-format /workflow package * :shirt: Re-lint /workflow package * :pencil2: Fix typo * :zap: Consolidate if-checks * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format node-dev package (#2122) * :art: Format /node-dev package * :zap: Exclude templates from ESLint config This keeps the templates consistent with the codebase while preventing lint exceptions from being made part of the templates. * :shirt: Lint /node-dev package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * 🎨 👕 Lint and format core package (#2123) * :art: Format /core package * :shirt: Lint /core package * :art: Re-format /core package * :shirt: Re-lint /core package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format cli package (#2124) * :art: Format /cli package * :shirt: Exclude migrations from linting * :shirt: Lint /cli package * :art: Re-format /cli package * :shirt: Re-lint /cli package * :shirt: Fix build * :fire: Remove prefer-default-export exceptions * :zap: Update exceptions in ActiveExecutions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 👕 fix lint issues * :wrench: use package specific linter, remove tslint command * :hammer: resolve build issue, sync dependencies * :wrench: change lint command Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>
2021-08-29 11:58:11 -07:00
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
export async function getStaticDataById(workflowId: string | number) {
const workflowData = await Db.collections.Workflow.findOne(workflowId, {
:art: Set up linting and formatting (#2120) * :arrow_up: Upgrade TS to 4.3.5 * :shirt: Add ESLint configs * :art: Add Prettier config * :package: Add deps and commands * :zap: Adjust global .editorconfig to new ruleset * :fire: Remove unneeded local .editorconfig * :package: Update deps in editor-ui * :hammer: Limit Prettier to only TS files * :zap: Add recommended VSCode extensions * :shirt: Fix build * :fire: Remove Vue setting from global config * :zap: Disable prefer-default-export per feedback * :pencil2: Add forgotten divider * :shirt: Disable no-plusplus * :shirt: Disable class-methods-use-this * :pencil2: Alphabetize overrides * :shirt: Add one-var consecutive override * :rewind: Revert one-var consecutive override This reverts commit b9252cf935659ba6d76727ad484a1d3c00008fcc. * 🎨 👕 Lint and format workflow package (#2121) * :art: Format /workflow package * :shirt: Lint /workflow package * :art: Re-format /workflow package * :shirt: Re-lint /workflow package * :pencil2: Fix typo * :zap: Consolidate if-checks * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format node-dev package (#2122) * :art: Format /node-dev package * :zap: Exclude templates from ESLint config This keeps the templates consistent with the codebase while preventing lint exceptions from being made part of the templates. * :shirt: Lint /node-dev package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * 🎨 👕 Lint and format core package (#2123) * :art: Format /core package * :shirt: Lint /core package * :art: Re-format /core package * :shirt: Re-lint /core package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format cli package (#2124) * :art: Format /cli package * :shirt: Exclude migrations from linting * :shirt: Lint /cli package * :art: Re-format /cli package * :shirt: Re-lint /cli package * :shirt: Fix build * :fire: Remove prefer-default-export exceptions * :zap: Update exceptions in ActiveExecutions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 👕 fix lint issues * :wrench: use package specific linter, remove tslint command * :hammer: resolve build issue, sync dependencies * :wrench: change lint command Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>
2021-08-29 11:58:11 -07:00
select: ['staticData'],
});
if (workflowData === undefined) {
return {};
}
:art: Set up linting and formatting (#2120) * :arrow_up: Upgrade TS to 4.3.5 * :shirt: Add ESLint configs * :art: Add Prettier config * :package: Add deps and commands * :zap: Adjust global .editorconfig to new ruleset * :fire: Remove unneeded local .editorconfig * :package: Update deps in editor-ui * :hammer: Limit Prettier to only TS files * :zap: Add recommended VSCode extensions * :shirt: Fix build * :fire: Remove Vue setting from global config * :zap: Disable prefer-default-export per feedback * :pencil2: Add forgotten divider * :shirt: Disable no-plusplus * :shirt: Disable class-methods-use-this * :pencil2: Alphabetize overrides * :shirt: Add one-var consecutive override * :rewind: Revert one-var consecutive override This reverts commit b9252cf935659ba6d76727ad484a1d3c00008fcc. * 🎨 👕 Lint and format workflow package (#2121) * :art: Format /workflow package * :shirt: Lint /workflow package * :art: Re-format /workflow package * :shirt: Re-lint /workflow package * :pencil2: Fix typo * :zap: Consolidate if-checks * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format node-dev package (#2122) * :art: Format /node-dev package * :zap: Exclude templates from ESLint config This keeps the templates consistent with the codebase while preventing lint exceptions from being made part of the templates. * :shirt: Lint /node-dev package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * 🎨 👕 Lint and format core package (#2123) * :art: Format /core package * :shirt: Lint /core package * :art: Re-format /core package * :shirt: Re-lint /core package * :fire: Remove prefer-default-export exceptions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 🎨 👕 Lint and format cli package (#2124) * :art: Format /cli package * :shirt: Exclude migrations from linting * :shirt: Lint /cli package * :art: Re-format /cli package * :shirt: Re-lint /cli package * :shirt: Fix build * :fire: Remove prefer-default-export exceptions * :zap: Update exceptions in ActiveExecutions * :fire: Remove no-plusplus exceptions * :fire: Remove class-methods-use-this exceptions * 👕 fix lint issues * :wrench: use package specific linter, remove tslint command * :hammer: resolve build issue, sync dependencies * :wrench: change lint command Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>
2021-08-29 11:58:11 -07:00
// eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
return workflowData.staticData || {};
}
:sparkles: Add tagging of workflows (#1647) * clean up dropdown * clean up focusoncreate * :zap: Ignore mistaken ID in POST /workflows * :zap: Fix undefined tag ID in PATCH /workflows * :zap: Shorten response for POST /tags * remove scss mixins * clean up imports * :zap: Implement validation with class-validator * address ivan's comments * implement modals * Fix lint issues * fix disabling shortcuts * fix focus issues * fix focus issues * fix focus issues with modal * fix linting issues * use dispatch * use constants for modal keys * fix focus * fix lint issues * remove unused prop * add modal root * fix lint issues * remove unused methods * fix shortcut * remove max width * :zap: Fix duplicate entry error for pg and MySQL * update rename messaging * update order of buttons * fix firefox overflow on windows * fix dropdown height * :hammer: refactor tag crud controllers * 🧹 remove unused imports * use variable for number of items * fix dropdown spacing * :zap: Restore type to fix build * :zap: Fix post-refactor PATCH /workflows/:id * :zap: Fix PATCH /workflows/:id for zero tags * :zap: Fix usage count becoming stringified * address max's comments * fix filter spacing * fix blur bug * address most of ivan's comments * address tags type concern * remove defaults * :zap: return tag id as string * :hammer: add hooks to tag CUD operations * 🏎 simplify timestamp pruning * remove blur event * fix onblur bug * :zap: Fix fs import to fix build * address max's comments * implement responsive tag container * fix lint issues * Set default dates in entities * :shirt: Fix lint in migrations * update tag limits * address ivan's comments * remove rename, refactor header, implement new designs for save, remove responsive tag container * update styling * update styling * implement responsive tag container * implement header tags edit * implement header tags edit * fix lint issues * implement expandable input * minor fixes * minor fixes * use variable * rename save as * duplicate fixes * :zap: Implement unique workflow names * :zap: Create /workflows/new endpoint * minor edit fixes * lint fixes * style fixes * hook up saving name * hook up tags * clean up impl * fix dirty state bug * update limit * update notification messages * on click outside * fix minor bug with count * lint fixes * :zap: Add query string params to /workflows/new * handle minor edge cases * handle minor edge cases * handle minor bugs; fix firefox dropdown issue * Fix min width * apply tags only after api success * remove count fix * :construction: Adjust to new qs requirements * clean up workflow tags impl, fix tags delete bug * fix minor issue * fix minor spacing issue * disable wrap for ops * fix viewport root; save on click in dropdown * save button loading when saving name/tags * implement max width on tags container * implement cleaner create experience * disable edit while updating * codacy hex color * refactor tags container * fix clickability * fix workflow open and count * clean up structure * fix up lint issues * :zap: Create migrations for unique workflow names * fix button size * increase workflow name limit for larger screen * tslint fixes * disable responsiveness for workflow modal * rename event * change min width for tags * clean up pr * :zap: Adjust quotes in MySQL migration * :zap: Adjust quotes in Postgres migration * address max's comments on styles * remove success toasts * add hover mode to name * minor fixes * refactor name preview * fix name input not to jiggle * finish up name input * Fix up add tags * clean up param * clean up scss * fix resizing name * fix resizing name * fix resize bug * clean up edit spacing * ignore on esc * fix input bug * focus input on clear * build * fix up add tags clickablity * remove scrollbars * move into folders * clean up multiple patch req * remove padding top from edit * update tags on enter * build * rollout blur on enter behavior * rollout esc behavior * fix tags bug when duplicating tags * move key to reload tags * update header spacing * build * update hex case * refactor workflow title * remove unusued prop * keep focus on error, fix bug on error * Fix bug with name / tags toggle on error * impl creating new workflow name * :zap: Refactor endpoint per new guidelines * support naming endpoint * :zap: Refactor to support numeric suffixes * :shirt: Lint migrations for unique workflow names * :zap: Add migrations set default dates to indexes * fix connection push bug * :zap: Lowercase default workflow name * :zap: Add prefixes to set default dates migration * :zap: Fix indentation on default dates migrations * :zap: Add temp ts-ignore for unrelated change * :zap: Adjust default dates migration for MySQL Remove change to data column in credentials_entity, already covered by Omar's migration. Also, fix quotes from table prefix addition. * :zap: Adjust quotes in dates migration for PG * fix safari color bug * fix count bug * fix scroll bugs in dropdown * expand filter size * apply box-sizing to main header * update workflow names in executions to be wrapped by quotes * fix bug where key is same in dropdown * fix firefox bug * move up push connection session * :hammer: Remove mistakenly added nullable property * :fire: Remove unneeded index drop-create (PG) * :fire: Remove unneeded table copying * :zap: Merge dates migration with tags migration * :hammer: Refactor endpoint and make wf name env * dropdown colors in firefox * update colors to use variables * update thumb color * change error message * remove 100 char maximum * fix bug with saving tags dropdowns multiple times * update error message when no name * :zap: Update name missing toast message * :zap: Update workflow already exists message * disable saving for executions * fix bug causing modal to close * make tags in workflow open clickable * increase workflow limit to 3 * remove success notifications * update header spacing * escape tag names * update tag and table colors * remove tags from export * build * clean up push connection dependencies * address ben's comments * revert tags optional interface * address comments * update duplicate message * build * fix eol * add one more eol * :zap: Update comment * add hover style for workflow open, fix up font weight Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com>
2021-05-29 11:31:21 -07:00
/**
* Set node ids if not already set
*
* @param workflow
*/
export function addNodeIds(workflow: WorkflowEntity) {
const { nodes } = workflow;
if (!nodes) return;
nodes.forEach((node) => {
if (!node.id) {
node.id = uuid();
}
});
}
// Checking if credentials of old format are in use and run a DB check if they might exist uniquely
export async function replaceInvalidCredentials(workflow: WorkflowEntity): Promise<WorkflowEntity> {
const { nodes } = workflow;
if (!nodes) return workflow;
// caching
const credentialsByName: Record<string, Record<string, INodeCredentialsDetails>> = {};
const credentialsById: Record<string, Record<string, INodeCredentialsDetails>> = {};
// for loop to run DB fetches sequential and use cache to keep pressure off DB
// trade-off: longer response time for less DB queries
/* eslint-disable no-await-in-loop */
for (const node of nodes) {
if (!node.credentials || node.disabled) {
continue;
}
// extract credentials types
const allNodeCredentials = Object.entries(node.credentials);
for (const [nodeCredentialType, nodeCredentials] of allNodeCredentials) {
// Check if Node applies old credentials style
if (typeof nodeCredentials === 'string' || nodeCredentials.id === null) {
const name = typeof nodeCredentials === 'string' ? nodeCredentials : nodeCredentials.name;
// init cache for type
if (!credentialsByName[nodeCredentialType]) {
credentialsByName[nodeCredentialType] = {};
}
if (credentialsByName[nodeCredentialType][name] === undefined) {
const credentials = await Db.collections.Credentials.find({
name,
type: nodeCredentialType,
});
// if credential name-type combination is unique, use it
if (credentials?.length === 1) {
credentialsByName[nodeCredentialType][name] = {
id: credentials[0].id.toString(),
name: credentials[0].name,
};
node.credentials[nodeCredentialType] = credentialsByName[nodeCredentialType][name];
continue;
}
// nothing found - add invalid credentials to cache to prevent further DB checks
credentialsByName[nodeCredentialType][name] = {
id: null,
name,
};
} else {
// get credentials from cache
node.credentials[nodeCredentialType] = credentialsByName[nodeCredentialType][name];
}
continue;
}
// Node has credentials with an ID
// init cache for type
if (!credentialsById[nodeCredentialType]) {
credentialsById[nodeCredentialType] = {};
}
// check if credentials for ID-type are not yet cached
if (credentialsById[nodeCredentialType][nodeCredentials.id] === undefined) {
// check first if ID-type combination exists
const credentials = await Db.collections.Credentials.findOne({
id: nodeCredentials.id,
type: nodeCredentialType,
});
if (credentials) {
credentialsById[nodeCredentialType][nodeCredentials.id] = {
id: credentials.id.toString(),
name: credentials.name,
};
node.credentials[nodeCredentialType] =
credentialsById[nodeCredentialType][nodeCredentials.id];
continue;
}
// no credentials found for ID, check if some exist for name
const credsByName = await Db.collections.Credentials.find({
name: nodeCredentials.name,
type: nodeCredentialType,
});
// if credential name-type combination is unique, take it
if (credsByName?.length === 1) {
// add found credential to cache
credentialsById[nodeCredentialType][credsByName[0].id] = {
id: credsByName[0].id.toString(),
name: credsByName[0].name,
};
node.credentials[nodeCredentialType] =
credentialsById[nodeCredentialType][credsByName[0].id];
continue;
}
// nothing found - add invalid credentials to cache to prevent further DB checks
credentialsById[nodeCredentialType][nodeCredentials.id] = nodeCredentials;
continue;
}
// get credentials from cache
node.credentials[nodeCredentialType] =
credentialsById[nodeCredentialType][nodeCredentials.id];
}
}
/* eslint-enable no-await-in-loop */
return workflow;
}
feat: Add User Management (#2636) * ✅ adjust tests * 🛠 refactor user invites to be indempotent (#2791) * 🔐 Encrypt SMTP pass for user management backend (#2793) * :package: Add crypto-js to /cli * :package: Update package-lock.json * :sparkles: Create type for SMTP config * :zap: Encrypt SMTP pass * :zap: Update format for `userManagement.emails.mode` * :zap: Update format for `binaryDataManager.mode` * :zap: Update format for `logs.level` * :fire: Remove logging * :shirt: Fix lint * 👰 n8n 2826 um wedding FE<>BE (#2789) * remove mocks * update authorization func * lock down default role * 🐛 fix requiring authentication for OPTIONS requests * :bug: fix cors and cookie issues in dev * update setup route Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * update telemetry * 🐛 preload role for users * :bug: remove auth for password reset routes * 🐛 fix forgot-password flow * :zap: allow workflow tag disabling * update telemetry init * add reset * clear error notifications on signin * remove load settings from node view * remove user id from user state * inherit existing user props * go back in history on button click * use replace to force redirect * update stories * :zap: add env check for tag create * :test_tube: Add `/users` tests for user management backend (#2790) * :zap: Refactor users namespace * :zap: Adjust fillout endpoint * :zap: Refactor initTestServer arg * :pencil2: Specify agent type * :pencil2: Specify role type * :zap: Tighten `/users/:id` check * :sparkles: Add initial tests * :truck: Reposition init server map * :zap: Set constants in `validatePassword()` * :zap: Tighten `/users/:id` check * :zap: Improve checks in `/users/:id` * :sparkles: Add tests for `/users/:id` * :package: Update package-lock.json * :zap: Simplify expectation * :zap: Reuse util for authless agent * :truck: Make role names consistent * :blue_book: Tighten namespaces map type * :fire: Remove unneeded default arg * :sparkles: Add tests for `POST /users` * :blue_book: Create test SMTP account type * :pencil2: Improve wording * :art: Formatting * :fire: Remove temp fix * :zap: Replace helper with config call * :zap: Fix failing tests * :fire: Remove outdated test * :fire: Remove unused helper * :zap: Increase readability of domain fetcher * :zap: Refactor payload validation * :fire: Remove repetition * :rewind: Restore logging * :zap: Initialize logger in tests * :fire: Remove redundancy from check * :truck: Move `globalOwnerRole` fetching to global scope * :fire: Remove unused imports * :truck: Move random utils to own module * :truck: Move test types to own module * :pencil2: Add dividers to utils * :pencil2: Reorder `initTestServer` param docstring * :pencil2: Add TODO comment * :zap: Dry up member creation * :zap: Tighten search criteria * :test_tube: Add expectation to `GET /users` * :zap: Create role fetcher utils * :zap: Create one more role fetch util * :fire: Remove unneeded DB query * :test_tube: Add expectation to `POST /users` * :test_tube: Add expectation to `DELETE /users/:id` * :test_tube: Add another expectation to `DELETE /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :test_tube: Adjust expectations in `POST /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :shirt: Fix build * :zap: Update method * :blue_book: Fix `userToDelete` type * :zap: Refactor `createAgent()` * :zap: Make role fetching global * :zap: Optimize roles fetching * :zap: Centralize member creation * :zap: Refactor truncation helper * :test_tube: Add teardown to `DELETE /users/:id` * :test_tube: Add DB expectations to users tests * :fire: Remove pass validation due to hash * :pencil2: Improve pass validation error message * :zap: Improve owner pass validation * :zap: Create logger initialization helper * :zap: Optimize helpers * :zap: Restructure `getAllRoles` helper * :test_tube: Add password reset flow tests for user management backend (#2807) * :zap: Refactor users namespace * :zap: Adjust fillout endpoint * :zap: Refactor initTestServer arg * :pencil2: Specify agent type * :pencil2: Specify role type * :zap: Tighten `/users/:id` check * :sparkles: Add initial tests * :truck: Reposition init server map * :zap: Set constants in `validatePassword()` * :zap: Tighten `/users/:id` check * :zap: Improve checks in `/users/:id` * :sparkles: Add tests for `/users/:id` * :package: Update package-lock.json * :zap: Simplify expectation * :zap: Reuse util for authless agent * :truck: Make role names consistent * :blue_book: Tighten namespaces map type * :fire: Remove unneeded default arg * :sparkles: Add tests for `POST /users` * :blue_book: Create test SMTP account type * :pencil2: Improve wording * :art: Formatting * :fire: Remove temp fix * :zap: Replace helper with config call * :zap: Fix failing tests * :fire: Remove outdated test * :sparkles: Add tests for password reset flow * :pencil2: Fix test wording * :zap: Set password reset namespace * :fire: Remove unused helper * :zap: Increase readability of domain fetcher * :zap: Refactor payload validation * :fire: Remove repetition * :rewind: Restore logging * :zap: Initialize logger in tests * :fire: Remove redundancy from check * :truck: Move `globalOwnerRole` fetching to global scope * :fire: Remove unused imports * :truck: Move random utils to own module * :truck: Move test types to own module * :pencil2: Add dividers to utils * :pencil2: Reorder `initTestServer` param docstring * :pencil2: Add TODO comment * :zap: Dry up member creation * :zap: Tighten search criteria * :test_tube: Add expectation to `GET /users` * :zap: Create role fetcher utils * :zap: Create one more role fetch util * :fire: Remove unneeded DB query * :test_tube: Add expectation to `POST /users` * :test_tube: Add expectation to `DELETE /users/:id` * :test_tube: Add another expectation to `DELETE /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :test_tube: Adjust expectations in `POST /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :blue_book: Add namespace name to type * :truck: Adjust imports * :zap: Optimize `globalOwnerRole` fetching * :test_tube: Add expectations * :shirt: Fix build * :shirt: Fix build * :zap: Update method * :zap: Update method * :test_tube: Fix `POST /change-password` test * :blue_book: Fix `userToDelete` type * :zap: Refactor `createAgent()` * :zap: Make role fetching global * :zap: Optimize roles fetching * :zap: Centralize member creation * :zap: Refactor truncation helper * :test_tube: Add teardown to `DELETE /users/:id` * :test_tube: Add DB expectations to users tests * :zap: Refactor as in users namespace * :test_tube: Add expectation to `POST /change-password` * :fire: Remove pass validation due to hash * :pencil2: Improve pass validation error message * :zap: Improve owner pass validation * :zap: Create logger initialization helper * :zap: Optimize helpers * :zap: Restructure `getAllRoles` helper * :zap: Update `truncate` calls * :bug: return 200 for non-existing user * ✅ fix tests for forgot-password and user creation * Update packages/editor-ui/src/components/MainSidebar.vue Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/components/Telemetry.vue Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * :truck: Fix imports * :zap: reset password just if password exists * Fix validation at `PATCH /workfows/:id` (#2819) * :bug: Validate entity only if workflow * :shirt: Fix build * 🔨 refactor response from user creation * 🐛 um email invite fix (#2833) * update users invite * fix notificaitons stacking on top of each other * remove unnessary check * fix type issues * update structure * fix types * 🐘 database migrations UM + password reset expiration (#2710) * Add table prefix and assign existing workflows and credentials to owner for sqlite * Added user management migration to MySQL * Fixed some missing table prefixes and removed unnecessary user id * Created migration for postgres and applies minor fixes * Fixed migration for sqlite by removing the unnecessary index and for mysql by removing unnecessary user data * Added password reset token expiration * Addressing comments made by Ben * ⚡️ add missing tablePrefix * ✅ fix tests + add tests for expiring pw-reset-token Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :zap: treat skipped personalizationSurvey as not answered * :bug: removing active workflows when deleting user, :bug: fix reinvite, :bug: fix resolve-signup-token, 🐘 remove workflowname uniqueness * ✅ Add DB state check tests (#2841) * :fire: Remove unneeded import * :fire: Remove unneeded vars * :pencil2: Improve naming * :test_tube: Add expectations to `POST /owner` * :test_tube: Add expectations to `PATCH /me` * :test_tube: Add expectation to `PATCH /me/password` * :pencil2: Clarify when owner is owner shell * :test_tube: Add more expectations * :rewind: Restore package-lock to parent branch state * Add logging to user management endpoints v2 (#2836) * :zap: Initialize logger in tests * :zap: Add logs to mailer * :zap: Add logs to middleware * :zap: Add logs to me endpoints * :zap: Add logs to owner endpoints * :zap: Add logs to pass flow endpoints * :zap: Add logs to users endpoints * :blue_book: Improve typings * :zap: Merge two logs into one * :zap: Adjust log type * :zap: Add password reset email log * :pencil2: Reword log message * :zap: Adjust log meta object * :zap: Add total to log * :pencil2: Add detail to log message * :pencil2: Reword log message * :pencil2: Reword log message * :bug: Make total users to set up accurate * :pencil2: Reword `Logger.debug()` messages * :pencil2: Phrasing change for consistency * :bug: Fix ID overridden in range query * :hammer: small refactoring * 🔐 add auth to push-connection * 🛠 ✅ Create credentials namespace and add tests (#2831) * :test_tube: Fix failing test * :blue_book: Improve `createAgent` signature * :truck: Fix `LoggerProxy` import * :sparkles: Create credentials endpoints namespace * :test_tube: Set up initial tests * :zap: Add validation to model * :zap: Adjust validation * :test_tube: Add test * :truck: Sort creds endpoints * :pencil2: Plan out pending tests * :test_tube: Add deletion tests * :test_tube: Add patch tests * :test_tube: Add get cred tests * :truck: Hoist import * :pencil2: Make test descriptions consistent * :pencil2: Adjust description * :test_tube: Add missing test * :pencil2: Make get descriptions consistent * :rewind: Undo line break * :zap: Refactor to simplify `saveCredential` * :test_tube: Add non-owned tests for owner * :pencil2: Improve naming * :pencil2: Add clarifying comments * :truck: Improve imports * :zap: Initialize config file * :fire: Remove unneeded import * :truck: Rename dir * :zap: Adjust deletion call * :zap: Adjust error code * :pencil2: Touch up comment * :zap: Optimize fetching with `@RelationId` * :test_tube: Add expectations * :zap: Simplify mock calls * :blue_book: Set deep readonly to object constants * :fire: Remove unused param and encryption key * :zap: Add more `@RelationId` calls in models * :rewind: Restore * :bug: no auth for .svg * 🛠 move auth cookie name to constant; 🐛 fix auth for push-connection * ✅ Add auth middleware tests (#2853) * :zap: Simplify existing suite * :test_tube: Validate that auth cookie exists * :pencil2: Move comment * :fire: Remove unneeded imports * :pencil2: Add clarifying comments * :pencil2: Document auth endpoints * :test_tube: Add middleware tests * :pencil2: Fix typos Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com> * 🔥 Remove test description wrappers (#2874) * :fire: Remove /owner test wrappers * :fire: Remove auth middleware test wrappers * :fire: Remove auth endpoints test wrappers * :fire: Remove overlooked middleware wrappers * :fire: Remove me namespace test wrappers Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * ✨ Runtime checks for credentials load and execute workflows (#2697) * Runtime checks for credentials load and execute workflows * Fixed from reviewers * Changed runtime validation for credentials to be on start instead of on demand * Refactored validations to use user id instead of whole User instance * Removed user entity from workflow project because it is no longer needed * General fixes and improvements to runtime checks * Remove query builder and improve styling * Fix lint issues * :zap: remove personalizationAnswers when fetching all users * ✅ fix failing get all users test * ✅ check authorization routes also for authentication * :bug: fix defaults in reset command * 🛠 refactorings from walkthrough (#2856) * :zap: Make `getTemplate` async * :zap: Remove query builder from `getCredentials` * :zap: Add save manual executions log message * :rewind: Restore and hide migrations logs * :zap: Centralize ignore paths check * :shirt: Fix build * :truck: Rename `hasOwner` to `isInstanceOwnerSetUp` * :zap: Add `isSetUp` flag to `User` * :zap: Add `isSetUp` to FE interface * :zap: Adjust `isSetUp` checks on FE * :shirt: Fix build * :zap: Adjust `isPendingUser()` check * :truck: Shorten helper name * :zap: Refactor as `isPending` per feedback * :pencil2: Update log message * :zap: Broaden check * :fire: Remove unneeded relation * :zap: Refactor query * :fire: Re-remove logs from migrations * 🛠 set up credentials router (#2882) * :zap: Refactor creds endpoints into router * :test_tube: Refactor creds tests to use router * :truck: Rename arg for consistency * :truck: Move `credentials.api.ts` outside /public * :truck: Rename constant for consistency * :blue_book: Simplify types * :fire: Remove unneeded arg * :truck: Rename router to controller * :zap: Shorten endpoint * :zap: Update `initTestServer()` arg * :zap: Mutate response body in GET /credentials * 🏎 improve performance of type cast for FE Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :bug: remove GET /login from auth * 🔀 merge master + FE update (#2905) * :sparkles: Add Templates (#2720) * Templates Bugs / Fixed Various Bugs / Multiply Api Request, Carousel Gradient, Core Nodes Filters ... * Updated MainSidebar Paddings * N8N-Templates Bugfixing - Remove Unnecesairy Icon (Shape), Refatctor infiniteScrollEnabled Prop + updated infiniterScroll functinality * N8N-2853 Fixed Carousel Arrows Bug after Cleaning the SearchBar * fix telemetry init * fix search tracking issues * N8N-2853 Created FilterTemplateNode Constant Array, Filter PlayButton and WebhookRespond from Nodes, Added Box for showing more nodes inside TemplateList, Updated NewWorkflowButton to primary, Fixed Markdown issue with Code * N8N-2853 Removed Placeholder if Workflows Or Collections are not found, Updated the Logic * fix telemetry events * clean up session id * update user inserted event * N8N-2853 Fixed Categories to Moving if the names are long * Add todos * Update Routes on loading * fix spacing * Update Border Color * Update Border Readius * fix filter fn * fix constant, console error * N8N-2853 PR Fixes, Refactoring, Removing unnecesairy code .. * N8N-2853 PR Fixes - Editor-ui Fixes, Refactoring, Removing Dead Code ... * N8N-2853 Refactor Card to LongCard * clean up spacing, replace css var * clean up spacing * set categories as optional in node * replace vars * refactor store * remove unnesssary import * fix error * fix templates view to start * add to cache * fix coll view data * fix categories * fix category event * fix collections carousel * fix initial load and search * fix infinite load * fix query param * fix scrolling issues * fix scroll to top * fix search * fix collections search * fix navigation bug * rename view * update package lock * rename workflow view * rename coll view * update routes * add wrapper component * set session id * fix search tracking * fix session tracking * remove deleted mutation * remove check for unsupported nodes * refactor filters * lazy load template * clean up types * refactor infinte scroll * fix end of search * Fix spacing * fix coll loading * fix types * fix coll view list * fix navigation * rename types * rename state * fix search responsiveness * fix coll view spacing * fix search view spacing * clean up views * set background color * center page not vert * fix workflow view * remove import * fix background color * fix background * clean props * clean up imports * refactor button * update background color * fix spacing issue * rename event * update telemetry event * update endpoints, add loading view, check for endpoint health * remove conolse log * N8N-2853 Fixed Menu Items Padding * replace endpoints * fix type issues * fix categories * N8N-2853 Fixed ParameterInput Placeholder after ElementUI Upgrade * update createdAt * :zap: Fix placeholder in creds config modal * :pencil2: Adjust docstring to `credText` placeholder version * N8N-2853 Optimized * N8N-2853 Optimized code * :zap: Add deployment type to FE settings * :zap: Add deployment type to interfaces * N8N-2853 Removed Animated prop from components * :zap: Add deployment type to store module * :sparkles: Create hiring banner * :zap: Display hiring banner * :rewind: Undo unrelated change * N8N-2853 Refactor TemplateFilters * :zap: Fix indentation * N8N-2853 Reorder items / TemplateList * :shirt: Fix lint * N8N-2853 Refactor TemplateFilters Component * N8N-2853 Reorder TemplateList * refactor template card * update timeout * fix removelistener * fix spacing * split enabled from offline * add spacing to go back * N8N-2853 Fixed Screens for Tablet & Mobile * N8N-2853 Update Stores Order * remove image componet * remove placeholder changes * N8N-2853 Fixed Chinnese Placeholders for El Select Component that comes from the Library Upgrade * N8N-2853 Fixed Vue Agile Console Warnings * N8N-2853 Update Collection Route * :pencil2: Update jobs URL * :truck: Move logging to root component * :zap: Refactor `deploymentType` to `isInternalUser` * :zap: Improve syntax * fix cut bug in readonly view * N8N-3012 Fixed Details section in templates with lots of description, Fixed Mardown Block with overflox-x * N8N-3012 Increased Font-size, Spacing and Line-height of the Categories Items * N8N-3012 Fixed Vue-agile client width error on resize * only delay redirect for root path * N8N-3012 Fixed Carousel Arrows that Disappear * N8N-3012 Make Loading Screen same color as Templates * N8N-3012 Markdown renders inline block as block code * add offline warning * hide log from workflow iframe * update text * make search button larger * N8N-3012 Categories / Tags extended all the way in details section * load data in cred modals * remove deleted message * add external hook * remove import * update env variable description * fix markdown width issue * disable telemetry for demo, add session id to template pages * fix telemetery bugs * N8N-3012 Not found Collections/Wokrkflow * N8N-3012 Checkboxes change order when categories are changed * N8N-3012 Refactor SortedCategories inside TemplateFilters component * fix firefox bug * add telemetry requirements * add error check * N8N-3012 Update GoBackButton to check if Route History is present * N8N-3012 Fixed WF Nodes Icons * hide workflow screenshots * remove unnessary mixins * rename prop * fix design a bit * rename data * clear workspace on destroy * fix copy paste bug * fix disabled state * N8N-3012 Fixed Saving/Leave without saving Modal * fix telemetry issue * fix telemetry issues, error bug * fix error notification * disable workflow menu items on templates * fix i18n elementui issue * Remove Emit - NodeType from HoverableNodeIcon component * TechnicalFixes: NavigateTo passed down as function should be helper * TechnicalFixes: Update NavigateTo function * TechnicalFixes: Add FilterCoreNodes directly as function * check for empty connecitions * fix titles * respect new lines * increase categories to be sliced * rename prop * onUseWorkflow * refactor click event * fix bug, refactor * fix loading story * add default * fix styles at right level of abstraction * add wrapper with width * remove loading blocks component * add story * rename prop * fix spacing * refactor tag, add story * move margin to container * fix tag redirect, remove unnessary check * make version optional * rename view * move from workflows to templates store * remove unnessary change * remove unnessary css * rename component * refactor collection card * add boolean to prevent shrink * clean up carousel * fix redirection bug on save * remove listeners to fix multiple listeners bug * remove unnessary types * clean up boolean set * fix node select bug * rename component * remove unnessary class * fix redirection bug * remove unnessary error * fix typo * fix blockquotes, pre * refactor markdown rendering * remove console log * escape markdown * fix safari bug * load active workflows to fix modal bug * :arrow_up: Update package-lock.json file * :zap: Add n8n version as header Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com> Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :bookmark: Release n8n-workflow@0.88.0 * :arrow_up: Set n8n-workflow@0.88.0 on n8n-core * :bookmark: Release n8n-core@0.106.0 * :arrow_up: Set n8n-core@0.106.0 and n8n-workflow@0.88.0 on n8n-node-dev * :bookmark: Release n8n-node-dev@0.45.0 * :arrow_up: Set n8n-core@0.106.0 and n8n-workflow@0.88.0 on n8n-nodes-base * :bookmark: Release n8n-nodes-base@0.163.0 * :bookmark: Release n8n-design-system@0.12.0 * :arrow_up: Set n8n-design-system@0.12.0 and n8n-workflow@0.88.0 on n8n-editor-ui * :bookmark: Release n8n-editor-ui@0.132.0 * :arrow_up: Set n8n-core@0.106.0, n8n-editor-ui@0.132.0, n8n-nodes-base@0.163.0 and n8n-workflow@0.88.0 on n8n * :bookmark: Release n8n@0.165.0 * fix default user bug * fix bug * update package lock * fix duplicate import * fix settings * fix templates access Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :zap: n8n 2952 personalisation (#2911) * refactor/update survey * update customers * Fix up personalization survey * fix recommendation logic * set to false * hide suggested nodes when empty * use keys * add missing logic * switch types * Fix logic * remove unused constants * add back constant * refactor filtering inputs * hide last input on personal * fix other * ✨ add current pw check for change password (#2912) * fix back button * Add current password input * add to modal * update package.json * delete mock file * delete mock file * get settings func * update router * update package lock * update package lock * Fix invite text * update error i18n * open personalization on search if not set * update error view i18n * update change password * update settings sidebar * remove import * fix sidebar * :goal_net: fix error for credential/workflow not found * update invite modal * ✨ persist skipping owner setup (#2894) * 🚧 added skipInstanceOwnerSetup to DB + route to save skipping * ✨ skipping owner setup persists * ✅ add tests for authorization and /owner/skip-setup * 🛠 refactor FE settings getter * 🛠 move setting setup stop to owner creation * :bug: fix wrong setting of User.isPending * :bug: fix isPending * 🏷 add isPending to PublicUser * :bug: fix unused import * update delete modal * change password modal * remove _label * sort keys * remove key * update key names * fix test endpoint * 🥅 Handle error workflows permissions (#2908) * Handle error workflows permissions * Fixed wrong query format * 🛠 refactor query Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com> * fix ts issue * fix list after ispending changes * fix error page bugs * fix error redirect * fix notification * :bug: fix survey import in migration * fix up spacing * update keys spacing * update keys * add space * update key * fix up more spacing * 🔐 add current password (#2919) * add curr pass * update key names * :bug: stringify tag ids * 🔐 check current password before update * add package lock * fix dep version * update version * 🐛 fix access for instance owner to credentials (#2927) * 🛠 stringify tag id on entity * 🔐 Update password requirements (#2920) * :zap: Update password requirements * :zap: Adjust random helpers * ✅ fix tests for currentPassword check * change redirection, add homepage * fix error view redirection * updated wording * fix setup redirection * update validator * remove successfully * update consumers * update settings redirect * on signup, redirect to homepage * update empty state * add space to emails * remove brackets * add opacity * update spacing * remove border from last user * personal details updated * update redirect on sign up * prevent text wrap * fix notification title line height * remove console log * 🐘 Support testing with Postgres and MySQL (#2886) * :card_file_box: Fix Postgres migrations * :zap: Add DB-specific scripts * :sparkles: Set up test connections * :zap: Add Postgres UUID check * :test_tube: Make test adjustments for Postgres * :zap: Refactor connection logic * :sparkles: Set up double init for Postgres * :pencil2: Add TODOs * :zap: Refactor DB dropping logic * :sparkles: Implement global teardown * :sparkles: Create TypeORM wrappers * :sparkles: Initial MySQL setup * :zap: Clean up Postgres connection options * :zap: Simplify by sharing bootstrap connection name * :card_file_box: Fix MySQL migrations * :fire: Remove comments * :zap: Use ES6 imports * :fire: Remove outdated comments * :zap: Centralize bootstrap connection name handles * :zap: Centralize database types * :pencil2: Update comment * :truck: Rename `findRepository` * :construction: Attempt to truncate MySQL * :sparkles: Implement creds router * :bug: Fix duplicated MySQL bootstrap * :bug: Fix misresolved merge conflict * :card_file_box: Fix tags migration * :card_file_box: Fix MySQL UM migration * :bug: Fix MySQL parallelization issues * :blue_book: Augment TypeORM to prevent error * :fire: Remove comments * :sparkles: Support one sqlite DB per suite run * :truck: Move `testDb` to own module * :fire: Deduplicate bootstrap Postgres logic * :fire: Remove unneeded comment * :zap: Make logger init calls consistent * :pencil2: Improve comment * :pencil2: Add dividers * :art: Improve formatting * :fire: Remove duplicate MySQL global setting * :truck: Move comment * :zap: Update default test script * :fire: Remove unneeded helper * :zap: Unmarshal answers from Postgres * :bug: Phase out `isTestRun` * :zap: Refactor `isEmailSetup` * :fire: Remove unneeded imports * :zap: Handle bootstrap connection errors * :fire: Remove unneeded imports * :fire: Remove outdated comments * :pencil2: Fix typos * :truck: Relocate `answersFormatter` * :rewind: Undo package.json miscommit * :fire: Remove unneeded import * :zap: Refactor test DB prefixing * :zap: Add no-leftover check to MySQL * :package: Update package.json * :zap: Autoincrement on simulated MySQL truncation * :fire: Remove debugging queries * ✏️ fix email template link expiry * 🔥 remove unused import * ✅ fix testing email not sent error * fix duplicate import * add package lock * fix export * change opacity * fix text issue * update action box * update error title * update forgot password * update survey * update product text * remove unset fields * add category to page events * remove duplicate import * update key * update key * update label type * 🎨 um/fe review (#2946) * :whale: Update Node.js versions of Docker images to 16 * :bug: Fix that some keyboard shortcuts did no longer work * N8N-3057 Fixed Keyboard shortcuts no longer working on / Fixed callDebounced function * N8N-3057 Update Debounce Function * N8N-3057 Refactor callDebounce function * N8N-3057 Update Dobounce Function * :bug: Fix issue with tooltips getting displayed behind node details view * fix tooltips z-index * move all element ui components * update package lock * :bug: Fix credentials list load issue (#2931) * always fetch credentials * only fetch credentials once * :zap: Allow to disable hiring banner (#2902) * :sparkles: Add flag * :zap: Adjust interfaces * :zap: Adjust store module * :zap: Adjust frontend settings * :zap: Adjust frontend display * :bug: Fix issue that ctrl + o did behave wrong on workflow templates page (#2934) * N8N-3094 Workflow Templates cmd-o acts on the Preview/Iframe * N8N-3094 Workflow Templates cmd-o acts on the Preview/Iframe * disable shortcuts for preview Co-authored-by: Mutasem <mutdmour@gmail.com> * :arrow_up: Update package-lock.json file * :bug: Fix sorting by field in Baserow Node (#2942) This fixes a bug which currently leads to the "Sorting" option of the node to be ignored. * :bug: Fix some i18n line break issues * :sparkles: Add Odoo Node (#2601) * added odoo scaffolding * update getting data from odoo instance * added scaffolding for main loop and request functions * added functions for CRUD opperations * improoved error handling for odooJSONRPCRequest * updated odoo node and fixing nodelinter issues * fixed alpabetical order * fixed types in odoo node * fixing linter errors * fixing linter errors * fixed data shape returned from man loop * updated node input types, added fields list to models * update when custom resource is selected options for fields list will be populated dynamicly * minor fixes * :hammer: fixed credential test, updating CRUD methods * :hammer: added additional fields to crm resource * :hammer: added descriptions, fixed credentials test bug * :hammer: standardize node and descriptions design * :hammer: removed comments * :hammer: added pagination to getAll operation * :zap: removed leftover function from previous implementation, removed required from optional fields * :zap: fixed id field, added indication of type and if required to field description, replaced string input in filters to fetched list of fields * :hammer: fetching list of models from odoo, added selection of fields to be returned to predefined models, fixes accordingly to review * :zap: Small improvements * :hammer: extracted adress fields into collection, changed fields to include in descriptions, minor tweaks * :zap: Improvements * :hammer: working on review * :hammer: fixed linter errors * :hammer: review wip * :hammer: review wip * :hammer: review wip * :zap: updated display name for URL in credentials * :hammer: added checks for valid id to delete and update * :zap: Minor improvements Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :bug: Handle Wise SCA requests (#2734) * :zap: Improve Wise error message after previous change * fix duplicate import * add package lock * fix export * change opacity * fix text issue * update action box * update error title * update forgot password * update survey * update product text * remove unset fields * add category to page events * remove duplicate import * update key * update key Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Tom <19203795+that-one-tom@users.noreply.github.com> Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com> Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: pemontto <939704+pemontto@users.noreply.github.com> * Move owner skip from settings * 🐛 SMTP fixes (#2937) * :fire: Remove `UM_` from SMTP env vars * :fire: Remove SMTP host default value * :zap: Update sender value * :zap: Update invite template * :zap: Update password reset template * :zap: Update `N8N_EMAIL_MODE` default value * :fire: Remove `EMAIL` from all SMTP vars * :sparkles: Implement `verifyConnection()` * :truck: Reposition comment * :pencil2: Fix typo * :pencil2: Minor env var documentation improvements * :art: Fix spacing * :art: Fix spacing * :card_file_box: Remove SMTP settings cache * :zap: Adjust log message * :zap: Update error message * :pencil2: Fix template typo * :pencil2: Adjust wording * :zap: Interpolate email into success toast * :pencil2: Adjust base message in `verifyConnection()` * :zap: Verify connection on password reset * :zap: Bring up POST /users SMTP check * :bug: remove cookie if cookie is not valid * :zap: verify connection on instantiation Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * 🔊 create logger helper for migrations (#2944) * 🔥 remove unused database * :loud_sound: add migration logging for sqlite * 🔥 remove unnecessary index creation * ⚡️ change log level to warn * 🐛 Fix issue with workflow process to initialize db connection correctly (#2948) * ✏️ update error messages for webhhook run/activation * 📈 Implement telemetry events (#2868) * Implement basic telemetry events * Fixing user id as part of the telemetry data * Added user id to be part of the tracked data * :sparkles: Create telemetry mock * :test_tube: Fix tests with telemetry mock * :test_tube: Fix missing key in authless endpoint * :blue_book: Create authless request type * :fire: Remove log * :bug: Fix `migration_strategy` assignment * :blue_book: Remove `instance_id` from `ITelemetryUserDeletionData` * :zap: Simplify concatenation * :zap: Simplify `track()` call signature * Fixed payload of telemetry to always include user_id * Fixing minor issues Co-authored-by: Iván Ovejero <ivov.src@gmail.com> * 🔊 Added logs to credentials, executions and workflows (#2915) * Added logs to credentials, executions and workflows * Some updates according to ivov's feedback * :zap: update log levels * ✅ fix tests Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :bug: fix telemetry error * fix conflicts with master * fix duplicate * add package-lock * :bug: Um/fixes (#2952) * add initials to avatar * redirect to signin if invalid token * update pluralization * add auth page category * data transferred * touch up setup page * update button to add cursor * fix personalization modal not closing * ✏️ fix environment name * 🐛 fix disabling UM * 🐛 fix email setup flag * 🐛 FE fixes 1 (#2953) * add initials to avatar * redirect to signin if invalid token * update pluralization * add auth page category * data transferred * touch up setup page * update button to add cursor * fix personalization modal not closing * capitalize labels, refactor text * Fixed the issue with telemetry data missing for personalization survey * Changed invite email text * 🐛 Fix quotes issue with postgres migration (#2958) * Changed text for invite link * 🐛 fix reset command for mysql * ✅ fix race condition in test DB creation * 🔐 block user creation if UM is disabled * 🥅 improve smtp setup issue error * :zap: update error message * refactor route rules * set package lock * fix access * remove capitalize * update input labels * refactor heading * change span to fragment * add route types * refactor views * ✅ fix increase timeout for mysql * :zap: correct logic of error message * refactor view names * :zap: update randomString * 📈 Added missing event regarding failed emails (#2964) * replace label with info * 🛠 refactor JWT-secret creation * remove duplicate key * remove unused part * remove semicolon * fix up i18n pattern * update translation keys * update urls * support i18n in nds * fix how external keys are handled * add source * 💥 update timestamp of UM migration * ✏️ small message updates * fix tracking * update notification line-height * fix avatar opacity * fix up empty state * shift focus to input * 🔐 Disable basic auth after owner has been set up (#2973) * Disable basic auth after owner has been set up * Remove unnecessary comparison * rename modal title * 🐛 use pgcrypto extension for uuid creation (#2977) * 📧 Added public url variable for emails (#2967) * Added public url variable for emails * Fixed base url for reset password - the current implementation overrides possibly existing path * Change variable name to editorUrl * Using correct name editorUrl for emails * Changed variable description * Improved base url naming and appending path so it remains consistent * Removed trailing slash from editor base url * 🌐 fix i18n pattern (#2970) * fix up i18n pattern * update translation keys * update urls * support i18n in nds * fix how external keys are handled * add source * Um/fixes 1000 (#2980) * fix select issue * 😫 hacky solution to circumvent pgcrypto (#2979) * fix owner bug after transfer. always fetch latest credentials * add confirmation modal to setup * Use webhook url as fallback when editor url is not defined * fix enter bug * update modal * update modal * update modal text, fix bug in settings view * Updating editor url to not append path * rename keys Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com> Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> Co-authored-by: Omar Ajoue <krynble@gmail.com> Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> Co-authored-by: Tom <19203795+that-one-tom@users.noreply.github.com> Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com> Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: pemontto <939704+pemontto@users.noreply.github.com>
2022-03-14 06:46:32 -07:00
/**
* Build a `where` clause for a TypeORM entity search,
* checking for member access if the user is not an owner.
*/
export function whereClause({
user,
entityType,
entityId = '',
}: {
user: User;
entityType: 'workflow' | 'credentials';
entityId?: string;
}): WhereClause {
const where: WhereClause = entityId ? { [entityType]: { id: entityId } } : {};
// TODO: Decide if owner access should be restricted
if (user.globalRole.name !== 'owner') {
where.user = { id: user.id };
:sparkles: Add tagging of workflows (#1647) * clean up dropdown * clean up focusoncreate * :zap: Ignore mistaken ID in POST /workflows * :zap: Fix undefined tag ID in PATCH /workflows * :zap: Shorten response for POST /tags * remove scss mixins * clean up imports * :zap: Implement validation with class-validator * address ivan's comments * implement modals * Fix lint issues * fix disabling shortcuts * fix focus issues * fix focus issues * fix focus issues with modal * fix linting issues * use dispatch * use constants for modal keys * fix focus * fix lint issues * remove unused prop * add modal root * fix lint issues * remove unused methods * fix shortcut * remove max width * :zap: Fix duplicate entry error for pg and MySQL * update rename messaging * update order of buttons * fix firefox overflow on windows * fix dropdown height * :hammer: refactor tag crud controllers * 🧹 remove unused imports * use variable for number of items * fix dropdown spacing * :zap: Restore type to fix build * :zap: Fix post-refactor PATCH /workflows/:id * :zap: Fix PATCH /workflows/:id for zero tags * :zap: Fix usage count becoming stringified * address max's comments * fix filter spacing * fix blur bug * address most of ivan's comments * address tags type concern * remove defaults * :zap: return tag id as string * :hammer: add hooks to tag CUD operations * 🏎 simplify timestamp pruning * remove blur event * fix onblur bug * :zap: Fix fs import to fix build * address max's comments * implement responsive tag container * fix lint issues * Set default dates in entities * :shirt: Fix lint in migrations * update tag limits * address ivan's comments * remove rename, refactor header, implement new designs for save, remove responsive tag container * update styling * update styling * implement responsive tag container * implement header tags edit * implement header tags edit * fix lint issues * implement expandable input * minor fixes * minor fixes * use variable * rename save as * duplicate fixes * :zap: Implement unique workflow names * :zap: Create /workflows/new endpoint * minor edit fixes * lint fixes * style fixes * hook up saving name * hook up tags * clean up impl * fix dirty state bug * update limit * update notification messages * on click outside * fix minor bug with count * lint fixes * :zap: Add query string params to /workflows/new * handle minor edge cases * handle minor edge cases * handle minor bugs; fix firefox dropdown issue * Fix min width * apply tags only after api success * remove count fix * :construction: Adjust to new qs requirements * clean up workflow tags impl, fix tags delete bug * fix minor issue * fix minor spacing issue * disable wrap for ops * fix viewport root; save on click in dropdown * save button loading when saving name/tags * implement max width on tags container * implement cleaner create experience * disable edit while updating * codacy hex color * refactor tags container * fix clickability * fix workflow open and count * clean up structure * fix up lint issues * :zap: Create migrations for unique workflow names * fix button size * increase workflow name limit for larger screen * tslint fixes * disable responsiveness for workflow modal * rename event * change min width for tags * clean up pr * :zap: Adjust quotes in MySQL migration * :zap: Adjust quotes in Postgres migration * address max's comments on styles * remove success toasts * add hover mode to name * minor fixes * refactor name preview * fix name input not to jiggle * finish up name input * Fix up add tags * clean up param * clean up scss * fix resizing name * fix resizing name * fix resize bug * clean up edit spacing * ignore on esc * fix input bug * focus input on clear * build * fix up add tags clickablity * remove scrollbars * move into folders * clean up multiple patch req * remove padding top from edit * update tags on enter * build * rollout blur on enter behavior * rollout esc behavior * fix tags bug when duplicating tags * move key to reload tags * update header spacing * build * update hex case * refactor workflow title * remove unusued prop * keep focus on error, fix bug on error * Fix bug with name / tags toggle on error * impl creating new workflow name * :zap: Refactor endpoint per new guidelines * support naming endpoint * :zap: Refactor to support numeric suffixes * :shirt: Lint migrations for unique workflow names * :zap: Add migrations set default dates to indexes * fix connection push bug * :zap: Lowercase default workflow name * :zap: Add prefixes to set default dates migration * :zap: Fix indentation on default dates migrations * :zap: Add temp ts-ignore for unrelated change * :zap: Adjust default dates migration for MySQL Remove change to data column in credentials_entity, already covered by Omar's migration. Also, fix quotes from table prefix addition. * :zap: Adjust quotes in dates migration for PG * fix safari color bug * fix count bug * fix scroll bugs in dropdown * expand filter size * apply box-sizing to main header * update workflow names in executions to be wrapped by quotes * fix bug where key is same in dropdown * fix firefox bug * move up push connection session * :hammer: Remove mistakenly added nullable property * :fire: Remove unneeded index drop-create (PG) * :fire: Remove unneeded table copying * :zap: Merge dates migration with tags migration * :hammer: Refactor endpoint and make wf name env * dropdown colors in firefox * update colors to use variables * update thumb color * change error message * remove 100 char maximum * fix bug with saving tags dropdowns multiple times * update error message when no name * :zap: Update name missing toast message * :zap: Update workflow already exists message * disable saving for executions * fix bug causing modal to close * make tags in workflow open clickable * increase workflow limit to 3 * remove success notifications * update header spacing * escape tag names * update tag and table colors * remove tags from export * build * clean up push connection dependencies * address ben's comments * revert tags optional interface * address comments * update duplicate message * build * fix eol * add one more eol * :zap: Update comment * add hover style for workflow open, fix up font weight Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com>
2021-05-29 11:31:21 -07:00
}
feat: Add User Management (#2636) * ✅ adjust tests * 🛠 refactor user invites to be indempotent (#2791) * 🔐 Encrypt SMTP pass for user management backend (#2793) * :package: Add crypto-js to /cli * :package: Update package-lock.json * :sparkles: Create type for SMTP config * :zap: Encrypt SMTP pass * :zap: Update format for `userManagement.emails.mode` * :zap: Update format for `binaryDataManager.mode` * :zap: Update format for `logs.level` * :fire: Remove logging * :shirt: Fix lint * 👰 n8n 2826 um wedding FE<>BE (#2789) * remove mocks * update authorization func * lock down default role * 🐛 fix requiring authentication for OPTIONS requests * :bug: fix cors and cookie issues in dev * update setup route Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * update telemetry * 🐛 preload role for users * :bug: remove auth for password reset routes * 🐛 fix forgot-password flow * :zap: allow workflow tag disabling * update telemetry init * add reset * clear error notifications on signin * remove load settings from node view * remove user id from user state * inherit existing user props * go back in history on button click * use replace to force redirect * update stories * :zap: add env check for tag create * :test_tube: Add `/users` tests for user management backend (#2790) * :zap: Refactor users namespace * :zap: Adjust fillout endpoint * :zap: Refactor initTestServer arg * :pencil2: Specify agent type * :pencil2: Specify role type * :zap: Tighten `/users/:id` check * :sparkles: Add initial tests * :truck: Reposition init server map * :zap: Set constants in `validatePassword()` * :zap: Tighten `/users/:id` check * :zap: Improve checks in `/users/:id` * :sparkles: Add tests for `/users/:id` * :package: Update package-lock.json * :zap: Simplify expectation * :zap: Reuse util for authless agent * :truck: Make role names consistent * :blue_book: Tighten namespaces map type * :fire: Remove unneeded default arg * :sparkles: Add tests for `POST /users` * :blue_book: Create test SMTP account type * :pencil2: Improve wording * :art: Formatting * :fire: Remove temp fix * :zap: Replace helper with config call * :zap: Fix failing tests * :fire: Remove outdated test * :fire: Remove unused helper * :zap: Increase readability of domain fetcher * :zap: Refactor payload validation * :fire: Remove repetition * :rewind: Restore logging * :zap: Initialize logger in tests * :fire: Remove redundancy from check * :truck: Move `globalOwnerRole` fetching to global scope * :fire: Remove unused imports * :truck: Move random utils to own module * :truck: Move test types to own module * :pencil2: Add dividers to utils * :pencil2: Reorder `initTestServer` param docstring * :pencil2: Add TODO comment * :zap: Dry up member creation * :zap: Tighten search criteria * :test_tube: Add expectation to `GET /users` * :zap: Create role fetcher utils * :zap: Create one more role fetch util * :fire: Remove unneeded DB query * :test_tube: Add expectation to `POST /users` * :test_tube: Add expectation to `DELETE /users/:id` * :test_tube: Add another expectation to `DELETE /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :test_tube: Adjust expectations in `POST /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :shirt: Fix build * :zap: Update method * :blue_book: Fix `userToDelete` type * :zap: Refactor `createAgent()` * :zap: Make role fetching global * :zap: Optimize roles fetching * :zap: Centralize member creation * :zap: Refactor truncation helper * :test_tube: Add teardown to `DELETE /users/:id` * :test_tube: Add DB expectations to users tests * :fire: Remove pass validation due to hash * :pencil2: Improve pass validation error message * :zap: Improve owner pass validation * :zap: Create logger initialization helper * :zap: Optimize helpers * :zap: Restructure `getAllRoles` helper * :test_tube: Add password reset flow tests for user management backend (#2807) * :zap: Refactor users namespace * :zap: Adjust fillout endpoint * :zap: Refactor initTestServer arg * :pencil2: Specify agent type * :pencil2: Specify role type * :zap: Tighten `/users/:id` check * :sparkles: Add initial tests * :truck: Reposition init server map * :zap: Set constants in `validatePassword()` * :zap: Tighten `/users/:id` check * :zap: Improve checks in `/users/:id` * :sparkles: Add tests for `/users/:id` * :package: Update package-lock.json * :zap: Simplify expectation * :zap: Reuse util for authless agent * :truck: Make role names consistent * :blue_book: Tighten namespaces map type * :fire: Remove unneeded default arg * :sparkles: Add tests for `POST /users` * :blue_book: Create test SMTP account type * :pencil2: Improve wording * :art: Formatting * :fire: Remove temp fix * :zap: Replace helper with config call * :zap: Fix failing tests * :fire: Remove outdated test * :sparkles: Add tests for password reset flow * :pencil2: Fix test wording * :zap: Set password reset namespace * :fire: Remove unused helper * :zap: Increase readability of domain fetcher * :zap: Refactor payload validation * :fire: Remove repetition * :rewind: Restore logging * :zap: Initialize logger in tests * :fire: Remove redundancy from check * :truck: Move `globalOwnerRole` fetching to global scope * :fire: Remove unused imports * :truck: Move random utils to own module * :truck: Move test types to own module * :pencil2: Add dividers to utils * :pencil2: Reorder `initTestServer` param docstring * :pencil2: Add TODO comment * :zap: Dry up member creation * :zap: Tighten search criteria * :test_tube: Add expectation to `GET /users` * :zap: Create role fetcher utils * :zap: Create one more role fetch util * :fire: Remove unneeded DB query * :test_tube: Add expectation to `POST /users` * :test_tube: Add expectation to `DELETE /users/:id` * :test_tube: Add another expectation to `DELETE /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :test_tube: Adjust expectations in `POST /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :blue_book: Add namespace name to type * :truck: Adjust imports * :zap: Optimize `globalOwnerRole` fetching * :test_tube: Add expectations * :shirt: Fix build * :shirt: Fix build * :zap: Update method * :zap: Update method * :test_tube: Fix `POST /change-password` test * :blue_book: Fix `userToDelete` type * :zap: Refactor `createAgent()` * :zap: Make role fetching global * :zap: Optimize roles fetching * :zap: Centralize member creation * :zap: Refactor truncation helper * :test_tube: Add teardown to `DELETE /users/:id` * :test_tube: Add DB expectations to users tests * :zap: Refactor as in users namespace * :test_tube: Add expectation to `POST /change-password` * :fire: Remove pass validation due to hash * :pencil2: Improve pass validation error message * :zap: Improve owner pass validation * :zap: Create logger initialization helper * :zap: Optimize helpers * :zap: Restructure `getAllRoles` helper * :zap: Update `truncate` calls * :bug: return 200 for non-existing user * ✅ fix tests for forgot-password and user creation * Update packages/editor-ui/src/components/MainSidebar.vue Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/components/Telemetry.vue Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * :truck: Fix imports * :zap: reset password just if password exists * Fix validation at `PATCH /workfows/:id` (#2819) * :bug: Validate entity only if workflow * :shirt: Fix build * 🔨 refactor response from user creation * 🐛 um email invite fix (#2833) * update users invite * fix notificaitons stacking on top of each other * remove unnessary check * fix type issues * update structure * fix types * 🐘 database migrations UM + password reset expiration (#2710) * Add table prefix and assign existing workflows and credentials to owner for sqlite * Added user management migration to MySQL * Fixed some missing table prefixes and removed unnecessary user id * Created migration for postgres and applies minor fixes * Fixed migration for sqlite by removing the unnecessary index and for mysql by removing unnecessary user data * Added password reset token expiration * Addressing comments made by Ben * ⚡️ add missing tablePrefix * ✅ fix tests + add tests for expiring pw-reset-token Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :zap: treat skipped personalizationSurvey as not answered * :bug: removing active workflows when deleting user, :bug: fix reinvite, :bug: fix resolve-signup-token, 🐘 remove workflowname uniqueness * ✅ Add DB state check tests (#2841) * :fire: Remove unneeded import * :fire: Remove unneeded vars * :pencil2: Improve naming * :test_tube: Add expectations to `POST /owner` * :test_tube: Add expectations to `PATCH /me` * :test_tube: Add expectation to `PATCH /me/password` * :pencil2: Clarify when owner is owner shell * :test_tube: Add more expectations * :rewind: Restore package-lock to parent branch state * Add logging to user management endpoints v2 (#2836) * :zap: Initialize logger in tests * :zap: Add logs to mailer * :zap: Add logs to middleware * :zap: Add logs to me endpoints * :zap: Add logs to owner endpoints * :zap: Add logs to pass flow endpoints * :zap: Add logs to users endpoints * :blue_book: Improve typings * :zap: Merge two logs into one * :zap: Adjust log type * :zap: Add password reset email log * :pencil2: Reword log message * :zap: Adjust log meta object * :zap: Add total to log * :pencil2: Add detail to log message * :pencil2: Reword log message * :pencil2: Reword log message * :bug: Make total users to set up accurate * :pencil2: Reword `Logger.debug()` messages * :pencil2: Phrasing change for consistency * :bug: Fix ID overridden in range query * :hammer: small refactoring * 🔐 add auth to push-connection * 🛠 ✅ Create credentials namespace and add tests (#2831) * :test_tube: Fix failing test * :blue_book: Improve `createAgent` signature * :truck: Fix `LoggerProxy` import * :sparkles: Create credentials endpoints namespace * :test_tube: Set up initial tests * :zap: Add validation to model * :zap: Adjust validation * :test_tube: Add test * :truck: Sort creds endpoints * :pencil2: Plan out pending tests * :test_tube: Add deletion tests * :test_tube: Add patch tests * :test_tube: Add get cred tests * :truck: Hoist import * :pencil2: Make test descriptions consistent * :pencil2: Adjust description * :test_tube: Add missing test * :pencil2: Make get descriptions consistent * :rewind: Undo line break * :zap: Refactor to simplify `saveCredential` * :test_tube: Add non-owned tests for owner * :pencil2: Improve naming * :pencil2: Add clarifying comments * :truck: Improve imports * :zap: Initialize config file * :fire: Remove unneeded import * :truck: Rename dir * :zap: Adjust deletion call * :zap: Adjust error code * :pencil2: Touch up comment * :zap: Optimize fetching with `@RelationId` * :test_tube: Add expectations * :zap: Simplify mock calls * :blue_book: Set deep readonly to object constants * :fire: Remove unused param and encryption key * :zap: Add more `@RelationId` calls in models * :rewind: Restore * :bug: no auth for .svg * 🛠 move auth cookie name to constant; 🐛 fix auth for push-connection * ✅ Add auth middleware tests (#2853) * :zap: Simplify existing suite * :test_tube: Validate that auth cookie exists * :pencil2: Move comment * :fire: Remove unneeded imports * :pencil2: Add clarifying comments * :pencil2: Document auth endpoints * :test_tube: Add middleware tests * :pencil2: Fix typos Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com> * 🔥 Remove test description wrappers (#2874) * :fire: Remove /owner test wrappers * :fire: Remove auth middleware test wrappers * :fire: Remove auth endpoints test wrappers * :fire: Remove overlooked middleware wrappers * :fire: Remove me namespace test wrappers Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * ✨ Runtime checks for credentials load and execute workflows (#2697) * Runtime checks for credentials load and execute workflows * Fixed from reviewers * Changed runtime validation for credentials to be on start instead of on demand * Refactored validations to use user id instead of whole User instance * Removed user entity from workflow project because it is no longer needed * General fixes and improvements to runtime checks * Remove query builder and improve styling * Fix lint issues * :zap: remove personalizationAnswers when fetching all users * ✅ fix failing get all users test * ✅ check authorization routes also for authentication * :bug: fix defaults in reset command * 🛠 refactorings from walkthrough (#2856) * :zap: Make `getTemplate` async * :zap: Remove query builder from `getCredentials` * :zap: Add save manual executions log message * :rewind: Restore and hide migrations logs * :zap: Centralize ignore paths check * :shirt: Fix build * :truck: Rename `hasOwner` to `isInstanceOwnerSetUp` * :zap: Add `isSetUp` flag to `User` * :zap: Add `isSetUp` to FE interface * :zap: Adjust `isSetUp` checks on FE * :shirt: Fix build * :zap: Adjust `isPendingUser()` check * :truck: Shorten helper name * :zap: Refactor as `isPending` per feedback * :pencil2: Update log message * :zap: Broaden check * :fire: Remove unneeded relation * :zap: Refactor query * :fire: Re-remove logs from migrations * 🛠 set up credentials router (#2882) * :zap: Refactor creds endpoints into router * :test_tube: Refactor creds tests to use router * :truck: Rename arg for consistency * :truck: Move `credentials.api.ts` outside /public * :truck: Rename constant for consistency * :blue_book: Simplify types * :fire: Remove unneeded arg * :truck: Rename router to controller * :zap: Shorten endpoint * :zap: Update `initTestServer()` arg * :zap: Mutate response body in GET /credentials * 🏎 improve performance of type cast for FE Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :bug: remove GET /login from auth * 🔀 merge master + FE update (#2905) * :sparkles: Add Templates (#2720) * Templates Bugs / Fixed Various Bugs / Multiply Api Request, Carousel Gradient, Core Nodes Filters ... * Updated MainSidebar Paddings * N8N-Templates Bugfixing - Remove Unnecesairy Icon (Shape), Refatctor infiniteScrollEnabled Prop + updated infiniterScroll functinality * N8N-2853 Fixed Carousel Arrows Bug after Cleaning the SearchBar * fix telemetry init * fix search tracking issues * N8N-2853 Created FilterTemplateNode Constant Array, Filter PlayButton and WebhookRespond from Nodes, Added Box for showing more nodes inside TemplateList, Updated NewWorkflowButton to primary, Fixed Markdown issue with Code * N8N-2853 Removed Placeholder if Workflows Or Collections are not found, Updated the Logic * fix telemetry events * clean up session id * update user inserted event * N8N-2853 Fixed Categories to Moving if the names are long * Add todos * Update Routes on loading * fix spacing * Update Border Color * Update Border Readius * fix filter fn * fix constant, console error * N8N-2853 PR Fixes, Refactoring, Removing unnecesairy code .. * N8N-2853 PR Fixes - Editor-ui Fixes, Refactoring, Removing Dead Code ... * N8N-2853 Refactor Card to LongCard * clean up spacing, replace css var * clean up spacing * set categories as optional in node * replace vars * refactor store * remove unnesssary import * fix error * fix templates view to start * add to cache * fix coll view data * fix categories * fix category event * fix collections carousel * fix initial load and search * fix infinite load * fix query param * fix scrolling issues * fix scroll to top * fix search * fix collections search * fix navigation bug * rename view * update package lock * rename workflow view * rename coll view * update routes * add wrapper component * set session id * fix search tracking * fix session tracking * remove deleted mutation * remove check for unsupported nodes * refactor filters * lazy load template * clean up types * refactor infinte scroll * fix end of search * Fix spacing * fix coll loading * fix types * fix coll view list * fix navigation * rename types * rename state * fix search responsiveness * fix coll view spacing * fix search view spacing * clean up views * set background color * center page not vert * fix workflow view * remove import * fix background color * fix background * clean props * clean up imports * refactor button * update background color * fix spacing issue * rename event * update telemetry event * update endpoints, add loading view, check for endpoint health * remove conolse log * N8N-2853 Fixed Menu Items Padding * replace endpoints * fix type issues * fix categories * N8N-2853 Fixed ParameterInput Placeholder after ElementUI Upgrade * update createdAt * :zap: Fix placeholder in creds config modal * :pencil2: Adjust docstring to `credText` placeholder version * N8N-2853 Optimized * N8N-2853 Optimized code * :zap: Add deployment type to FE settings * :zap: Add deployment type to interfaces * N8N-2853 Removed Animated prop from components * :zap: Add deployment type to store module * :sparkles: Create hiring banner * :zap: Display hiring banner * :rewind: Undo unrelated change * N8N-2853 Refactor TemplateFilters * :zap: Fix indentation * N8N-2853 Reorder items / TemplateList * :shirt: Fix lint * N8N-2853 Refactor TemplateFilters Component * N8N-2853 Reorder TemplateList * refactor template card * update timeout * fix removelistener * fix spacing * split enabled from offline * add spacing to go back * N8N-2853 Fixed Screens for Tablet & Mobile * N8N-2853 Update Stores Order * remove image componet * remove placeholder changes * N8N-2853 Fixed Chinnese Placeholders for El Select Component that comes from the Library Upgrade * N8N-2853 Fixed Vue Agile Console Warnings * N8N-2853 Update Collection Route * :pencil2: Update jobs URL * :truck: Move logging to root component * :zap: Refactor `deploymentType` to `isInternalUser` * :zap: Improve syntax * fix cut bug in readonly view * N8N-3012 Fixed Details section in templates with lots of description, Fixed Mardown Block with overflox-x * N8N-3012 Increased Font-size, Spacing and Line-height of the Categories Items * N8N-3012 Fixed Vue-agile client width error on resize * only delay redirect for root path * N8N-3012 Fixed Carousel Arrows that Disappear * N8N-3012 Make Loading Screen same color as Templates * N8N-3012 Markdown renders inline block as block code * add offline warning * hide log from workflow iframe * update text * make search button larger * N8N-3012 Categories / Tags extended all the way in details section * load data in cred modals * remove deleted message * add external hook * remove import * update env variable description * fix markdown width issue * disable telemetry for demo, add session id to template pages * fix telemetery bugs * N8N-3012 Not found Collections/Wokrkflow * N8N-3012 Checkboxes change order when categories are changed * N8N-3012 Refactor SortedCategories inside TemplateFilters component * fix firefox bug * add telemetry requirements * add error check * N8N-3012 Update GoBackButton to check if Route History is present * N8N-3012 Fixed WF Nodes Icons * hide workflow screenshots * remove unnessary mixins * rename prop * fix design a bit * rename data * clear workspace on destroy * fix copy paste bug * fix disabled state * N8N-3012 Fixed Saving/Leave without saving Modal * fix telemetry issue * fix telemetry issues, error bug * fix error notification * disable workflow menu items on templates * fix i18n elementui issue * Remove Emit - NodeType from HoverableNodeIcon component * TechnicalFixes: NavigateTo passed down as function should be helper * TechnicalFixes: Update NavigateTo function * TechnicalFixes: Add FilterCoreNodes directly as function * check for empty connecitions * fix titles * respect new lines * increase categories to be sliced * rename prop * onUseWorkflow * refactor click event * fix bug, refactor * fix loading story * add default * fix styles at right level of abstraction * add wrapper with width * remove loading blocks component * add story * rename prop * fix spacing * refactor tag, add story * move margin to container * fix tag redirect, remove unnessary check * make version optional * rename view * move from workflows to templates store * remove unnessary change * remove unnessary css * rename component * refactor collection card * add boolean to prevent shrink * clean up carousel * fix redirection bug on save * remove listeners to fix multiple listeners bug * remove unnessary types * clean up boolean set * fix node select bug * rename component * remove unnessary class * fix redirection bug * remove unnessary error * fix typo * fix blockquotes, pre * refactor markdown rendering * remove console log * escape markdown * fix safari bug * load active workflows to fix modal bug * :arrow_up: Update package-lock.json file * :zap: Add n8n version as header Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com> Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :bookmark: Release n8n-workflow@0.88.0 * :arrow_up: Set n8n-workflow@0.88.0 on n8n-core * :bookmark: Release n8n-core@0.106.0 * :arrow_up: Set n8n-core@0.106.0 and n8n-workflow@0.88.0 on n8n-node-dev * :bookmark: Release n8n-node-dev@0.45.0 * :arrow_up: Set n8n-core@0.106.0 and n8n-workflow@0.88.0 on n8n-nodes-base * :bookmark: Release n8n-nodes-base@0.163.0 * :bookmark: Release n8n-design-system@0.12.0 * :arrow_up: Set n8n-design-system@0.12.0 and n8n-workflow@0.88.0 on n8n-editor-ui * :bookmark: Release n8n-editor-ui@0.132.0 * :arrow_up: Set n8n-core@0.106.0, n8n-editor-ui@0.132.0, n8n-nodes-base@0.163.0 and n8n-workflow@0.88.0 on n8n * :bookmark: Release n8n@0.165.0 * fix default user bug * fix bug * update package lock * fix duplicate import * fix settings * fix templates access Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :zap: n8n 2952 personalisation (#2911) * refactor/update survey * update customers * Fix up personalization survey * fix recommendation logic * set to false * hide suggested nodes when empty * use keys * add missing logic * switch types * Fix logic * remove unused constants * add back constant * refactor filtering inputs * hide last input on personal * fix other * ✨ add current pw check for change password (#2912) * fix back button * Add current password input * add to modal * update package.json * delete mock file * delete mock file * get settings func * update router * update package lock * update package lock * Fix invite text * update error i18n * open personalization on search if not set * update error view i18n * update change password * update settings sidebar * remove import * fix sidebar * :goal_net: fix error for credential/workflow not found * update invite modal * ✨ persist skipping owner setup (#2894) * 🚧 added skipInstanceOwnerSetup to DB + route to save skipping * ✨ skipping owner setup persists * ✅ add tests for authorization and /owner/skip-setup * 🛠 refactor FE settings getter * 🛠 move setting setup stop to owner creation * :bug: fix wrong setting of User.isPending * :bug: fix isPending * 🏷 add isPending to PublicUser * :bug: fix unused import * update delete modal * change password modal * remove _label * sort keys * remove key * update key names * fix test endpoint * 🥅 Handle error workflows permissions (#2908) * Handle error workflows permissions * Fixed wrong query format * 🛠 refactor query Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com> * fix ts issue * fix list after ispending changes * fix error page bugs * fix error redirect * fix notification * :bug: fix survey import in migration * fix up spacing * update keys spacing * update keys * add space * update key * fix up more spacing * 🔐 add current password (#2919) * add curr pass * update key names * :bug: stringify tag ids * 🔐 check current password before update * add package lock * fix dep version * update version * 🐛 fix access for instance owner to credentials (#2927) * 🛠 stringify tag id on entity * 🔐 Update password requirements (#2920) * :zap: Update password requirements * :zap: Adjust random helpers * ✅ fix tests for currentPassword check * change redirection, add homepage * fix error view redirection * updated wording * fix setup redirection * update validator * remove successfully * update consumers * update settings redirect * on signup, redirect to homepage * update empty state * add space to emails * remove brackets * add opacity * update spacing * remove border from last user * personal details updated * update redirect on sign up * prevent text wrap * fix notification title line height * remove console log * 🐘 Support testing with Postgres and MySQL (#2886) * :card_file_box: Fix Postgres migrations * :zap: Add DB-specific scripts * :sparkles: Set up test connections * :zap: Add Postgres UUID check * :test_tube: Make test adjustments for Postgres * :zap: Refactor connection logic * :sparkles: Set up double init for Postgres * :pencil2: Add TODOs * :zap: Refactor DB dropping logic * :sparkles: Implement global teardown * :sparkles: Create TypeORM wrappers * :sparkles: Initial MySQL setup * :zap: Clean up Postgres connection options * :zap: Simplify by sharing bootstrap connection name * :card_file_box: Fix MySQL migrations * :fire: Remove comments * :zap: Use ES6 imports * :fire: Remove outdated comments * :zap: Centralize bootstrap connection name handles * :zap: Centralize database types * :pencil2: Update comment * :truck: Rename `findRepository` * :construction: Attempt to truncate MySQL * :sparkles: Implement creds router * :bug: Fix duplicated MySQL bootstrap * :bug: Fix misresolved merge conflict * :card_file_box: Fix tags migration * :card_file_box: Fix MySQL UM migration * :bug: Fix MySQL parallelization issues * :blue_book: Augment TypeORM to prevent error * :fire: Remove comments * :sparkles: Support one sqlite DB per suite run * :truck: Move `testDb` to own module * :fire: Deduplicate bootstrap Postgres logic * :fire: Remove unneeded comment * :zap: Make logger init calls consistent * :pencil2: Improve comment * :pencil2: Add dividers * :art: Improve formatting * :fire: Remove duplicate MySQL global setting * :truck: Move comment * :zap: Update default test script * :fire: Remove unneeded helper * :zap: Unmarshal answers from Postgres * :bug: Phase out `isTestRun` * :zap: Refactor `isEmailSetup` * :fire: Remove unneeded imports * :zap: Handle bootstrap connection errors * :fire: Remove unneeded imports * :fire: Remove outdated comments * :pencil2: Fix typos * :truck: Relocate `answersFormatter` * :rewind: Undo package.json miscommit * :fire: Remove unneeded import * :zap: Refactor test DB prefixing * :zap: Add no-leftover check to MySQL * :package: Update package.json * :zap: Autoincrement on simulated MySQL truncation * :fire: Remove debugging queries * ✏️ fix email template link expiry * 🔥 remove unused import * ✅ fix testing email not sent error * fix duplicate import * add package lock * fix export * change opacity * fix text issue * update action box * update error title * update forgot password * update survey * update product text * remove unset fields * add category to page events * remove duplicate import * update key * update key * update label type * 🎨 um/fe review (#2946) * :whale: Update Node.js versions of Docker images to 16 * :bug: Fix that some keyboard shortcuts did no longer work * N8N-3057 Fixed Keyboard shortcuts no longer working on / Fixed callDebounced function * N8N-3057 Update Debounce Function * N8N-3057 Refactor callDebounce function * N8N-3057 Update Dobounce Function * :bug: Fix issue with tooltips getting displayed behind node details view * fix tooltips z-index * move all element ui components * update package lock * :bug: Fix credentials list load issue (#2931) * always fetch credentials * only fetch credentials once * :zap: Allow to disable hiring banner (#2902) * :sparkles: Add flag * :zap: Adjust interfaces * :zap: Adjust store module * :zap: Adjust frontend settings * :zap: Adjust frontend display * :bug: Fix issue that ctrl + o did behave wrong on workflow templates page (#2934) * N8N-3094 Workflow Templates cmd-o acts on the Preview/Iframe * N8N-3094 Workflow Templates cmd-o acts on the Preview/Iframe * disable shortcuts for preview Co-authored-by: Mutasem <mutdmour@gmail.com> * :arrow_up: Update package-lock.json file * :bug: Fix sorting by field in Baserow Node (#2942) This fixes a bug which currently leads to the "Sorting" option of the node to be ignored. * :bug: Fix some i18n line break issues * :sparkles: Add Odoo Node (#2601) * added odoo scaffolding * update getting data from odoo instance * added scaffolding for main loop and request functions * added functions for CRUD opperations * improoved error handling for odooJSONRPCRequest * updated odoo node and fixing nodelinter issues * fixed alpabetical order * fixed types in odoo node * fixing linter errors * fixing linter errors * fixed data shape returned from man loop * updated node input types, added fields list to models * update when custom resource is selected options for fields list will be populated dynamicly * minor fixes * :hammer: fixed credential test, updating CRUD methods * :hammer: added additional fields to crm resource * :hammer: added descriptions, fixed credentials test bug * :hammer: standardize node and descriptions design * :hammer: removed comments * :hammer: added pagination to getAll operation * :zap: removed leftover function from previous implementation, removed required from optional fields * :zap: fixed id field, added indication of type and if required to field description, replaced string input in filters to fetched list of fields * :hammer: fetching list of models from odoo, added selection of fields to be returned to predefined models, fixes accordingly to review * :zap: Small improvements * :hammer: extracted adress fields into collection, changed fields to include in descriptions, minor tweaks * :zap: Improvements * :hammer: working on review * :hammer: fixed linter errors * :hammer: review wip * :hammer: review wip * :hammer: review wip * :zap: updated display name for URL in credentials * :hammer: added checks for valid id to delete and update * :zap: Minor improvements Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :bug: Handle Wise SCA requests (#2734) * :zap: Improve Wise error message after previous change * fix duplicate import * add package lock * fix export * change opacity * fix text issue * update action box * update error title * update forgot password * update survey * update product text * remove unset fields * add category to page events * remove duplicate import * update key * update key Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Tom <19203795+that-one-tom@users.noreply.github.com> Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com> Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: pemontto <939704+pemontto@users.noreply.github.com> * Move owner skip from settings * 🐛 SMTP fixes (#2937) * :fire: Remove `UM_` from SMTP env vars * :fire: Remove SMTP host default value * :zap: Update sender value * :zap: Update invite template * :zap: Update password reset template * :zap: Update `N8N_EMAIL_MODE` default value * :fire: Remove `EMAIL` from all SMTP vars * :sparkles: Implement `verifyConnection()` * :truck: Reposition comment * :pencil2: Fix typo * :pencil2: Minor env var documentation improvements * :art: Fix spacing * :art: Fix spacing * :card_file_box: Remove SMTP settings cache * :zap: Adjust log message * :zap: Update error message * :pencil2: Fix template typo * :pencil2: Adjust wording * :zap: Interpolate email into success toast * :pencil2: Adjust base message in `verifyConnection()` * :zap: Verify connection on password reset * :zap: Bring up POST /users SMTP check * :bug: remove cookie if cookie is not valid * :zap: verify connection on instantiation Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * 🔊 create logger helper for migrations (#2944) * 🔥 remove unused database * :loud_sound: add migration logging for sqlite * 🔥 remove unnecessary index creation * ⚡️ change log level to warn * 🐛 Fix issue with workflow process to initialize db connection correctly (#2948) * ✏️ update error messages for webhhook run/activation * 📈 Implement telemetry events (#2868) * Implement basic telemetry events * Fixing user id as part of the telemetry data * Added user id to be part of the tracked data * :sparkles: Create telemetry mock * :test_tube: Fix tests with telemetry mock * :test_tube: Fix missing key in authless endpoint * :blue_book: Create authless request type * :fire: Remove log * :bug: Fix `migration_strategy` assignment * :blue_book: Remove `instance_id` from `ITelemetryUserDeletionData` * :zap: Simplify concatenation * :zap: Simplify `track()` call signature * Fixed payload of telemetry to always include user_id * Fixing minor issues Co-authored-by: Iván Ovejero <ivov.src@gmail.com> * 🔊 Added logs to credentials, executions and workflows (#2915) * Added logs to credentials, executions and workflows * Some updates according to ivov's feedback * :zap: update log levels * ✅ fix tests Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :bug: fix telemetry error * fix conflicts with master * fix duplicate * add package-lock * :bug: Um/fixes (#2952) * add initials to avatar * redirect to signin if invalid token * update pluralization * add auth page category * data transferred * touch up setup page * update button to add cursor * fix personalization modal not closing * ✏️ fix environment name * 🐛 fix disabling UM * 🐛 fix email setup flag * 🐛 FE fixes 1 (#2953) * add initials to avatar * redirect to signin if invalid token * update pluralization * add auth page category * data transferred * touch up setup page * update button to add cursor * fix personalization modal not closing * capitalize labels, refactor text * Fixed the issue with telemetry data missing for personalization survey * Changed invite email text * 🐛 Fix quotes issue with postgres migration (#2958) * Changed text for invite link * 🐛 fix reset command for mysql * ✅ fix race condition in test DB creation * 🔐 block user creation if UM is disabled * 🥅 improve smtp setup issue error * :zap: update error message * refactor route rules * set package lock * fix access * remove capitalize * update input labels * refactor heading * change span to fragment * add route types * refactor views * ✅ fix increase timeout for mysql * :zap: correct logic of error message * refactor view names * :zap: update randomString * 📈 Added missing event regarding failed emails (#2964) * replace label with info * 🛠 refactor JWT-secret creation * remove duplicate key * remove unused part * remove semicolon * fix up i18n pattern * update translation keys * update urls * support i18n in nds * fix how external keys are handled * add source * 💥 update timestamp of UM migration * ✏️ small message updates * fix tracking * update notification line-height * fix avatar opacity * fix up empty state * shift focus to input * 🔐 Disable basic auth after owner has been set up (#2973) * Disable basic auth after owner has been set up * Remove unnecessary comparison * rename modal title * 🐛 use pgcrypto extension for uuid creation (#2977) * 📧 Added public url variable for emails (#2967) * Added public url variable for emails * Fixed base url for reset password - the current implementation overrides possibly existing path * Change variable name to editorUrl * Using correct name editorUrl for emails * Changed variable description * Improved base url naming and appending path so it remains consistent * Removed trailing slash from editor base url * 🌐 fix i18n pattern (#2970) * fix up i18n pattern * update translation keys * update urls * support i18n in nds * fix how external keys are handled * add source * Um/fixes 1000 (#2980) * fix select issue * 😫 hacky solution to circumvent pgcrypto (#2979) * fix owner bug after transfer. always fetch latest credentials * add confirmation modal to setup * Use webhook url as fallback when editor url is not defined * fix enter bug * update modal * update modal * update modal text, fix bug in settings view * Updating editor url to not append path * rename keys Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com> Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> Co-authored-by: Omar Ajoue <krynble@gmail.com> Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> Co-authored-by: Tom <19203795+that-one-tom@users.noreply.github.com> Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com> Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: pemontto <939704+pemontto@users.noreply.github.com>
2022-03-14 06:46:32 -07:00
return where;
:sparkles: Add tagging of workflows (#1647) * clean up dropdown * clean up focusoncreate * :zap: Ignore mistaken ID in POST /workflows * :zap: Fix undefined tag ID in PATCH /workflows * :zap: Shorten response for POST /tags * remove scss mixins * clean up imports * :zap: Implement validation with class-validator * address ivan's comments * implement modals * Fix lint issues * fix disabling shortcuts * fix focus issues * fix focus issues * fix focus issues with modal * fix linting issues * use dispatch * use constants for modal keys * fix focus * fix lint issues * remove unused prop * add modal root * fix lint issues * remove unused methods * fix shortcut * remove max width * :zap: Fix duplicate entry error for pg and MySQL * update rename messaging * update order of buttons * fix firefox overflow on windows * fix dropdown height * :hammer: refactor tag crud controllers * 🧹 remove unused imports * use variable for number of items * fix dropdown spacing * :zap: Restore type to fix build * :zap: Fix post-refactor PATCH /workflows/:id * :zap: Fix PATCH /workflows/:id for zero tags * :zap: Fix usage count becoming stringified * address max's comments * fix filter spacing * fix blur bug * address most of ivan's comments * address tags type concern * remove defaults * :zap: return tag id as string * :hammer: add hooks to tag CUD operations * 🏎 simplify timestamp pruning * remove blur event * fix onblur bug * :zap: Fix fs import to fix build * address max's comments * implement responsive tag container * fix lint issues * Set default dates in entities * :shirt: Fix lint in migrations * update tag limits * address ivan's comments * remove rename, refactor header, implement new designs for save, remove responsive tag container * update styling * update styling * implement responsive tag container * implement header tags edit * implement header tags edit * fix lint issues * implement expandable input * minor fixes * minor fixes * use variable * rename save as * duplicate fixes * :zap: Implement unique workflow names * :zap: Create /workflows/new endpoint * minor edit fixes * lint fixes * style fixes * hook up saving name * hook up tags * clean up impl * fix dirty state bug * update limit * update notification messages * on click outside * fix minor bug with count * lint fixes * :zap: Add query string params to /workflows/new * handle minor edge cases * handle minor edge cases * handle minor bugs; fix firefox dropdown issue * Fix min width * apply tags only after api success * remove count fix * :construction: Adjust to new qs requirements * clean up workflow tags impl, fix tags delete bug * fix minor issue * fix minor spacing issue * disable wrap for ops * fix viewport root; save on click in dropdown * save button loading when saving name/tags * implement max width on tags container * implement cleaner create experience * disable edit while updating * codacy hex color * refactor tags container * fix clickability * fix workflow open and count * clean up structure * fix up lint issues * :zap: Create migrations for unique workflow names * fix button size * increase workflow name limit for larger screen * tslint fixes * disable responsiveness for workflow modal * rename event * change min width for tags * clean up pr * :zap: Adjust quotes in MySQL migration * :zap: Adjust quotes in Postgres migration * address max's comments on styles * remove success toasts * add hover mode to name * minor fixes * refactor name preview * fix name input not to jiggle * finish up name input * Fix up add tags * clean up param * clean up scss * fix resizing name * fix resizing name * fix resize bug * clean up edit spacing * ignore on esc * fix input bug * focus input on clear * build * fix up add tags clickablity * remove scrollbars * move into folders * clean up multiple patch req * remove padding top from edit * update tags on enter * build * rollout blur on enter behavior * rollout esc behavior * fix tags bug when duplicating tags * move key to reload tags * update header spacing * build * update hex case * refactor workflow title * remove unusued prop * keep focus on error, fix bug on error * Fix bug with name / tags toggle on error * impl creating new workflow name * :zap: Refactor endpoint per new guidelines * support naming endpoint * :zap: Refactor to support numeric suffixes * :shirt: Lint migrations for unique workflow names * :zap: Add migrations set default dates to indexes * fix connection push bug * :zap: Lowercase default workflow name * :zap: Add prefixes to set default dates migration * :zap: Fix indentation on default dates migrations * :zap: Add temp ts-ignore for unrelated change * :zap: Adjust default dates migration for MySQL Remove change to data column in credentials_entity, already covered by Omar's migration. Also, fix quotes from table prefix addition. * :zap: Adjust quotes in dates migration for PG * fix safari color bug * fix count bug * fix scroll bugs in dropdown * expand filter size * apply box-sizing to main header * update workflow names in executions to be wrapped by quotes * fix bug where key is same in dropdown * fix firefox bug * move up push connection session * :hammer: Remove mistakenly added nullable property * :fire: Remove unneeded index drop-create (PG) * :fire: Remove unneeded table copying * :zap: Merge dates migration with tags migration * :hammer: Refactor endpoint and make wf name env * dropdown colors in firefox * update colors to use variables * update thumb color * change error message * remove 100 char maximum * fix bug with saving tags dropdowns multiple times * update error message when no name * :zap: Update name missing toast message * :zap: Update workflow already exists message * disable saving for executions * fix bug causing modal to close * make tags in workflow open clickable * increase workflow limit to 3 * remove success notifications * update header spacing * escape tag names * update tag and table colors * remove tags from export * build * clean up push connection dependencies * address ben's comments * revert tags optional interface * address comments * update duplicate message * build * fix eol * add one more eol * :zap: Update comment * add hover style for workflow open, fix up font weight Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com>
2021-05-29 11:31:21 -07:00
}
feat: Add User Management (#2636) * ✅ adjust tests * 🛠 refactor user invites to be indempotent (#2791) * 🔐 Encrypt SMTP pass for user management backend (#2793) * :package: Add crypto-js to /cli * :package: Update package-lock.json * :sparkles: Create type for SMTP config * :zap: Encrypt SMTP pass * :zap: Update format for `userManagement.emails.mode` * :zap: Update format for `binaryDataManager.mode` * :zap: Update format for `logs.level` * :fire: Remove logging * :shirt: Fix lint * 👰 n8n 2826 um wedding FE<>BE (#2789) * remove mocks * update authorization func * lock down default role * 🐛 fix requiring authentication for OPTIONS requests * :bug: fix cors and cookie issues in dev * update setup route Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * update telemetry * 🐛 preload role for users * :bug: remove auth for password reset routes * 🐛 fix forgot-password flow * :zap: allow workflow tag disabling * update telemetry init * add reset * clear error notifications on signin * remove load settings from node view * remove user id from user state * inherit existing user props * go back in history on button click * use replace to force redirect * update stories * :zap: add env check for tag create * :test_tube: Add `/users` tests for user management backend (#2790) * :zap: Refactor users namespace * :zap: Adjust fillout endpoint * :zap: Refactor initTestServer arg * :pencil2: Specify agent type * :pencil2: Specify role type * :zap: Tighten `/users/:id` check * :sparkles: Add initial tests * :truck: Reposition init server map * :zap: Set constants in `validatePassword()` * :zap: Tighten `/users/:id` check * :zap: Improve checks in `/users/:id` * :sparkles: Add tests for `/users/:id` * :package: Update package-lock.json * :zap: Simplify expectation * :zap: Reuse util for authless agent * :truck: Make role names consistent * :blue_book: Tighten namespaces map type * :fire: Remove unneeded default arg * :sparkles: Add tests for `POST /users` * :blue_book: Create test SMTP account type * :pencil2: Improve wording * :art: Formatting * :fire: Remove temp fix * :zap: Replace helper with config call * :zap: Fix failing tests * :fire: Remove outdated test * :fire: Remove unused helper * :zap: Increase readability of domain fetcher * :zap: Refactor payload validation * :fire: Remove repetition * :rewind: Restore logging * :zap: Initialize logger in tests * :fire: Remove redundancy from check * :truck: Move `globalOwnerRole` fetching to global scope * :fire: Remove unused imports * :truck: Move random utils to own module * :truck: Move test types to own module * :pencil2: Add dividers to utils * :pencil2: Reorder `initTestServer` param docstring * :pencil2: Add TODO comment * :zap: Dry up member creation * :zap: Tighten search criteria * :test_tube: Add expectation to `GET /users` * :zap: Create role fetcher utils * :zap: Create one more role fetch util * :fire: Remove unneeded DB query * :test_tube: Add expectation to `POST /users` * :test_tube: Add expectation to `DELETE /users/:id` * :test_tube: Add another expectation to `DELETE /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :test_tube: Adjust expectations in `POST /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :shirt: Fix build * :zap: Update method * :blue_book: Fix `userToDelete` type * :zap: Refactor `createAgent()` * :zap: Make role fetching global * :zap: Optimize roles fetching * :zap: Centralize member creation * :zap: Refactor truncation helper * :test_tube: Add teardown to `DELETE /users/:id` * :test_tube: Add DB expectations to users tests * :fire: Remove pass validation due to hash * :pencil2: Improve pass validation error message * :zap: Improve owner pass validation * :zap: Create logger initialization helper * :zap: Optimize helpers * :zap: Restructure `getAllRoles` helper * :test_tube: Add password reset flow tests for user management backend (#2807) * :zap: Refactor users namespace * :zap: Adjust fillout endpoint * :zap: Refactor initTestServer arg * :pencil2: Specify agent type * :pencil2: Specify role type * :zap: Tighten `/users/:id` check * :sparkles: Add initial tests * :truck: Reposition init server map * :zap: Set constants in `validatePassword()` * :zap: Tighten `/users/:id` check * :zap: Improve checks in `/users/:id` * :sparkles: Add tests for `/users/:id` * :package: Update package-lock.json * :zap: Simplify expectation * :zap: Reuse util for authless agent * :truck: Make role names consistent * :blue_book: Tighten namespaces map type * :fire: Remove unneeded default arg * :sparkles: Add tests for `POST /users` * :blue_book: Create test SMTP account type * :pencil2: Improve wording * :art: Formatting * :fire: Remove temp fix * :zap: Replace helper with config call * :zap: Fix failing tests * :fire: Remove outdated test * :sparkles: Add tests for password reset flow * :pencil2: Fix test wording * :zap: Set password reset namespace * :fire: Remove unused helper * :zap: Increase readability of domain fetcher * :zap: Refactor payload validation * :fire: Remove repetition * :rewind: Restore logging * :zap: Initialize logger in tests * :fire: Remove redundancy from check * :truck: Move `globalOwnerRole` fetching to global scope * :fire: Remove unused imports * :truck: Move random utils to own module * :truck: Move test types to own module * :pencil2: Add dividers to utils * :pencil2: Reorder `initTestServer` param docstring * :pencil2: Add TODO comment * :zap: Dry up member creation * :zap: Tighten search criteria * :test_tube: Add expectation to `GET /users` * :zap: Create role fetcher utils * :zap: Create one more role fetch util * :fire: Remove unneeded DB query * :test_tube: Add expectation to `POST /users` * :test_tube: Add expectation to `DELETE /users/:id` * :test_tube: Add another expectation to `DELETE /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :test_tube: Adjust expectations in `POST /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :blue_book: Add namespace name to type * :truck: Adjust imports * :zap: Optimize `globalOwnerRole` fetching * :test_tube: Add expectations * :shirt: Fix build * :shirt: Fix build * :zap: Update method * :zap: Update method * :test_tube: Fix `POST /change-password` test * :blue_book: Fix `userToDelete` type * :zap: Refactor `createAgent()` * :zap: Make role fetching global * :zap: Optimize roles fetching * :zap: Centralize member creation * :zap: Refactor truncation helper * :test_tube: Add teardown to `DELETE /users/:id` * :test_tube: Add DB expectations to users tests * :zap: Refactor as in users namespace * :test_tube: Add expectation to `POST /change-password` * :fire: Remove pass validation due to hash * :pencil2: Improve pass validation error message * :zap: Improve owner pass validation * :zap: Create logger initialization helper * :zap: Optimize helpers * :zap: Restructure `getAllRoles` helper * :zap: Update `truncate` calls * :bug: return 200 for non-existing user * ✅ fix tests for forgot-password and user creation * Update packages/editor-ui/src/components/MainSidebar.vue Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/components/Telemetry.vue Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * :truck: Fix imports * :zap: reset password just if password exists * Fix validation at `PATCH /workfows/:id` (#2819) * :bug: Validate entity only if workflow * :shirt: Fix build * 🔨 refactor response from user creation * 🐛 um email invite fix (#2833) * update users invite * fix notificaitons stacking on top of each other * remove unnessary check * fix type issues * update structure * fix types * 🐘 database migrations UM + password reset expiration (#2710) * Add table prefix and assign existing workflows and credentials to owner for sqlite * Added user management migration to MySQL * Fixed some missing table prefixes and removed unnecessary user id * Created migration for postgres and applies minor fixes * Fixed migration for sqlite by removing the unnecessary index and for mysql by removing unnecessary user data * Added password reset token expiration * Addressing comments made by Ben * ⚡️ add missing tablePrefix * ✅ fix tests + add tests for expiring pw-reset-token Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :zap: treat skipped personalizationSurvey as not answered * :bug: removing active workflows when deleting user, :bug: fix reinvite, :bug: fix resolve-signup-token, 🐘 remove workflowname uniqueness * ✅ Add DB state check tests (#2841) * :fire: Remove unneeded import * :fire: Remove unneeded vars * :pencil2: Improve naming * :test_tube: Add expectations to `POST /owner` * :test_tube: Add expectations to `PATCH /me` * :test_tube: Add expectation to `PATCH /me/password` * :pencil2: Clarify when owner is owner shell * :test_tube: Add more expectations * :rewind: Restore package-lock to parent branch state * Add logging to user management endpoints v2 (#2836) * :zap: Initialize logger in tests * :zap: Add logs to mailer * :zap: Add logs to middleware * :zap: Add logs to me endpoints * :zap: Add logs to owner endpoints * :zap: Add logs to pass flow endpoints * :zap: Add logs to users endpoints * :blue_book: Improve typings * :zap: Merge two logs into one * :zap: Adjust log type * :zap: Add password reset email log * :pencil2: Reword log message * :zap: Adjust log meta object * :zap: Add total to log * :pencil2: Add detail to log message * :pencil2: Reword log message * :pencil2: Reword log message * :bug: Make total users to set up accurate * :pencil2: Reword `Logger.debug()` messages * :pencil2: Phrasing change for consistency * :bug: Fix ID overridden in range query * :hammer: small refactoring * 🔐 add auth to push-connection * 🛠 ✅ Create credentials namespace and add tests (#2831) * :test_tube: Fix failing test * :blue_book: Improve `createAgent` signature * :truck: Fix `LoggerProxy` import * :sparkles: Create credentials endpoints namespace * :test_tube: Set up initial tests * :zap: Add validation to model * :zap: Adjust validation * :test_tube: Add test * :truck: Sort creds endpoints * :pencil2: Plan out pending tests * :test_tube: Add deletion tests * :test_tube: Add patch tests * :test_tube: Add get cred tests * :truck: Hoist import * :pencil2: Make test descriptions consistent * :pencil2: Adjust description * :test_tube: Add missing test * :pencil2: Make get descriptions consistent * :rewind: Undo line break * :zap: Refactor to simplify `saveCredential` * :test_tube: Add non-owned tests for owner * :pencil2: Improve naming * :pencil2: Add clarifying comments * :truck: Improve imports * :zap: Initialize config file * :fire: Remove unneeded import * :truck: Rename dir * :zap: Adjust deletion call * :zap: Adjust error code * :pencil2: Touch up comment * :zap: Optimize fetching with `@RelationId` * :test_tube: Add expectations * :zap: Simplify mock calls * :blue_book: Set deep readonly to object constants * :fire: Remove unused param and encryption key * :zap: Add more `@RelationId` calls in models * :rewind: Restore * :bug: no auth for .svg * 🛠 move auth cookie name to constant; 🐛 fix auth for push-connection * ✅ Add auth middleware tests (#2853) * :zap: Simplify existing suite * :test_tube: Validate that auth cookie exists * :pencil2: Move comment * :fire: Remove unneeded imports * :pencil2: Add clarifying comments * :pencil2: Document auth endpoints * :test_tube: Add middleware tests * :pencil2: Fix typos Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com> * 🔥 Remove test description wrappers (#2874) * :fire: Remove /owner test wrappers * :fire: Remove auth middleware test wrappers * :fire: Remove auth endpoints test wrappers * :fire: Remove overlooked middleware wrappers * :fire: Remove me namespace test wrappers Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * ✨ Runtime checks for credentials load and execute workflows (#2697) * Runtime checks for credentials load and execute workflows * Fixed from reviewers * Changed runtime validation for credentials to be on start instead of on demand * Refactored validations to use user id instead of whole User instance * Removed user entity from workflow project because it is no longer needed * General fixes and improvements to runtime checks * Remove query builder and improve styling * Fix lint issues * :zap: remove personalizationAnswers when fetching all users * ✅ fix failing get all users test * ✅ check authorization routes also for authentication * :bug: fix defaults in reset command * 🛠 refactorings from walkthrough (#2856) * :zap: Make `getTemplate` async * :zap: Remove query builder from `getCredentials` * :zap: Add save manual executions log message * :rewind: Restore and hide migrations logs * :zap: Centralize ignore paths check * :shirt: Fix build * :truck: Rename `hasOwner` to `isInstanceOwnerSetUp` * :zap: Add `isSetUp` flag to `User` * :zap: Add `isSetUp` to FE interface * :zap: Adjust `isSetUp` checks on FE * :shirt: Fix build * :zap: Adjust `isPendingUser()` check * :truck: Shorten helper name * :zap: Refactor as `isPending` per feedback * :pencil2: Update log message * :zap: Broaden check * :fire: Remove unneeded relation * :zap: Refactor query * :fire: Re-remove logs from migrations * 🛠 set up credentials router (#2882) * :zap: Refactor creds endpoints into router * :test_tube: Refactor creds tests to use router * :truck: Rename arg for consistency * :truck: Move `credentials.api.ts` outside /public * :truck: Rename constant for consistency * :blue_book: Simplify types * :fire: Remove unneeded arg * :truck: Rename router to controller * :zap: Shorten endpoint * :zap: Update `initTestServer()` arg * :zap: Mutate response body in GET /credentials * 🏎 improve performance of type cast for FE Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :bug: remove GET /login from auth * 🔀 merge master + FE update (#2905) * :sparkles: Add Templates (#2720) * Templates Bugs / Fixed Various Bugs / Multiply Api Request, Carousel Gradient, Core Nodes Filters ... * Updated MainSidebar Paddings * N8N-Templates Bugfixing - Remove Unnecesairy Icon (Shape), Refatctor infiniteScrollEnabled Prop + updated infiniterScroll functinality * N8N-2853 Fixed Carousel Arrows Bug after Cleaning the SearchBar * fix telemetry init * fix search tracking issues * N8N-2853 Created FilterTemplateNode Constant Array, Filter PlayButton and WebhookRespond from Nodes, Added Box for showing more nodes inside TemplateList, Updated NewWorkflowButton to primary, Fixed Markdown issue with Code * N8N-2853 Removed Placeholder if Workflows Or Collections are not found, Updated the Logic * fix telemetry events * clean up session id * update user inserted event * N8N-2853 Fixed Categories to Moving if the names are long * Add todos * Update Routes on loading * fix spacing * Update Border Color * Update Border Readius * fix filter fn * fix constant, console error * N8N-2853 PR Fixes, Refactoring, Removing unnecesairy code .. * N8N-2853 PR Fixes - Editor-ui Fixes, Refactoring, Removing Dead Code ... * N8N-2853 Refactor Card to LongCard * clean up spacing, replace css var * clean up spacing * set categories as optional in node * replace vars * refactor store * remove unnesssary import * fix error * fix templates view to start * add to cache * fix coll view data * fix categories * fix category event * fix collections carousel * fix initial load and search * fix infinite load * fix query param * fix scrolling issues * fix scroll to top * fix search * fix collections search * fix navigation bug * rename view * update package lock * rename workflow view * rename coll view * update routes * add wrapper component * set session id * fix search tracking * fix session tracking * remove deleted mutation * remove check for unsupported nodes * refactor filters * lazy load template * clean up types * refactor infinte scroll * fix end of search * Fix spacing * fix coll loading * fix types * fix coll view list * fix navigation * rename types * rename state * fix search responsiveness * fix coll view spacing * fix search view spacing * clean up views * set background color * center page not vert * fix workflow view * remove import * fix background color * fix background * clean props * clean up imports * refactor button * update background color * fix spacing issue * rename event * update telemetry event * update endpoints, add loading view, check for endpoint health * remove conolse log * N8N-2853 Fixed Menu Items Padding * replace endpoints * fix type issues * fix categories * N8N-2853 Fixed ParameterInput Placeholder after ElementUI Upgrade * update createdAt * :zap: Fix placeholder in creds config modal * :pencil2: Adjust docstring to `credText` placeholder version * N8N-2853 Optimized * N8N-2853 Optimized code * :zap: Add deployment type to FE settings * :zap: Add deployment type to interfaces * N8N-2853 Removed Animated prop from components * :zap: Add deployment type to store module * :sparkles: Create hiring banner * :zap: Display hiring banner * :rewind: Undo unrelated change * N8N-2853 Refactor TemplateFilters * :zap: Fix indentation * N8N-2853 Reorder items / TemplateList * :shirt: Fix lint * N8N-2853 Refactor TemplateFilters Component * N8N-2853 Reorder TemplateList * refactor template card * update timeout * fix removelistener * fix spacing * split enabled from offline * add spacing to go back * N8N-2853 Fixed Screens for Tablet & Mobile * N8N-2853 Update Stores Order * remove image componet * remove placeholder changes * N8N-2853 Fixed Chinnese Placeholders for El Select Component that comes from the Library Upgrade * N8N-2853 Fixed Vue Agile Console Warnings * N8N-2853 Update Collection Route * :pencil2: Update jobs URL * :truck: Move logging to root component * :zap: Refactor `deploymentType` to `isInternalUser` * :zap: Improve syntax * fix cut bug in readonly view * N8N-3012 Fixed Details section in templates with lots of description, Fixed Mardown Block with overflox-x * N8N-3012 Increased Font-size, Spacing and Line-height of the Categories Items * N8N-3012 Fixed Vue-agile client width error on resize * only delay redirect for root path * N8N-3012 Fixed Carousel Arrows that Disappear * N8N-3012 Make Loading Screen same color as Templates * N8N-3012 Markdown renders inline block as block code * add offline warning * hide log from workflow iframe * update text * make search button larger * N8N-3012 Categories / Tags extended all the way in details section * load data in cred modals * remove deleted message * add external hook * remove import * update env variable description * fix markdown width issue * disable telemetry for demo, add session id to template pages * fix telemetery bugs * N8N-3012 Not found Collections/Wokrkflow * N8N-3012 Checkboxes change order when categories are changed * N8N-3012 Refactor SortedCategories inside TemplateFilters component * fix firefox bug * add telemetry requirements * add error check * N8N-3012 Update GoBackButton to check if Route History is present * N8N-3012 Fixed WF Nodes Icons * hide workflow screenshots * remove unnessary mixins * rename prop * fix design a bit * rename data * clear workspace on destroy * fix copy paste bug * fix disabled state * N8N-3012 Fixed Saving/Leave without saving Modal * fix telemetry issue * fix telemetry issues, error bug * fix error notification * disable workflow menu items on templates * fix i18n elementui issue * Remove Emit - NodeType from HoverableNodeIcon component * TechnicalFixes: NavigateTo passed down as function should be helper * TechnicalFixes: Update NavigateTo function * TechnicalFixes: Add FilterCoreNodes directly as function * check for empty connecitions * fix titles * respect new lines * increase categories to be sliced * rename prop * onUseWorkflow * refactor click event * fix bug, refactor * fix loading story * add default * fix styles at right level of abstraction * add wrapper with width * remove loading blocks component * add story * rename prop * fix spacing * refactor tag, add story * move margin to container * fix tag redirect, remove unnessary check * make version optional * rename view * move from workflows to templates store * remove unnessary change * remove unnessary css * rename component * refactor collection card * add boolean to prevent shrink * clean up carousel * fix redirection bug on save * remove listeners to fix multiple listeners bug * remove unnessary types * clean up boolean set * fix node select bug * rename component * remove unnessary class * fix redirection bug * remove unnessary error * fix typo * fix blockquotes, pre * refactor markdown rendering * remove console log * escape markdown * fix safari bug * load active workflows to fix modal bug * :arrow_up: Update package-lock.json file * :zap: Add n8n version as header Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com> Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :bookmark: Release n8n-workflow@0.88.0 * :arrow_up: Set n8n-workflow@0.88.0 on n8n-core * :bookmark: Release n8n-core@0.106.0 * :arrow_up: Set n8n-core@0.106.0 and n8n-workflow@0.88.0 on n8n-node-dev * :bookmark: Release n8n-node-dev@0.45.0 * :arrow_up: Set n8n-core@0.106.0 and n8n-workflow@0.88.0 on n8n-nodes-base * :bookmark: Release n8n-nodes-base@0.163.0 * :bookmark: Release n8n-design-system@0.12.0 * :arrow_up: Set n8n-design-system@0.12.0 and n8n-workflow@0.88.0 on n8n-editor-ui * :bookmark: Release n8n-editor-ui@0.132.0 * :arrow_up: Set n8n-core@0.106.0, n8n-editor-ui@0.132.0, n8n-nodes-base@0.163.0 and n8n-workflow@0.88.0 on n8n * :bookmark: Release n8n@0.165.0 * fix default user bug * fix bug * update package lock * fix duplicate import * fix settings * fix templates access Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :zap: n8n 2952 personalisation (#2911) * refactor/update survey * update customers * Fix up personalization survey * fix recommendation logic * set to false * hide suggested nodes when empty * use keys * add missing logic * switch types * Fix logic * remove unused constants * add back constant * refactor filtering inputs * hide last input on personal * fix other * ✨ add current pw check for change password (#2912) * fix back button * Add current password input * add to modal * update package.json * delete mock file * delete mock file * get settings func * update router * update package lock * update package lock * Fix invite text * update error i18n * open personalization on search if not set * update error view i18n * update change password * update settings sidebar * remove import * fix sidebar * :goal_net: fix error for credential/workflow not found * update invite modal * ✨ persist skipping owner setup (#2894) * 🚧 added skipInstanceOwnerSetup to DB + route to save skipping * ✨ skipping owner setup persists * ✅ add tests for authorization and /owner/skip-setup * 🛠 refactor FE settings getter * 🛠 move setting setup stop to owner creation * :bug: fix wrong setting of User.isPending * :bug: fix isPending * 🏷 add isPending to PublicUser * :bug: fix unused import * update delete modal * change password modal * remove _label * sort keys * remove key * update key names * fix test endpoint * 🥅 Handle error workflows permissions (#2908) * Handle error workflows permissions * Fixed wrong query format * 🛠 refactor query Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com> * fix ts issue * fix list after ispending changes * fix error page bugs * fix error redirect * fix notification * :bug: fix survey import in migration * fix up spacing * update keys spacing * update keys * add space * update key * fix up more spacing * 🔐 add current password (#2919) * add curr pass * update key names * :bug: stringify tag ids * 🔐 check current password before update * add package lock * fix dep version * update version * 🐛 fix access for instance owner to credentials (#2927) * 🛠 stringify tag id on entity * 🔐 Update password requirements (#2920) * :zap: Update password requirements * :zap: Adjust random helpers * ✅ fix tests for currentPassword check * change redirection, add homepage * fix error view redirection * updated wording * fix setup redirection * update validator * remove successfully * update consumers * update settings redirect * on signup, redirect to homepage * update empty state * add space to emails * remove brackets * add opacity * update spacing * remove border from last user * personal details updated * update redirect on sign up * prevent text wrap * fix notification title line height * remove console log * 🐘 Support testing with Postgres and MySQL (#2886) * :card_file_box: Fix Postgres migrations * :zap: Add DB-specific scripts * :sparkles: Set up test connections * :zap: Add Postgres UUID check * :test_tube: Make test adjustments for Postgres * :zap: Refactor connection logic * :sparkles: Set up double init for Postgres * :pencil2: Add TODOs * :zap: Refactor DB dropping logic * :sparkles: Implement global teardown * :sparkles: Create TypeORM wrappers * :sparkles: Initial MySQL setup * :zap: Clean up Postgres connection options * :zap: Simplify by sharing bootstrap connection name * :card_file_box: Fix MySQL migrations * :fire: Remove comments * :zap: Use ES6 imports * :fire: Remove outdated comments * :zap: Centralize bootstrap connection name handles * :zap: Centralize database types * :pencil2: Update comment * :truck: Rename `findRepository` * :construction: Attempt to truncate MySQL * :sparkles: Implement creds router * :bug: Fix duplicated MySQL bootstrap * :bug: Fix misresolved merge conflict * :card_file_box: Fix tags migration * :card_file_box: Fix MySQL UM migration * :bug: Fix MySQL parallelization issues * :blue_book: Augment TypeORM to prevent error * :fire: Remove comments * :sparkles: Support one sqlite DB per suite run * :truck: Move `testDb` to own module * :fire: Deduplicate bootstrap Postgres logic * :fire: Remove unneeded comment * :zap: Make logger init calls consistent * :pencil2: Improve comment * :pencil2: Add dividers * :art: Improve formatting * :fire: Remove duplicate MySQL global setting * :truck: Move comment * :zap: Update default test script * :fire: Remove unneeded helper * :zap: Unmarshal answers from Postgres * :bug: Phase out `isTestRun` * :zap: Refactor `isEmailSetup` * :fire: Remove unneeded imports * :zap: Handle bootstrap connection errors * :fire: Remove unneeded imports * :fire: Remove outdated comments * :pencil2: Fix typos * :truck: Relocate `answersFormatter` * :rewind: Undo package.json miscommit * :fire: Remove unneeded import * :zap: Refactor test DB prefixing * :zap: Add no-leftover check to MySQL * :package: Update package.json * :zap: Autoincrement on simulated MySQL truncation * :fire: Remove debugging queries * ✏️ fix email template link expiry * 🔥 remove unused import * ✅ fix testing email not sent error * fix duplicate import * add package lock * fix export * change opacity * fix text issue * update action box * update error title * update forgot password * update survey * update product text * remove unset fields * add category to page events * remove duplicate import * update key * update key * update label type * 🎨 um/fe review (#2946) * :whale: Update Node.js versions of Docker images to 16 * :bug: Fix that some keyboard shortcuts did no longer work * N8N-3057 Fixed Keyboard shortcuts no longer working on / Fixed callDebounced function * N8N-3057 Update Debounce Function * N8N-3057 Refactor callDebounce function * N8N-3057 Update Dobounce Function * :bug: Fix issue with tooltips getting displayed behind node details view * fix tooltips z-index * move all element ui components * update package lock * :bug: Fix credentials list load issue (#2931) * always fetch credentials * only fetch credentials once * :zap: Allow to disable hiring banner (#2902) * :sparkles: Add flag * :zap: Adjust interfaces * :zap: Adjust store module * :zap: Adjust frontend settings * :zap: Adjust frontend display * :bug: Fix issue that ctrl + o did behave wrong on workflow templates page (#2934) * N8N-3094 Workflow Templates cmd-o acts on the Preview/Iframe * N8N-3094 Workflow Templates cmd-o acts on the Preview/Iframe * disable shortcuts for preview Co-authored-by: Mutasem <mutdmour@gmail.com> * :arrow_up: Update package-lock.json file * :bug: Fix sorting by field in Baserow Node (#2942) This fixes a bug which currently leads to the "Sorting" option of the node to be ignored. * :bug: Fix some i18n line break issues * :sparkles: Add Odoo Node (#2601) * added odoo scaffolding * update getting data from odoo instance * added scaffolding for main loop and request functions * added functions for CRUD opperations * improoved error handling for odooJSONRPCRequest * updated odoo node and fixing nodelinter issues * fixed alpabetical order * fixed types in odoo node * fixing linter errors * fixing linter errors * fixed data shape returned from man loop * updated node input types, added fields list to models * update when custom resource is selected options for fields list will be populated dynamicly * minor fixes * :hammer: fixed credential test, updating CRUD methods * :hammer: added additional fields to crm resource * :hammer: added descriptions, fixed credentials test bug * :hammer: standardize node and descriptions design * :hammer: removed comments * :hammer: added pagination to getAll operation * :zap: removed leftover function from previous implementation, removed required from optional fields * :zap: fixed id field, added indication of type and if required to field description, replaced string input in filters to fetched list of fields * :hammer: fetching list of models from odoo, added selection of fields to be returned to predefined models, fixes accordingly to review * :zap: Small improvements * :hammer: extracted adress fields into collection, changed fields to include in descriptions, minor tweaks * :zap: Improvements * :hammer: working on review * :hammer: fixed linter errors * :hammer: review wip * :hammer: review wip * :hammer: review wip * :zap: updated display name for URL in credentials * :hammer: added checks for valid id to delete and update * :zap: Minor improvements Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :bug: Handle Wise SCA requests (#2734) * :zap: Improve Wise error message after previous change * fix duplicate import * add package lock * fix export * change opacity * fix text issue * update action box * update error title * update forgot password * update survey * update product text * remove unset fields * add category to page events * remove duplicate import * update key * update key Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Tom <19203795+that-one-tom@users.noreply.github.com> Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com> Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: pemontto <939704+pemontto@users.noreply.github.com> * Move owner skip from settings * 🐛 SMTP fixes (#2937) * :fire: Remove `UM_` from SMTP env vars * :fire: Remove SMTP host default value * :zap: Update sender value * :zap: Update invite template * :zap: Update password reset template * :zap: Update `N8N_EMAIL_MODE` default value * :fire: Remove `EMAIL` from all SMTP vars * :sparkles: Implement `verifyConnection()` * :truck: Reposition comment * :pencil2: Fix typo * :pencil2: Minor env var documentation improvements * :art: Fix spacing * :art: Fix spacing * :card_file_box: Remove SMTP settings cache * :zap: Adjust log message * :zap: Update error message * :pencil2: Fix template typo * :pencil2: Adjust wording * :zap: Interpolate email into success toast * :pencil2: Adjust base message in `verifyConnection()` * :zap: Verify connection on password reset * :zap: Bring up POST /users SMTP check * :bug: remove cookie if cookie is not valid * :zap: verify connection on instantiation Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * 🔊 create logger helper for migrations (#2944) * 🔥 remove unused database * :loud_sound: add migration logging for sqlite * 🔥 remove unnecessary index creation * ⚡️ change log level to warn * 🐛 Fix issue with workflow process to initialize db connection correctly (#2948) * ✏️ update error messages for webhhook run/activation * 📈 Implement telemetry events (#2868) * Implement basic telemetry events * Fixing user id as part of the telemetry data * Added user id to be part of the tracked data * :sparkles: Create telemetry mock * :test_tube: Fix tests with telemetry mock * :test_tube: Fix missing key in authless endpoint * :blue_book: Create authless request type * :fire: Remove log * :bug: Fix `migration_strategy` assignment * :blue_book: Remove `instance_id` from `ITelemetryUserDeletionData` * :zap: Simplify concatenation * :zap: Simplify `track()` call signature * Fixed payload of telemetry to always include user_id * Fixing minor issues Co-authored-by: Iván Ovejero <ivov.src@gmail.com> * 🔊 Added logs to credentials, executions and workflows (#2915) * Added logs to credentials, executions and workflows * Some updates according to ivov's feedback * :zap: update log levels * ✅ fix tests Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :bug: fix telemetry error * fix conflicts with master * fix duplicate * add package-lock * :bug: Um/fixes (#2952) * add initials to avatar * redirect to signin if invalid token * update pluralization * add auth page category * data transferred * touch up setup page * update button to add cursor * fix personalization modal not closing * ✏️ fix environment name * 🐛 fix disabling UM * 🐛 fix email setup flag * 🐛 FE fixes 1 (#2953) * add initials to avatar * redirect to signin if invalid token * update pluralization * add auth page category * data transferred * touch up setup page * update button to add cursor * fix personalization modal not closing * capitalize labels, refactor text * Fixed the issue with telemetry data missing for personalization survey * Changed invite email text * 🐛 Fix quotes issue with postgres migration (#2958) * Changed text for invite link * 🐛 fix reset command for mysql * ✅ fix race condition in test DB creation * 🔐 block user creation if UM is disabled * 🥅 improve smtp setup issue error * :zap: update error message * refactor route rules * set package lock * fix access * remove capitalize * update input labels * refactor heading * change span to fragment * add route types * refactor views * ✅ fix increase timeout for mysql * :zap: correct logic of error message * refactor view names * :zap: update randomString * 📈 Added missing event regarding failed emails (#2964) * replace label with info * 🛠 refactor JWT-secret creation * remove duplicate key * remove unused part * remove semicolon * fix up i18n pattern * update translation keys * update urls * support i18n in nds * fix how external keys are handled * add source * 💥 update timestamp of UM migration * ✏️ small message updates * fix tracking * update notification line-height * fix avatar opacity * fix up empty state * shift focus to input * 🔐 Disable basic auth after owner has been set up (#2973) * Disable basic auth after owner has been set up * Remove unnecessary comparison * rename modal title * 🐛 use pgcrypto extension for uuid creation (#2977) * 📧 Added public url variable for emails (#2967) * Added public url variable for emails * Fixed base url for reset password - the current implementation overrides possibly existing path * Change variable name to editorUrl * Using correct name editorUrl for emails * Changed variable description * Improved base url naming and appending path so it remains consistent * Removed trailing slash from editor base url * 🌐 fix i18n pattern (#2970) * fix up i18n pattern * update translation keys * update urls * support i18n in nds * fix how external keys are handled * add source * Um/fixes 1000 (#2980) * fix select issue * 😫 hacky solution to circumvent pgcrypto (#2979) * fix owner bug after transfer. always fetch latest credentials * add confirmation modal to setup * Use webhook url as fallback when editor url is not defined * fix enter bug * update modal * update modal * update modal text, fix bug in settings view * Updating editor url to not append path * rename keys Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com> Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> Co-authored-by: Omar Ajoue <krynble@gmail.com> Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> Co-authored-by: Tom <19203795+that-one-tom@users.noreply.github.com> Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com> Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: pemontto <939704+pemontto@users.noreply.github.com>
2022-03-14 06:46:32 -07:00
/**
* Get the IDs of the workflows that have been shared with the user.
*/
export async function getSharedWorkflowIds(user: User): Promise<number[]> {
const sharedWorkflows = await Db.collections.SharedWorkflow.find({
feat: Add User Management (#2636) * ✅ adjust tests * 🛠 refactor user invites to be indempotent (#2791) * 🔐 Encrypt SMTP pass for user management backend (#2793) * :package: Add crypto-js to /cli * :package: Update package-lock.json * :sparkles: Create type for SMTP config * :zap: Encrypt SMTP pass * :zap: Update format for `userManagement.emails.mode` * :zap: Update format for `binaryDataManager.mode` * :zap: Update format for `logs.level` * :fire: Remove logging * :shirt: Fix lint * 👰 n8n 2826 um wedding FE<>BE (#2789) * remove mocks * update authorization func * lock down default role * 🐛 fix requiring authentication for OPTIONS requests * :bug: fix cors and cookie issues in dev * update setup route Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * update telemetry * 🐛 preload role for users * :bug: remove auth for password reset routes * 🐛 fix forgot-password flow * :zap: allow workflow tag disabling * update telemetry init * add reset * clear error notifications on signin * remove load settings from node view * remove user id from user state * inherit existing user props * go back in history on button click * use replace to force redirect * update stories * :zap: add env check for tag create * :test_tube: Add `/users` tests for user management backend (#2790) * :zap: Refactor users namespace * :zap: Adjust fillout endpoint * :zap: Refactor initTestServer arg * :pencil2: Specify agent type * :pencil2: Specify role type * :zap: Tighten `/users/:id` check * :sparkles: Add initial tests * :truck: Reposition init server map * :zap: Set constants in `validatePassword()` * :zap: Tighten `/users/:id` check * :zap: Improve checks in `/users/:id` * :sparkles: Add tests for `/users/:id` * :package: Update package-lock.json * :zap: Simplify expectation * :zap: Reuse util for authless agent * :truck: Make role names consistent * :blue_book: Tighten namespaces map type * :fire: Remove unneeded default arg * :sparkles: Add tests for `POST /users` * :blue_book: Create test SMTP account type * :pencil2: Improve wording * :art: Formatting * :fire: Remove temp fix * :zap: Replace helper with config call * :zap: Fix failing tests * :fire: Remove outdated test * :fire: Remove unused helper * :zap: Increase readability of domain fetcher * :zap: Refactor payload validation * :fire: Remove repetition * :rewind: Restore logging * :zap: Initialize logger in tests * :fire: Remove redundancy from check * :truck: Move `globalOwnerRole` fetching to global scope * :fire: Remove unused imports * :truck: Move random utils to own module * :truck: Move test types to own module * :pencil2: Add dividers to utils * :pencil2: Reorder `initTestServer` param docstring * :pencil2: Add TODO comment * :zap: Dry up member creation * :zap: Tighten search criteria * :test_tube: Add expectation to `GET /users` * :zap: Create role fetcher utils * :zap: Create one more role fetch util * :fire: Remove unneeded DB query * :test_tube: Add expectation to `POST /users` * :test_tube: Add expectation to `DELETE /users/:id` * :test_tube: Add another expectation to `DELETE /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :test_tube: Adjust expectations in `POST /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :shirt: Fix build * :zap: Update method * :blue_book: Fix `userToDelete` type * :zap: Refactor `createAgent()` * :zap: Make role fetching global * :zap: Optimize roles fetching * :zap: Centralize member creation * :zap: Refactor truncation helper * :test_tube: Add teardown to `DELETE /users/:id` * :test_tube: Add DB expectations to users tests * :fire: Remove pass validation due to hash * :pencil2: Improve pass validation error message * :zap: Improve owner pass validation * :zap: Create logger initialization helper * :zap: Optimize helpers * :zap: Restructure `getAllRoles` helper * :test_tube: Add password reset flow tests for user management backend (#2807) * :zap: Refactor users namespace * :zap: Adjust fillout endpoint * :zap: Refactor initTestServer arg * :pencil2: Specify agent type * :pencil2: Specify role type * :zap: Tighten `/users/:id` check * :sparkles: Add initial tests * :truck: Reposition init server map * :zap: Set constants in `validatePassword()` * :zap: Tighten `/users/:id` check * :zap: Improve checks in `/users/:id` * :sparkles: Add tests for `/users/:id` * :package: Update package-lock.json * :zap: Simplify expectation * :zap: Reuse util for authless agent * :truck: Make role names consistent * :blue_book: Tighten namespaces map type * :fire: Remove unneeded default arg * :sparkles: Add tests for `POST /users` * :blue_book: Create test SMTP account type * :pencil2: Improve wording * :art: Formatting * :fire: Remove temp fix * :zap: Replace helper with config call * :zap: Fix failing tests * :fire: Remove outdated test * :sparkles: Add tests for password reset flow * :pencil2: Fix test wording * :zap: Set password reset namespace * :fire: Remove unused helper * :zap: Increase readability of domain fetcher * :zap: Refactor payload validation * :fire: Remove repetition * :rewind: Restore logging * :zap: Initialize logger in tests * :fire: Remove redundancy from check * :truck: Move `globalOwnerRole` fetching to global scope * :fire: Remove unused imports * :truck: Move random utils to own module * :truck: Move test types to own module * :pencil2: Add dividers to utils * :pencil2: Reorder `initTestServer` param docstring * :pencil2: Add TODO comment * :zap: Dry up member creation * :zap: Tighten search criteria * :test_tube: Add expectation to `GET /users` * :zap: Create role fetcher utils * :zap: Create one more role fetch util * :fire: Remove unneeded DB query * :test_tube: Add expectation to `POST /users` * :test_tube: Add expectation to `DELETE /users/:id` * :test_tube: Add another expectation to `DELETE /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :test_tube: Adjust expectations in `POST /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :blue_book: Add namespace name to type * :truck: Adjust imports * :zap: Optimize `globalOwnerRole` fetching * :test_tube: Add expectations * :shirt: Fix build * :shirt: Fix build * :zap: Update method * :zap: Update method * :test_tube: Fix `POST /change-password` test * :blue_book: Fix `userToDelete` type * :zap: Refactor `createAgent()` * :zap: Make role fetching global * :zap: Optimize roles fetching * :zap: Centralize member creation * :zap: Refactor truncation helper * :test_tube: Add teardown to `DELETE /users/:id` * :test_tube: Add DB expectations to users tests * :zap: Refactor as in users namespace * :test_tube: Add expectation to `POST /change-password` * :fire: Remove pass validation due to hash * :pencil2: Improve pass validation error message * :zap: Improve owner pass validation * :zap: Create logger initialization helper * :zap: Optimize helpers * :zap: Restructure `getAllRoles` helper * :zap: Update `truncate` calls * :bug: return 200 for non-existing user * ✅ fix tests for forgot-password and user creation * Update packages/editor-ui/src/components/MainSidebar.vue Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/components/Telemetry.vue Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * :truck: Fix imports * :zap: reset password just if password exists * Fix validation at `PATCH /workfows/:id` (#2819) * :bug: Validate entity only if workflow * :shirt: Fix build * 🔨 refactor response from user creation * 🐛 um email invite fix (#2833) * update users invite * fix notificaitons stacking on top of each other * remove unnessary check * fix type issues * update structure * fix types * 🐘 database migrations UM + password reset expiration (#2710) * Add table prefix and assign existing workflows and credentials to owner for sqlite * Added user management migration to MySQL * Fixed some missing table prefixes and removed unnecessary user id * Created migration for postgres and applies minor fixes * Fixed migration for sqlite by removing the unnecessary index and for mysql by removing unnecessary user data * Added password reset token expiration * Addressing comments made by Ben * ⚡️ add missing tablePrefix * ✅ fix tests + add tests for expiring pw-reset-token Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :zap: treat skipped personalizationSurvey as not answered * :bug: removing active workflows when deleting user, :bug: fix reinvite, :bug: fix resolve-signup-token, 🐘 remove workflowname uniqueness * ✅ Add DB state check tests (#2841) * :fire: Remove unneeded import * :fire: Remove unneeded vars * :pencil2: Improve naming * :test_tube: Add expectations to `POST /owner` * :test_tube: Add expectations to `PATCH /me` * :test_tube: Add expectation to `PATCH /me/password` * :pencil2: Clarify when owner is owner shell * :test_tube: Add more expectations * :rewind: Restore package-lock to parent branch state * Add logging to user management endpoints v2 (#2836) * :zap: Initialize logger in tests * :zap: Add logs to mailer * :zap: Add logs to middleware * :zap: Add logs to me endpoints * :zap: Add logs to owner endpoints * :zap: Add logs to pass flow endpoints * :zap: Add logs to users endpoints * :blue_book: Improve typings * :zap: Merge two logs into one * :zap: Adjust log type * :zap: Add password reset email log * :pencil2: Reword log message * :zap: Adjust log meta object * :zap: Add total to log * :pencil2: Add detail to log message * :pencil2: Reword log message * :pencil2: Reword log message * :bug: Make total users to set up accurate * :pencil2: Reword `Logger.debug()` messages * :pencil2: Phrasing change for consistency * :bug: Fix ID overridden in range query * :hammer: small refactoring * 🔐 add auth to push-connection * 🛠 ✅ Create credentials namespace and add tests (#2831) * :test_tube: Fix failing test * :blue_book: Improve `createAgent` signature * :truck: Fix `LoggerProxy` import * :sparkles: Create credentials endpoints namespace * :test_tube: Set up initial tests * :zap: Add validation to model * :zap: Adjust validation * :test_tube: Add test * :truck: Sort creds endpoints * :pencil2: Plan out pending tests * :test_tube: Add deletion tests * :test_tube: Add patch tests * :test_tube: Add get cred tests * :truck: Hoist import * :pencil2: Make test descriptions consistent * :pencil2: Adjust description * :test_tube: Add missing test * :pencil2: Make get descriptions consistent * :rewind: Undo line break * :zap: Refactor to simplify `saveCredential` * :test_tube: Add non-owned tests for owner * :pencil2: Improve naming * :pencil2: Add clarifying comments * :truck: Improve imports * :zap: Initialize config file * :fire: Remove unneeded import * :truck: Rename dir * :zap: Adjust deletion call * :zap: Adjust error code * :pencil2: Touch up comment * :zap: Optimize fetching with `@RelationId` * :test_tube: Add expectations * :zap: Simplify mock calls * :blue_book: Set deep readonly to object constants * :fire: Remove unused param and encryption key * :zap: Add more `@RelationId` calls in models * :rewind: Restore * :bug: no auth for .svg * 🛠 move auth cookie name to constant; 🐛 fix auth for push-connection * ✅ Add auth middleware tests (#2853) * :zap: Simplify existing suite * :test_tube: Validate that auth cookie exists * :pencil2: Move comment * :fire: Remove unneeded imports * :pencil2: Add clarifying comments * :pencil2: Document auth endpoints * :test_tube: Add middleware tests * :pencil2: Fix typos Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com> * 🔥 Remove test description wrappers (#2874) * :fire: Remove /owner test wrappers * :fire: Remove auth middleware test wrappers * :fire: Remove auth endpoints test wrappers * :fire: Remove overlooked middleware wrappers * :fire: Remove me namespace test wrappers Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * ✨ Runtime checks for credentials load and execute workflows (#2697) * Runtime checks for credentials load and execute workflows * Fixed from reviewers * Changed runtime validation for credentials to be on start instead of on demand * Refactored validations to use user id instead of whole User instance * Removed user entity from workflow project because it is no longer needed * General fixes and improvements to runtime checks * Remove query builder and improve styling * Fix lint issues * :zap: remove personalizationAnswers when fetching all users * ✅ fix failing get all users test * ✅ check authorization routes also for authentication * :bug: fix defaults in reset command * 🛠 refactorings from walkthrough (#2856) * :zap: Make `getTemplate` async * :zap: Remove query builder from `getCredentials` * :zap: Add save manual executions log message * :rewind: Restore and hide migrations logs * :zap: Centralize ignore paths check * :shirt: Fix build * :truck: Rename `hasOwner` to `isInstanceOwnerSetUp` * :zap: Add `isSetUp` flag to `User` * :zap: Add `isSetUp` to FE interface * :zap: Adjust `isSetUp` checks on FE * :shirt: Fix build * :zap: Adjust `isPendingUser()` check * :truck: Shorten helper name * :zap: Refactor as `isPending` per feedback * :pencil2: Update log message * :zap: Broaden check * :fire: Remove unneeded relation * :zap: Refactor query * :fire: Re-remove logs from migrations * 🛠 set up credentials router (#2882) * :zap: Refactor creds endpoints into router * :test_tube: Refactor creds tests to use router * :truck: Rename arg for consistency * :truck: Move `credentials.api.ts` outside /public * :truck: Rename constant for consistency * :blue_book: Simplify types * :fire: Remove unneeded arg * :truck: Rename router to controller * :zap: Shorten endpoint * :zap: Update `initTestServer()` arg * :zap: Mutate response body in GET /credentials * 🏎 improve performance of type cast for FE Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :bug: remove GET /login from auth * 🔀 merge master + FE update (#2905) * :sparkles: Add Templates (#2720) * Templates Bugs / Fixed Various Bugs / Multiply Api Request, Carousel Gradient, Core Nodes Filters ... * Updated MainSidebar Paddings * N8N-Templates Bugfixing - Remove Unnecesairy Icon (Shape), Refatctor infiniteScrollEnabled Prop + updated infiniterScroll functinality * N8N-2853 Fixed Carousel Arrows Bug after Cleaning the SearchBar * fix telemetry init * fix search tracking issues * N8N-2853 Created FilterTemplateNode Constant Array, Filter PlayButton and WebhookRespond from Nodes, Added Box for showing more nodes inside TemplateList, Updated NewWorkflowButton to primary, Fixed Markdown issue with Code * N8N-2853 Removed Placeholder if Workflows Or Collections are not found, Updated the Logic * fix telemetry events * clean up session id * update user inserted event * N8N-2853 Fixed Categories to Moving if the names are long * Add todos * Update Routes on loading * fix spacing * Update Border Color * Update Border Readius * fix filter fn * fix constant, console error * N8N-2853 PR Fixes, Refactoring, Removing unnecesairy code .. * N8N-2853 PR Fixes - Editor-ui Fixes, Refactoring, Removing Dead Code ... * N8N-2853 Refactor Card to LongCard * clean up spacing, replace css var * clean up spacing * set categories as optional in node * replace vars * refactor store * remove unnesssary import * fix error * fix templates view to start * add to cache * fix coll view data * fix categories * fix category event * fix collections carousel * fix initial load and search * fix infinite load * fix query param * fix scrolling issues * fix scroll to top * fix search * fix collections search * fix navigation bug * rename view * update package lock * rename workflow view * rename coll view * update routes * add wrapper component * set session id * fix search tracking * fix session tracking * remove deleted mutation * remove check for unsupported nodes * refactor filters * lazy load template * clean up types * refactor infinte scroll * fix end of search * Fix spacing * fix coll loading * fix types * fix coll view list * fix navigation * rename types * rename state * fix search responsiveness * fix coll view spacing * fix search view spacing * clean up views * set background color * center page not vert * fix workflow view * remove import * fix background color * fix background * clean props * clean up imports * refactor button * update background color * fix spacing issue * rename event * update telemetry event * update endpoints, add loading view, check for endpoint health * remove conolse log * N8N-2853 Fixed Menu Items Padding * replace endpoints * fix type issues * fix categories * N8N-2853 Fixed ParameterInput Placeholder after ElementUI Upgrade * update createdAt * :zap: Fix placeholder in creds config modal * :pencil2: Adjust docstring to `credText` placeholder version * N8N-2853 Optimized * N8N-2853 Optimized code * :zap: Add deployment type to FE settings * :zap: Add deployment type to interfaces * N8N-2853 Removed Animated prop from components * :zap: Add deployment type to store module * :sparkles: Create hiring banner * :zap: Display hiring banner * :rewind: Undo unrelated change * N8N-2853 Refactor TemplateFilters * :zap: Fix indentation * N8N-2853 Reorder items / TemplateList * :shirt: Fix lint * N8N-2853 Refactor TemplateFilters Component * N8N-2853 Reorder TemplateList * refactor template card * update timeout * fix removelistener * fix spacing * split enabled from offline * add spacing to go back * N8N-2853 Fixed Screens for Tablet & Mobile * N8N-2853 Update Stores Order * remove image componet * remove placeholder changes * N8N-2853 Fixed Chinnese Placeholders for El Select Component that comes from the Library Upgrade * N8N-2853 Fixed Vue Agile Console Warnings * N8N-2853 Update Collection Route * :pencil2: Update jobs URL * :truck: Move logging to root component * :zap: Refactor `deploymentType` to `isInternalUser` * :zap: Improve syntax * fix cut bug in readonly view * N8N-3012 Fixed Details section in templates with lots of description, Fixed Mardown Block with overflox-x * N8N-3012 Increased Font-size, Spacing and Line-height of the Categories Items * N8N-3012 Fixed Vue-agile client width error on resize * only delay redirect for root path * N8N-3012 Fixed Carousel Arrows that Disappear * N8N-3012 Make Loading Screen same color as Templates * N8N-3012 Markdown renders inline block as block code * add offline warning * hide log from workflow iframe * update text * make search button larger * N8N-3012 Categories / Tags extended all the way in details section * load data in cred modals * remove deleted message * add external hook * remove import * update env variable description * fix markdown width issue * disable telemetry for demo, add session id to template pages * fix telemetery bugs * N8N-3012 Not found Collections/Wokrkflow * N8N-3012 Checkboxes change order when categories are changed * N8N-3012 Refactor SortedCategories inside TemplateFilters component * fix firefox bug * add telemetry requirements * add error check * N8N-3012 Update GoBackButton to check if Route History is present * N8N-3012 Fixed WF Nodes Icons * hide workflow screenshots * remove unnessary mixins * rename prop * fix design a bit * rename data * clear workspace on destroy * fix copy paste bug * fix disabled state * N8N-3012 Fixed Saving/Leave without saving Modal * fix telemetry issue * fix telemetry issues, error bug * fix error notification * disable workflow menu items on templates * fix i18n elementui issue * Remove Emit - NodeType from HoverableNodeIcon component * TechnicalFixes: NavigateTo passed down as function should be helper * TechnicalFixes: Update NavigateTo function * TechnicalFixes: Add FilterCoreNodes directly as function * check for empty connecitions * fix titles * respect new lines * increase categories to be sliced * rename prop * onUseWorkflow * refactor click event * fix bug, refactor * fix loading story * add default * fix styles at right level of abstraction * add wrapper with width * remove loading blocks component * add story * rename prop * fix spacing * refactor tag, add story * move margin to container * fix tag redirect, remove unnessary check * make version optional * rename view * move from workflows to templates store * remove unnessary change * remove unnessary css * rename component * refactor collection card * add boolean to prevent shrink * clean up carousel * fix redirection bug on save * remove listeners to fix multiple listeners bug * remove unnessary types * clean up boolean set * fix node select bug * rename component * remove unnessary class * fix redirection bug * remove unnessary error * fix typo * fix blockquotes, pre * refactor markdown rendering * remove console log * escape markdown * fix safari bug * load active workflows to fix modal bug * :arrow_up: Update package-lock.json file * :zap: Add n8n version as header Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com> Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :bookmark: Release n8n-workflow@0.88.0 * :arrow_up: Set n8n-workflow@0.88.0 on n8n-core * :bookmark: Release n8n-core@0.106.0 * :arrow_up: Set n8n-core@0.106.0 and n8n-workflow@0.88.0 on n8n-node-dev * :bookmark: Release n8n-node-dev@0.45.0 * :arrow_up: Set n8n-core@0.106.0 and n8n-workflow@0.88.0 on n8n-nodes-base * :bookmark: Release n8n-nodes-base@0.163.0 * :bookmark: Release n8n-design-system@0.12.0 * :arrow_up: Set n8n-design-system@0.12.0 and n8n-workflow@0.88.0 on n8n-editor-ui * :bookmark: Release n8n-editor-ui@0.132.0 * :arrow_up: Set n8n-core@0.106.0, n8n-editor-ui@0.132.0, n8n-nodes-base@0.163.0 and n8n-workflow@0.88.0 on n8n * :bookmark: Release n8n@0.165.0 * fix default user bug * fix bug * update package lock * fix duplicate import * fix settings * fix templates access Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :zap: n8n 2952 personalisation (#2911) * refactor/update survey * update customers * Fix up personalization survey * fix recommendation logic * set to false * hide suggested nodes when empty * use keys * add missing logic * switch types * Fix logic * remove unused constants * add back constant * refactor filtering inputs * hide last input on personal * fix other * ✨ add current pw check for change password (#2912) * fix back button * Add current password input * add to modal * update package.json * delete mock file * delete mock file * get settings func * update router * update package lock * update package lock * Fix invite text * update error i18n * open personalization on search if not set * update error view i18n * update change password * update settings sidebar * remove import * fix sidebar * :goal_net: fix error for credential/workflow not found * update invite modal * ✨ persist skipping owner setup (#2894) * 🚧 added skipInstanceOwnerSetup to DB + route to save skipping * ✨ skipping owner setup persists * ✅ add tests for authorization and /owner/skip-setup * 🛠 refactor FE settings getter * 🛠 move setting setup stop to owner creation * :bug: fix wrong setting of User.isPending * :bug: fix isPending * 🏷 add isPending to PublicUser * :bug: fix unused import * update delete modal * change password modal * remove _label * sort keys * remove key * update key names * fix test endpoint * 🥅 Handle error workflows permissions (#2908) * Handle error workflows permissions * Fixed wrong query format * 🛠 refactor query Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com> * fix ts issue * fix list after ispending changes * fix error page bugs * fix error redirect * fix notification * :bug: fix survey import in migration * fix up spacing * update keys spacing * update keys * add space * update key * fix up more spacing * 🔐 add current password (#2919) * add curr pass * update key names * :bug: stringify tag ids * 🔐 check current password before update * add package lock * fix dep version * update version * 🐛 fix access for instance owner to credentials (#2927) * 🛠 stringify tag id on entity * 🔐 Update password requirements (#2920) * :zap: Update password requirements * :zap: Adjust random helpers * ✅ fix tests for currentPassword check * change redirection, add homepage * fix error view redirection * updated wording * fix setup redirection * update validator * remove successfully * update consumers * update settings redirect * on signup, redirect to homepage * update empty state * add space to emails * remove brackets * add opacity * update spacing * remove border from last user * personal details updated * update redirect on sign up * prevent text wrap * fix notification title line height * remove console log * 🐘 Support testing with Postgres and MySQL (#2886) * :card_file_box: Fix Postgres migrations * :zap: Add DB-specific scripts * :sparkles: Set up test connections * :zap: Add Postgres UUID check * :test_tube: Make test adjustments for Postgres * :zap: Refactor connection logic * :sparkles: Set up double init for Postgres * :pencil2: Add TODOs * :zap: Refactor DB dropping logic * :sparkles: Implement global teardown * :sparkles: Create TypeORM wrappers * :sparkles: Initial MySQL setup * :zap: Clean up Postgres connection options * :zap: Simplify by sharing bootstrap connection name * :card_file_box: Fix MySQL migrations * :fire: Remove comments * :zap: Use ES6 imports * :fire: Remove outdated comments * :zap: Centralize bootstrap connection name handles * :zap: Centralize database types * :pencil2: Update comment * :truck: Rename `findRepository` * :construction: Attempt to truncate MySQL * :sparkles: Implement creds router * :bug: Fix duplicated MySQL bootstrap * :bug: Fix misresolved merge conflict * :card_file_box: Fix tags migration * :card_file_box: Fix MySQL UM migration * :bug: Fix MySQL parallelization issues * :blue_book: Augment TypeORM to prevent error * :fire: Remove comments * :sparkles: Support one sqlite DB per suite run * :truck: Move `testDb` to own module * :fire: Deduplicate bootstrap Postgres logic * :fire: Remove unneeded comment * :zap: Make logger init calls consistent * :pencil2: Improve comment * :pencil2: Add dividers * :art: Improve formatting * :fire: Remove duplicate MySQL global setting * :truck: Move comment * :zap: Update default test script * :fire: Remove unneeded helper * :zap: Unmarshal answers from Postgres * :bug: Phase out `isTestRun` * :zap: Refactor `isEmailSetup` * :fire: Remove unneeded imports * :zap: Handle bootstrap connection errors * :fire: Remove unneeded imports * :fire: Remove outdated comments * :pencil2: Fix typos * :truck: Relocate `answersFormatter` * :rewind: Undo package.json miscommit * :fire: Remove unneeded import * :zap: Refactor test DB prefixing * :zap: Add no-leftover check to MySQL * :package: Update package.json * :zap: Autoincrement on simulated MySQL truncation * :fire: Remove debugging queries * ✏️ fix email template link expiry * 🔥 remove unused import * ✅ fix testing email not sent error * fix duplicate import * add package lock * fix export * change opacity * fix text issue * update action box * update error title * update forgot password * update survey * update product text * remove unset fields * add category to page events * remove duplicate import * update key * update key * update label type * 🎨 um/fe review (#2946) * :whale: Update Node.js versions of Docker images to 16 * :bug: Fix that some keyboard shortcuts did no longer work * N8N-3057 Fixed Keyboard shortcuts no longer working on / Fixed callDebounced function * N8N-3057 Update Debounce Function * N8N-3057 Refactor callDebounce function * N8N-3057 Update Dobounce Function * :bug: Fix issue with tooltips getting displayed behind node details view * fix tooltips z-index * move all element ui components * update package lock * :bug: Fix credentials list load issue (#2931) * always fetch credentials * only fetch credentials once * :zap: Allow to disable hiring banner (#2902) * :sparkles: Add flag * :zap: Adjust interfaces * :zap: Adjust store module * :zap: Adjust frontend settings * :zap: Adjust frontend display * :bug: Fix issue that ctrl + o did behave wrong on workflow templates page (#2934) * N8N-3094 Workflow Templates cmd-o acts on the Preview/Iframe * N8N-3094 Workflow Templates cmd-o acts on the Preview/Iframe * disable shortcuts for preview Co-authored-by: Mutasem <mutdmour@gmail.com> * :arrow_up: Update package-lock.json file * :bug: Fix sorting by field in Baserow Node (#2942) This fixes a bug which currently leads to the "Sorting" option of the node to be ignored. * :bug: Fix some i18n line break issues * :sparkles: Add Odoo Node (#2601) * added odoo scaffolding * update getting data from odoo instance * added scaffolding for main loop and request functions * added functions for CRUD opperations * improoved error handling for odooJSONRPCRequest * updated odoo node and fixing nodelinter issues * fixed alpabetical order * fixed types in odoo node * fixing linter errors * fixing linter errors * fixed data shape returned from man loop * updated node input types, added fields list to models * update when custom resource is selected options for fields list will be populated dynamicly * minor fixes * :hammer: fixed credential test, updating CRUD methods * :hammer: added additional fields to crm resource * :hammer: added descriptions, fixed credentials test bug * :hammer: standardize node and descriptions design * :hammer: removed comments * :hammer: added pagination to getAll operation * :zap: removed leftover function from previous implementation, removed required from optional fields * :zap: fixed id field, added indication of type and if required to field description, replaced string input in filters to fetched list of fields * :hammer: fetching list of models from odoo, added selection of fields to be returned to predefined models, fixes accordingly to review * :zap: Small improvements * :hammer: extracted adress fields into collection, changed fields to include in descriptions, minor tweaks * :zap: Improvements * :hammer: working on review * :hammer: fixed linter errors * :hammer: review wip * :hammer: review wip * :hammer: review wip * :zap: updated display name for URL in credentials * :hammer: added checks for valid id to delete and update * :zap: Minor improvements Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :bug: Handle Wise SCA requests (#2734) * :zap: Improve Wise error message after previous change * fix duplicate import * add package lock * fix export * change opacity * fix text issue * update action box * update error title * update forgot password * update survey * update product text * remove unset fields * add category to page events * remove duplicate import * update key * update key Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Tom <19203795+that-one-tom@users.noreply.github.com> Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com> Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: pemontto <939704+pemontto@users.noreply.github.com> * Move owner skip from settings * 🐛 SMTP fixes (#2937) * :fire: Remove `UM_` from SMTP env vars * :fire: Remove SMTP host default value * :zap: Update sender value * :zap: Update invite template * :zap: Update password reset template * :zap: Update `N8N_EMAIL_MODE` default value * :fire: Remove `EMAIL` from all SMTP vars * :sparkles: Implement `verifyConnection()` * :truck: Reposition comment * :pencil2: Fix typo * :pencil2: Minor env var documentation improvements * :art: Fix spacing * :art: Fix spacing * :card_file_box: Remove SMTP settings cache * :zap: Adjust log message * :zap: Update error message * :pencil2: Fix template typo * :pencil2: Adjust wording * :zap: Interpolate email into success toast * :pencil2: Adjust base message in `verifyConnection()` * :zap: Verify connection on password reset * :zap: Bring up POST /users SMTP check * :bug: remove cookie if cookie is not valid * :zap: verify connection on instantiation Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * 🔊 create logger helper for migrations (#2944) * 🔥 remove unused database * :loud_sound: add migration logging for sqlite * 🔥 remove unnecessary index creation * ⚡️ change log level to warn * 🐛 Fix issue with workflow process to initialize db connection correctly (#2948) * ✏️ update error messages for webhhook run/activation * 📈 Implement telemetry events (#2868) * Implement basic telemetry events * Fixing user id as part of the telemetry data * Added user id to be part of the tracked data * :sparkles: Create telemetry mock * :test_tube: Fix tests with telemetry mock * :test_tube: Fix missing key in authless endpoint * :blue_book: Create authless request type * :fire: Remove log * :bug: Fix `migration_strategy` assignment * :blue_book: Remove `instance_id` from `ITelemetryUserDeletionData` * :zap: Simplify concatenation * :zap: Simplify `track()` call signature * Fixed payload of telemetry to always include user_id * Fixing minor issues Co-authored-by: Iván Ovejero <ivov.src@gmail.com> * 🔊 Added logs to credentials, executions and workflows (#2915) * Added logs to credentials, executions and workflows * Some updates according to ivov's feedback * :zap: update log levels * ✅ fix tests Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :bug: fix telemetry error * fix conflicts with master * fix duplicate * add package-lock * :bug: Um/fixes (#2952) * add initials to avatar * redirect to signin if invalid token * update pluralization * add auth page category * data transferred * touch up setup page * update button to add cursor * fix personalization modal not closing * ✏️ fix environment name * 🐛 fix disabling UM * 🐛 fix email setup flag * 🐛 FE fixes 1 (#2953) * add initials to avatar * redirect to signin if invalid token * update pluralization * add auth page category * data transferred * touch up setup page * update button to add cursor * fix personalization modal not closing * capitalize labels, refactor text * Fixed the issue with telemetry data missing for personalization survey * Changed invite email text * 🐛 Fix quotes issue with postgres migration (#2958) * Changed text for invite link * 🐛 fix reset command for mysql * ✅ fix race condition in test DB creation * 🔐 block user creation if UM is disabled * 🥅 improve smtp setup issue error * :zap: update error message * refactor route rules * set package lock * fix access * remove capitalize * update input labels * refactor heading * change span to fragment * add route types * refactor views * ✅ fix increase timeout for mysql * :zap: correct logic of error message * refactor view names * :zap: update randomString * 📈 Added missing event regarding failed emails (#2964) * replace label with info * 🛠 refactor JWT-secret creation * remove duplicate key * remove unused part * remove semicolon * fix up i18n pattern * update translation keys * update urls * support i18n in nds * fix how external keys are handled * add source * 💥 update timestamp of UM migration * ✏️ small message updates * fix tracking * update notification line-height * fix avatar opacity * fix up empty state * shift focus to input * 🔐 Disable basic auth after owner has been set up (#2973) * Disable basic auth after owner has been set up * Remove unnecessary comparison * rename modal title * 🐛 use pgcrypto extension for uuid creation (#2977) * 📧 Added public url variable for emails (#2967) * Added public url variable for emails * Fixed base url for reset password - the current implementation overrides possibly existing path * Change variable name to editorUrl * Using correct name editorUrl for emails * Changed variable description * Improved base url naming and appending path so it remains consistent * Removed trailing slash from editor base url * 🌐 fix i18n pattern (#2970) * fix up i18n pattern * update translation keys * update urls * support i18n in nds * fix how external keys are handled * add source * Um/fixes 1000 (#2980) * fix select issue * 😫 hacky solution to circumvent pgcrypto (#2979) * fix owner bug after transfer. always fetch latest credentials * add confirmation modal to setup * Use webhook url as fallback when editor url is not defined * fix enter bug * update modal * update modal * update modal text, fix bug in settings view * Updating editor url to not append path * rename keys Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com> Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> Co-authored-by: Omar Ajoue <krynble@gmail.com> Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> Co-authored-by: Tom <19203795+that-one-tom@users.noreply.github.com> Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com> Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: pemontto <939704+pemontto@users.noreply.github.com>
2022-03-14 06:46:32 -07:00
relations: ['workflow'],
where: whereClause({
user,
entityType: 'workflow',
}),
});
:sparkles: Add tagging of workflows (#1647) * clean up dropdown * clean up focusoncreate * :zap: Ignore mistaken ID in POST /workflows * :zap: Fix undefined tag ID in PATCH /workflows * :zap: Shorten response for POST /tags * remove scss mixins * clean up imports * :zap: Implement validation with class-validator * address ivan's comments * implement modals * Fix lint issues * fix disabling shortcuts * fix focus issues * fix focus issues * fix focus issues with modal * fix linting issues * use dispatch * use constants for modal keys * fix focus * fix lint issues * remove unused prop * add modal root * fix lint issues * remove unused methods * fix shortcut * remove max width * :zap: Fix duplicate entry error for pg and MySQL * update rename messaging * update order of buttons * fix firefox overflow on windows * fix dropdown height * :hammer: refactor tag crud controllers * 🧹 remove unused imports * use variable for number of items * fix dropdown spacing * :zap: Restore type to fix build * :zap: Fix post-refactor PATCH /workflows/:id * :zap: Fix PATCH /workflows/:id for zero tags * :zap: Fix usage count becoming stringified * address max's comments * fix filter spacing * fix blur bug * address most of ivan's comments * address tags type concern * remove defaults * :zap: return tag id as string * :hammer: add hooks to tag CUD operations * 🏎 simplify timestamp pruning * remove blur event * fix onblur bug * :zap: Fix fs import to fix build * address max's comments * implement responsive tag container * fix lint issues * Set default dates in entities * :shirt: Fix lint in migrations * update tag limits * address ivan's comments * remove rename, refactor header, implement new designs for save, remove responsive tag container * update styling * update styling * implement responsive tag container * implement header tags edit * implement header tags edit * fix lint issues * implement expandable input * minor fixes * minor fixes * use variable * rename save as * duplicate fixes * :zap: Implement unique workflow names * :zap: Create /workflows/new endpoint * minor edit fixes * lint fixes * style fixes * hook up saving name * hook up tags * clean up impl * fix dirty state bug * update limit * update notification messages * on click outside * fix minor bug with count * lint fixes * :zap: Add query string params to /workflows/new * handle minor edge cases * handle minor edge cases * handle minor bugs; fix firefox dropdown issue * Fix min width * apply tags only after api success * remove count fix * :construction: Adjust to new qs requirements * clean up workflow tags impl, fix tags delete bug * fix minor issue * fix minor spacing issue * disable wrap for ops * fix viewport root; save on click in dropdown * save button loading when saving name/tags * implement max width on tags container * implement cleaner create experience * disable edit while updating * codacy hex color * refactor tags container * fix clickability * fix workflow open and count * clean up structure * fix up lint issues * :zap: Create migrations for unique workflow names * fix button size * increase workflow name limit for larger screen * tslint fixes * disable responsiveness for workflow modal * rename event * change min width for tags * clean up pr * :zap: Adjust quotes in MySQL migration * :zap: Adjust quotes in Postgres migration * address max's comments on styles * remove success toasts * add hover mode to name * minor fixes * refactor name preview * fix name input not to jiggle * finish up name input * Fix up add tags * clean up param * clean up scss * fix resizing name * fix resizing name * fix resize bug * clean up edit spacing * ignore on esc * fix input bug * focus input on clear * build * fix up add tags clickablity * remove scrollbars * move into folders * clean up multiple patch req * remove padding top from edit * update tags on enter * build * rollout blur on enter behavior * rollout esc behavior * fix tags bug when duplicating tags * move key to reload tags * update header spacing * build * update hex case * refactor workflow title * remove unusued prop * keep focus on error, fix bug on error * Fix bug with name / tags toggle on error * impl creating new workflow name * :zap: Refactor endpoint per new guidelines * support naming endpoint * :zap: Refactor to support numeric suffixes * :shirt: Lint migrations for unique workflow names * :zap: Add migrations set default dates to indexes * fix connection push bug * :zap: Lowercase default workflow name * :zap: Add prefixes to set default dates migration * :zap: Fix indentation on default dates migrations * :zap: Add temp ts-ignore for unrelated change * :zap: Adjust default dates migration for MySQL Remove change to data column in credentials_entity, already covered by Omar's migration. Also, fix quotes from table prefix addition. * :zap: Adjust quotes in dates migration for PG * fix safari color bug * fix count bug * fix scroll bugs in dropdown * expand filter size * apply box-sizing to main header * update workflow names in executions to be wrapped by quotes * fix bug where key is same in dropdown * fix firefox bug * move up push connection session * :hammer: Remove mistakenly added nullable property * :fire: Remove unneeded index drop-create (PG) * :fire: Remove unneeded table copying * :zap: Merge dates migration with tags migration * :hammer: Refactor endpoint and make wf name env * dropdown colors in firefox * update colors to use variables * update thumb color * change error message * remove 100 char maximum * fix bug with saving tags dropdowns multiple times * update error message when no name * :zap: Update name missing toast message * :zap: Update workflow already exists message * disable saving for executions * fix bug causing modal to close * make tags in workflow open clickable * increase workflow limit to 3 * remove success notifications * update header spacing * escape tag names * update tag and table colors * remove tags from export * build * clean up push connection dependencies * address ben's comments * revert tags optional interface * address comments * update duplicate message * build * fix eol * add one more eol * :zap: Update comment * add hover style for workflow open, fix up font weight Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com>
2021-05-29 11:31:21 -07:00
feat: Add User Management (#2636) * ✅ adjust tests * 🛠 refactor user invites to be indempotent (#2791) * 🔐 Encrypt SMTP pass for user management backend (#2793) * :package: Add crypto-js to /cli * :package: Update package-lock.json * :sparkles: Create type for SMTP config * :zap: Encrypt SMTP pass * :zap: Update format for `userManagement.emails.mode` * :zap: Update format for `binaryDataManager.mode` * :zap: Update format for `logs.level` * :fire: Remove logging * :shirt: Fix lint * 👰 n8n 2826 um wedding FE<>BE (#2789) * remove mocks * update authorization func * lock down default role * 🐛 fix requiring authentication for OPTIONS requests * :bug: fix cors and cookie issues in dev * update setup route Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * update telemetry * 🐛 preload role for users * :bug: remove auth for password reset routes * 🐛 fix forgot-password flow * :zap: allow workflow tag disabling * update telemetry init * add reset * clear error notifications on signin * remove load settings from node view * remove user id from user state * inherit existing user props * go back in history on button click * use replace to force redirect * update stories * :zap: add env check for tag create * :test_tube: Add `/users` tests for user management backend (#2790) * :zap: Refactor users namespace * :zap: Adjust fillout endpoint * :zap: Refactor initTestServer arg * :pencil2: Specify agent type * :pencil2: Specify role type * :zap: Tighten `/users/:id` check * :sparkles: Add initial tests * :truck: Reposition init server map * :zap: Set constants in `validatePassword()` * :zap: Tighten `/users/:id` check * :zap: Improve checks in `/users/:id` * :sparkles: Add tests for `/users/:id` * :package: Update package-lock.json * :zap: Simplify expectation * :zap: Reuse util for authless agent * :truck: Make role names consistent * :blue_book: Tighten namespaces map type * :fire: Remove unneeded default arg * :sparkles: Add tests for `POST /users` * :blue_book: Create test SMTP account type * :pencil2: Improve wording * :art: Formatting * :fire: Remove temp fix * :zap: Replace helper with config call * :zap: Fix failing tests * :fire: Remove outdated test * :fire: Remove unused helper * :zap: Increase readability of domain fetcher * :zap: Refactor payload validation * :fire: Remove repetition * :rewind: Restore logging * :zap: Initialize logger in tests * :fire: Remove redundancy from check * :truck: Move `globalOwnerRole` fetching to global scope * :fire: Remove unused imports * :truck: Move random utils to own module * :truck: Move test types to own module * :pencil2: Add dividers to utils * :pencil2: Reorder `initTestServer` param docstring * :pencil2: Add TODO comment * :zap: Dry up member creation * :zap: Tighten search criteria * :test_tube: Add expectation to `GET /users` * :zap: Create role fetcher utils * :zap: Create one more role fetch util * :fire: Remove unneeded DB query * :test_tube: Add expectation to `POST /users` * :test_tube: Add expectation to `DELETE /users/:id` * :test_tube: Add another expectation to `DELETE /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :test_tube: Adjust expectations in `POST /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :shirt: Fix build * :zap: Update method * :blue_book: Fix `userToDelete` type * :zap: Refactor `createAgent()` * :zap: Make role fetching global * :zap: Optimize roles fetching * :zap: Centralize member creation * :zap: Refactor truncation helper * :test_tube: Add teardown to `DELETE /users/:id` * :test_tube: Add DB expectations to users tests * :fire: Remove pass validation due to hash * :pencil2: Improve pass validation error message * :zap: Improve owner pass validation * :zap: Create logger initialization helper * :zap: Optimize helpers * :zap: Restructure `getAllRoles` helper * :test_tube: Add password reset flow tests for user management backend (#2807) * :zap: Refactor users namespace * :zap: Adjust fillout endpoint * :zap: Refactor initTestServer arg * :pencil2: Specify agent type * :pencil2: Specify role type * :zap: Tighten `/users/:id` check * :sparkles: Add initial tests * :truck: Reposition init server map * :zap: Set constants in `validatePassword()` * :zap: Tighten `/users/:id` check * :zap: Improve checks in `/users/:id` * :sparkles: Add tests for `/users/:id` * :package: Update package-lock.json * :zap: Simplify expectation * :zap: Reuse util for authless agent * :truck: Make role names consistent * :blue_book: Tighten namespaces map type * :fire: Remove unneeded default arg * :sparkles: Add tests for `POST /users` * :blue_book: Create test SMTP account type * :pencil2: Improve wording * :art: Formatting * :fire: Remove temp fix * :zap: Replace helper with config call * :zap: Fix failing tests * :fire: Remove outdated test * :sparkles: Add tests for password reset flow * :pencil2: Fix test wording * :zap: Set password reset namespace * :fire: Remove unused helper * :zap: Increase readability of domain fetcher * :zap: Refactor payload validation * :fire: Remove repetition * :rewind: Restore logging * :zap: Initialize logger in tests * :fire: Remove redundancy from check * :truck: Move `globalOwnerRole` fetching to global scope * :fire: Remove unused imports * :truck: Move random utils to own module * :truck: Move test types to own module * :pencil2: Add dividers to utils * :pencil2: Reorder `initTestServer` param docstring * :pencil2: Add TODO comment * :zap: Dry up member creation * :zap: Tighten search criteria * :test_tube: Add expectation to `GET /users` * :zap: Create role fetcher utils * :zap: Create one more role fetch util * :fire: Remove unneeded DB query * :test_tube: Add expectation to `POST /users` * :test_tube: Add expectation to `DELETE /users/:id` * :test_tube: Add another expectation to `DELETE /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :test_tube: Adjust expectations in `POST /users/:id` * :test_tube: Add expectations to `DELETE /users/:id` * :blue_book: Add namespace name to type * :truck: Adjust imports * :zap: Optimize `globalOwnerRole` fetching * :test_tube: Add expectations * :shirt: Fix build * :shirt: Fix build * :zap: Update method * :zap: Update method * :test_tube: Fix `POST /change-password` test * :blue_book: Fix `userToDelete` type * :zap: Refactor `createAgent()` * :zap: Make role fetching global * :zap: Optimize roles fetching * :zap: Centralize member creation * :zap: Refactor truncation helper * :test_tube: Add teardown to `DELETE /users/:id` * :test_tube: Add DB expectations to users tests * :zap: Refactor as in users namespace * :test_tube: Add expectation to `POST /change-password` * :fire: Remove pass validation due to hash * :pencil2: Improve pass validation error message * :zap: Improve owner pass validation * :zap: Create logger initialization helper * :zap: Optimize helpers * :zap: Restructure `getAllRoles` helper * :zap: Update `truncate` calls * :bug: return 200 for non-existing user * ✅ fix tests for forgot-password and user creation * Update packages/editor-ui/src/components/MainSidebar.vue Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/components/Telemetry.vue Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * Update packages/editor-ui/src/plugins/telemetry/index.ts Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> * :truck: Fix imports * :zap: reset password just if password exists * Fix validation at `PATCH /workfows/:id` (#2819) * :bug: Validate entity only if workflow * :shirt: Fix build * 🔨 refactor response from user creation * 🐛 um email invite fix (#2833) * update users invite * fix notificaitons stacking on top of each other * remove unnessary check * fix type issues * update structure * fix types * 🐘 database migrations UM + password reset expiration (#2710) * Add table prefix and assign existing workflows and credentials to owner for sqlite * Added user management migration to MySQL * Fixed some missing table prefixes and removed unnecessary user id * Created migration for postgres and applies minor fixes * Fixed migration for sqlite by removing the unnecessary index and for mysql by removing unnecessary user data * Added password reset token expiration * Addressing comments made by Ben * ⚡️ add missing tablePrefix * ✅ fix tests + add tests for expiring pw-reset-token Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :zap: treat skipped personalizationSurvey as not answered * :bug: removing active workflows when deleting user, :bug: fix reinvite, :bug: fix resolve-signup-token, 🐘 remove workflowname uniqueness * ✅ Add DB state check tests (#2841) * :fire: Remove unneeded import * :fire: Remove unneeded vars * :pencil2: Improve naming * :test_tube: Add expectations to `POST /owner` * :test_tube: Add expectations to `PATCH /me` * :test_tube: Add expectation to `PATCH /me/password` * :pencil2: Clarify when owner is owner shell * :test_tube: Add more expectations * :rewind: Restore package-lock to parent branch state * Add logging to user management endpoints v2 (#2836) * :zap: Initialize logger in tests * :zap: Add logs to mailer * :zap: Add logs to middleware * :zap: Add logs to me endpoints * :zap: Add logs to owner endpoints * :zap: Add logs to pass flow endpoints * :zap: Add logs to users endpoints * :blue_book: Improve typings * :zap: Merge two logs into one * :zap: Adjust log type * :zap: Add password reset email log * :pencil2: Reword log message * :zap: Adjust log meta object * :zap: Add total to log * :pencil2: Add detail to log message * :pencil2: Reword log message * :pencil2: Reword log message * :bug: Make total users to set up accurate * :pencil2: Reword `Logger.debug()` messages * :pencil2: Phrasing change for consistency * :bug: Fix ID overridden in range query * :hammer: small refactoring * 🔐 add auth to push-connection * 🛠 ✅ Create credentials namespace and add tests (#2831) * :test_tube: Fix failing test * :blue_book: Improve `createAgent` signature * :truck: Fix `LoggerProxy` import * :sparkles: Create credentials endpoints namespace * :test_tube: Set up initial tests * :zap: Add validation to model * :zap: Adjust validation * :test_tube: Add test * :truck: Sort creds endpoints * :pencil2: Plan out pending tests * :test_tube: Add deletion tests * :test_tube: Add patch tests * :test_tube: Add get cred tests * :truck: Hoist import * :pencil2: Make test descriptions consistent * :pencil2: Adjust description * :test_tube: Add missing test * :pencil2: Make get descriptions consistent * :rewind: Undo line break * :zap: Refactor to simplify `saveCredential` * :test_tube: Add non-owned tests for owner * :pencil2: Improve naming * :pencil2: Add clarifying comments * :truck: Improve imports * :zap: Initialize config file * :fire: Remove unneeded import * :truck: Rename dir * :zap: Adjust deletion call * :zap: Adjust error code * :pencil2: Touch up comment * :zap: Optimize fetching with `@RelationId` * :test_tube: Add expectations * :zap: Simplify mock calls * :blue_book: Set deep readonly to object constants * :fire: Remove unused param and encryption key * :zap: Add more `@RelationId` calls in models * :rewind: Restore * :bug: no auth for .svg * 🛠 move auth cookie name to constant; 🐛 fix auth for push-connection * ✅ Add auth middleware tests (#2853) * :zap: Simplify existing suite * :test_tube: Validate that auth cookie exists * :pencil2: Move comment * :fire: Remove unneeded imports * :pencil2: Add clarifying comments * :pencil2: Document auth endpoints * :test_tube: Add middleware tests * :pencil2: Fix typos Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com> * 🔥 Remove test description wrappers (#2874) * :fire: Remove /owner test wrappers * :fire: Remove auth middleware test wrappers * :fire: Remove auth endpoints test wrappers * :fire: Remove overlooked middleware wrappers * :fire: Remove me namespace test wrappers Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * ✨ Runtime checks for credentials load and execute workflows (#2697) * Runtime checks for credentials load and execute workflows * Fixed from reviewers * Changed runtime validation for credentials to be on start instead of on demand * Refactored validations to use user id instead of whole User instance * Removed user entity from workflow project because it is no longer needed * General fixes and improvements to runtime checks * Remove query builder and improve styling * Fix lint issues * :zap: remove personalizationAnswers when fetching all users * ✅ fix failing get all users test * ✅ check authorization routes also for authentication * :bug: fix defaults in reset command * 🛠 refactorings from walkthrough (#2856) * :zap: Make `getTemplate` async * :zap: Remove query builder from `getCredentials` * :zap: Add save manual executions log message * :rewind: Restore and hide migrations logs * :zap: Centralize ignore paths check * :shirt: Fix build * :truck: Rename `hasOwner` to `isInstanceOwnerSetUp` * :zap: Add `isSetUp` flag to `User` * :zap: Add `isSetUp` to FE interface * :zap: Adjust `isSetUp` checks on FE * :shirt: Fix build * :zap: Adjust `isPendingUser()` check * :truck: Shorten helper name * :zap: Refactor as `isPending` per feedback * :pencil2: Update log message * :zap: Broaden check * :fire: Remove unneeded relation * :zap: Refactor query * :fire: Re-remove logs from migrations * 🛠 set up credentials router (#2882) * :zap: Refactor creds endpoints into router * :test_tube: Refactor creds tests to use router * :truck: Rename arg for consistency * :truck: Move `credentials.api.ts` outside /public * :truck: Rename constant for consistency * :blue_book: Simplify types * :fire: Remove unneeded arg * :truck: Rename router to controller * :zap: Shorten endpoint * :zap: Update `initTestServer()` arg * :zap: Mutate response body in GET /credentials * 🏎 improve performance of type cast for FE Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :bug: remove GET /login from auth * 🔀 merge master + FE update (#2905) * :sparkles: Add Templates (#2720) * Templates Bugs / Fixed Various Bugs / Multiply Api Request, Carousel Gradient, Core Nodes Filters ... * Updated MainSidebar Paddings * N8N-Templates Bugfixing - Remove Unnecesairy Icon (Shape), Refatctor infiniteScrollEnabled Prop + updated infiniterScroll functinality * N8N-2853 Fixed Carousel Arrows Bug after Cleaning the SearchBar * fix telemetry init * fix search tracking issues * N8N-2853 Created FilterTemplateNode Constant Array, Filter PlayButton and WebhookRespond from Nodes, Added Box for showing more nodes inside TemplateList, Updated NewWorkflowButton to primary, Fixed Markdown issue with Code * N8N-2853 Removed Placeholder if Workflows Or Collections are not found, Updated the Logic * fix telemetry events * clean up session id * update user inserted event * N8N-2853 Fixed Categories to Moving if the names are long * Add todos * Update Routes on loading * fix spacing * Update Border Color * Update Border Readius * fix filter fn * fix constant, console error * N8N-2853 PR Fixes, Refactoring, Removing unnecesairy code .. * N8N-2853 PR Fixes - Editor-ui Fixes, Refactoring, Removing Dead Code ... * N8N-2853 Refactor Card to LongCard * clean up spacing, replace css var * clean up spacing * set categories as optional in node * replace vars * refactor store * remove unnesssary import * fix error * fix templates view to start * add to cache * fix coll view data * fix categories * fix category event * fix collections carousel * fix initial load and search * fix infinite load * fix query param * fix scrolling issues * fix scroll to top * fix search * fix collections search * fix navigation bug * rename view * update package lock * rename workflow view * rename coll view * update routes * add wrapper component * set session id * fix search tracking * fix session tracking * remove deleted mutation * remove check for unsupported nodes * refactor filters * lazy load template * clean up types * refactor infinte scroll * fix end of search * Fix spacing * fix coll loading * fix types * fix coll view list * fix navigation * rename types * rename state * fix search responsiveness * fix coll view spacing * fix search view spacing * clean up views * set background color * center page not vert * fix workflow view * remove import * fix background color * fix background * clean props * clean up imports * refactor button * update background color * fix spacing issue * rename event * update telemetry event * update endpoints, add loading view, check for endpoint health * remove conolse log * N8N-2853 Fixed Menu Items Padding * replace endpoints * fix type issues * fix categories * N8N-2853 Fixed ParameterInput Placeholder after ElementUI Upgrade * update createdAt * :zap: Fix placeholder in creds config modal * :pencil2: Adjust docstring to `credText` placeholder version * N8N-2853 Optimized * N8N-2853 Optimized code * :zap: Add deployment type to FE settings * :zap: Add deployment type to interfaces * N8N-2853 Removed Animated prop from components * :zap: Add deployment type to store module * :sparkles: Create hiring banner * :zap: Display hiring banner * :rewind: Undo unrelated change * N8N-2853 Refactor TemplateFilters * :zap: Fix indentation * N8N-2853 Reorder items / TemplateList * :shirt: Fix lint * N8N-2853 Refactor TemplateFilters Component * N8N-2853 Reorder TemplateList * refactor template card * update timeout * fix removelistener * fix spacing * split enabled from offline * add spacing to go back * N8N-2853 Fixed Screens for Tablet & Mobile * N8N-2853 Update Stores Order * remove image componet * remove placeholder changes * N8N-2853 Fixed Chinnese Placeholders for El Select Component that comes from the Library Upgrade * N8N-2853 Fixed Vue Agile Console Warnings * N8N-2853 Update Collection Route * :pencil2: Update jobs URL * :truck: Move logging to root component * :zap: Refactor `deploymentType` to `isInternalUser` * :zap: Improve syntax * fix cut bug in readonly view * N8N-3012 Fixed Details section in templates with lots of description, Fixed Mardown Block with overflox-x * N8N-3012 Increased Font-size, Spacing and Line-height of the Categories Items * N8N-3012 Fixed Vue-agile client width error on resize * only delay redirect for root path * N8N-3012 Fixed Carousel Arrows that Disappear * N8N-3012 Make Loading Screen same color as Templates * N8N-3012 Markdown renders inline block as block code * add offline warning * hide log from workflow iframe * update text * make search button larger * N8N-3012 Categories / Tags extended all the way in details section * load data in cred modals * remove deleted message * add external hook * remove import * update env variable description * fix markdown width issue * disable telemetry for demo, add session id to template pages * fix telemetery bugs * N8N-3012 Not found Collections/Wokrkflow * N8N-3012 Checkboxes change order when categories are changed * N8N-3012 Refactor SortedCategories inside TemplateFilters component * fix firefox bug * add telemetry requirements * add error check * N8N-3012 Update GoBackButton to check if Route History is present * N8N-3012 Fixed WF Nodes Icons * hide workflow screenshots * remove unnessary mixins * rename prop * fix design a bit * rename data * clear workspace on destroy * fix copy paste bug * fix disabled state * N8N-3012 Fixed Saving/Leave without saving Modal * fix telemetry issue * fix telemetry issues, error bug * fix error notification * disable workflow menu items on templates * fix i18n elementui issue * Remove Emit - NodeType from HoverableNodeIcon component * TechnicalFixes: NavigateTo passed down as function should be helper * TechnicalFixes: Update NavigateTo function * TechnicalFixes: Add FilterCoreNodes directly as function * check for empty connecitions * fix titles * respect new lines * increase categories to be sliced * rename prop * onUseWorkflow * refactor click event * fix bug, refactor * fix loading story * add default * fix styles at right level of abstraction * add wrapper with width * remove loading blocks component * add story * rename prop * fix spacing * refactor tag, add story * move margin to container * fix tag redirect, remove unnessary check * make version optional * rename view * move from workflows to templates store * remove unnessary change * remove unnessary css * rename component * refactor collection card * add boolean to prevent shrink * clean up carousel * fix redirection bug on save * remove listeners to fix multiple listeners bug * remove unnessary types * clean up boolean set * fix node select bug * rename component * remove unnessary class * fix redirection bug * remove unnessary error * fix typo * fix blockquotes, pre * refactor markdown rendering * remove console log * escape markdown * fix safari bug * load active workflows to fix modal bug * :arrow_up: Update package-lock.json file * :zap: Add n8n version as header Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com> Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :bookmark: Release n8n-workflow@0.88.0 * :arrow_up: Set n8n-workflow@0.88.0 on n8n-core * :bookmark: Release n8n-core@0.106.0 * :arrow_up: Set n8n-core@0.106.0 and n8n-workflow@0.88.0 on n8n-node-dev * :bookmark: Release n8n-node-dev@0.45.0 * :arrow_up: Set n8n-core@0.106.0 and n8n-workflow@0.88.0 on n8n-nodes-base * :bookmark: Release n8n-nodes-base@0.163.0 * :bookmark: Release n8n-design-system@0.12.0 * :arrow_up: Set n8n-design-system@0.12.0 and n8n-workflow@0.88.0 on n8n-editor-ui * :bookmark: Release n8n-editor-ui@0.132.0 * :arrow_up: Set n8n-core@0.106.0, n8n-editor-ui@0.132.0, n8n-nodes-base@0.163.0 and n8n-workflow@0.88.0 on n8n * :bookmark: Release n8n@0.165.0 * fix default user bug * fix bug * update package lock * fix duplicate import * fix settings * fix templates access Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :zap: n8n 2952 personalisation (#2911) * refactor/update survey * update customers * Fix up personalization survey * fix recommendation logic * set to false * hide suggested nodes when empty * use keys * add missing logic * switch types * Fix logic * remove unused constants * add back constant * refactor filtering inputs * hide last input on personal * fix other * ✨ add current pw check for change password (#2912) * fix back button * Add current password input * add to modal * update package.json * delete mock file * delete mock file * get settings func * update router * update package lock * update package lock * Fix invite text * update error i18n * open personalization on search if not set * update error view i18n * update change password * update settings sidebar * remove import * fix sidebar * :goal_net: fix error for credential/workflow not found * update invite modal * ✨ persist skipping owner setup (#2894) * 🚧 added skipInstanceOwnerSetup to DB + route to save skipping * ✨ skipping owner setup persists * ✅ add tests for authorization and /owner/skip-setup * 🛠 refactor FE settings getter * 🛠 move setting setup stop to owner creation * :bug: fix wrong setting of User.isPending * :bug: fix isPending * 🏷 add isPending to PublicUser * :bug: fix unused import * update delete modal * change password modal * remove _label * sort keys * remove key * update key names * fix test endpoint * 🥅 Handle error workflows permissions (#2908) * Handle error workflows permissions * Fixed wrong query format * 🛠 refactor query Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com> * fix ts issue * fix list after ispending changes * fix error page bugs * fix error redirect * fix notification * :bug: fix survey import in migration * fix up spacing * update keys spacing * update keys * add space * update key * fix up more spacing * 🔐 add current password (#2919) * add curr pass * update key names * :bug: stringify tag ids * 🔐 check current password before update * add package lock * fix dep version * update version * 🐛 fix access for instance owner to credentials (#2927) * 🛠 stringify tag id on entity * 🔐 Update password requirements (#2920) * :zap: Update password requirements * :zap: Adjust random helpers * ✅ fix tests for currentPassword check * change redirection, add homepage * fix error view redirection * updated wording * fix setup redirection * update validator * remove successfully * update consumers * update settings redirect * on signup, redirect to homepage * update empty state * add space to emails * remove brackets * add opacity * update spacing * remove border from last user * personal details updated * update redirect on sign up * prevent text wrap * fix notification title line height * remove console log * 🐘 Support testing with Postgres and MySQL (#2886) * :card_file_box: Fix Postgres migrations * :zap: Add DB-specific scripts * :sparkles: Set up test connections * :zap: Add Postgres UUID check * :test_tube: Make test adjustments for Postgres * :zap: Refactor connection logic * :sparkles: Set up double init for Postgres * :pencil2: Add TODOs * :zap: Refactor DB dropping logic * :sparkles: Implement global teardown * :sparkles: Create TypeORM wrappers * :sparkles: Initial MySQL setup * :zap: Clean up Postgres connection options * :zap: Simplify by sharing bootstrap connection name * :card_file_box: Fix MySQL migrations * :fire: Remove comments * :zap: Use ES6 imports * :fire: Remove outdated comments * :zap: Centralize bootstrap connection name handles * :zap: Centralize database types * :pencil2: Update comment * :truck: Rename `findRepository` * :construction: Attempt to truncate MySQL * :sparkles: Implement creds router * :bug: Fix duplicated MySQL bootstrap * :bug: Fix misresolved merge conflict * :card_file_box: Fix tags migration * :card_file_box: Fix MySQL UM migration * :bug: Fix MySQL parallelization issues * :blue_book: Augment TypeORM to prevent error * :fire: Remove comments * :sparkles: Support one sqlite DB per suite run * :truck: Move `testDb` to own module * :fire: Deduplicate bootstrap Postgres logic * :fire: Remove unneeded comment * :zap: Make logger init calls consistent * :pencil2: Improve comment * :pencil2: Add dividers * :art: Improve formatting * :fire: Remove duplicate MySQL global setting * :truck: Move comment * :zap: Update default test script * :fire: Remove unneeded helper * :zap: Unmarshal answers from Postgres * :bug: Phase out `isTestRun` * :zap: Refactor `isEmailSetup` * :fire: Remove unneeded imports * :zap: Handle bootstrap connection errors * :fire: Remove unneeded imports * :fire: Remove outdated comments * :pencil2: Fix typos * :truck: Relocate `answersFormatter` * :rewind: Undo package.json miscommit * :fire: Remove unneeded import * :zap: Refactor test DB prefixing * :zap: Add no-leftover check to MySQL * :package: Update package.json * :zap: Autoincrement on simulated MySQL truncation * :fire: Remove debugging queries * ✏️ fix email template link expiry * 🔥 remove unused import * ✅ fix testing email not sent error * fix duplicate import * add package lock * fix export * change opacity * fix text issue * update action box * update error title * update forgot password * update survey * update product text * remove unset fields * add category to page events * remove duplicate import * update key * update key * update label type * 🎨 um/fe review (#2946) * :whale: Update Node.js versions of Docker images to 16 * :bug: Fix that some keyboard shortcuts did no longer work * N8N-3057 Fixed Keyboard shortcuts no longer working on / Fixed callDebounced function * N8N-3057 Update Debounce Function * N8N-3057 Refactor callDebounce function * N8N-3057 Update Dobounce Function * :bug: Fix issue with tooltips getting displayed behind node details view * fix tooltips z-index * move all element ui components * update package lock * :bug: Fix credentials list load issue (#2931) * always fetch credentials * only fetch credentials once * :zap: Allow to disable hiring banner (#2902) * :sparkles: Add flag * :zap: Adjust interfaces * :zap: Adjust store module * :zap: Adjust frontend settings * :zap: Adjust frontend display * :bug: Fix issue that ctrl + o did behave wrong on workflow templates page (#2934) * N8N-3094 Workflow Templates cmd-o acts on the Preview/Iframe * N8N-3094 Workflow Templates cmd-o acts on the Preview/Iframe * disable shortcuts for preview Co-authored-by: Mutasem <mutdmour@gmail.com> * :arrow_up: Update package-lock.json file * :bug: Fix sorting by field in Baserow Node (#2942) This fixes a bug which currently leads to the "Sorting" option of the node to be ignored. * :bug: Fix some i18n line break issues * :sparkles: Add Odoo Node (#2601) * added odoo scaffolding * update getting data from odoo instance * added scaffolding for main loop and request functions * added functions for CRUD opperations * improoved error handling for odooJSONRPCRequest * updated odoo node and fixing nodelinter issues * fixed alpabetical order * fixed types in odoo node * fixing linter errors * fixing linter errors * fixed data shape returned from man loop * updated node input types, added fields list to models * update when custom resource is selected options for fields list will be populated dynamicly * minor fixes * :hammer: fixed credential test, updating CRUD methods * :hammer: added additional fields to crm resource * :hammer: added descriptions, fixed credentials test bug * :hammer: standardize node and descriptions design * :hammer: removed comments * :hammer: added pagination to getAll operation * :zap: removed leftover function from previous implementation, removed required from optional fields * :zap: fixed id field, added indication of type and if required to field description, replaced string input in filters to fetched list of fields * :hammer: fetching list of models from odoo, added selection of fields to be returned to predefined models, fixes accordingly to review * :zap: Small improvements * :hammer: extracted adress fields into collection, changed fields to include in descriptions, minor tweaks * :zap: Improvements * :hammer: working on review * :hammer: fixed linter errors * :hammer: review wip * :hammer: review wip * :hammer: review wip * :zap: updated display name for URL in credentials * :hammer: added checks for valid id to delete and update * :zap: Minor improvements Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> * :bug: Handle Wise SCA requests (#2734) * :zap: Improve Wise error message after previous change * fix duplicate import * add package lock * fix export * change opacity * fix text issue * update action box * update error title * update forgot password * update survey * update product text * remove unset fields * add category to page events * remove duplicate import * update key * update key Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Tom <19203795+that-one-tom@users.noreply.github.com> Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com> Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: pemontto <939704+pemontto@users.noreply.github.com> * Move owner skip from settings * 🐛 SMTP fixes (#2937) * :fire: Remove `UM_` from SMTP env vars * :fire: Remove SMTP host default value * :zap: Update sender value * :zap: Update invite template * :zap: Update password reset template * :zap: Update `N8N_EMAIL_MODE` default value * :fire: Remove `EMAIL` from all SMTP vars * :sparkles: Implement `verifyConnection()` * :truck: Reposition comment * :pencil2: Fix typo * :pencil2: Minor env var documentation improvements * :art: Fix spacing * :art: Fix spacing * :card_file_box: Remove SMTP settings cache * :zap: Adjust log message * :zap: Update error message * :pencil2: Fix template typo * :pencil2: Adjust wording * :zap: Interpolate email into success toast * :pencil2: Adjust base message in `verifyConnection()` * :zap: Verify connection on password reset * :zap: Bring up POST /users SMTP check * :bug: remove cookie if cookie is not valid * :zap: verify connection on instantiation Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * 🔊 create logger helper for migrations (#2944) * 🔥 remove unused database * :loud_sound: add migration logging for sqlite * 🔥 remove unnecessary index creation * ⚡️ change log level to warn * 🐛 Fix issue with workflow process to initialize db connection correctly (#2948) * ✏️ update error messages for webhhook run/activation * 📈 Implement telemetry events (#2868) * Implement basic telemetry events * Fixing user id as part of the telemetry data * Added user id to be part of the tracked data * :sparkles: Create telemetry mock * :test_tube: Fix tests with telemetry mock * :test_tube: Fix missing key in authless endpoint * :blue_book: Create authless request type * :fire: Remove log * :bug: Fix `migration_strategy` assignment * :blue_book: Remove `instance_id` from `ITelemetryUserDeletionData` * :zap: Simplify concatenation * :zap: Simplify `track()` call signature * Fixed payload of telemetry to always include user_id * Fixing minor issues Co-authored-by: Iván Ovejero <ivov.src@gmail.com> * 🔊 Added logs to credentials, executions and workflows (#2915) * Added logs to credentials, executions and workflows * Some updates according to ivov's feedback * :zap: update log levels * ✅ fix tests Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> * :bug: fix telemetry error * fix conflicts with master * fix duplicate * add package-lock * :bug: Um/fixes (#2952) * add initials to avatar * redirect to signin if invalid token * update pluralization * add auth page category * data transferred * touch up setup page * update button to add cursor * fix personalization modal not closing * ✏️ fix environment name * 🐛 fix disabling UM * 🐛 fix email setup flag * 🐛 FE fixes 1 (#2953) * add initials to avatar * redirect to signin if invalid token * update pluralization * add auth page category * data transferred * touch up setup page * update button to add cursor * fix personalization modal not closing * capitalize labels, refactor text * Fixed the issue with telemetry data missing for personalization survey * Changed invite email text * 🐛 Fix quotes issue with postgres migration (#2958) * Changed text for invite link * 🐛 fix reset command for mysql * ✅ fix race condition in test DB creation * 🔐 block user creation if UM is disabled * 🥅 improve smtp setup issue error * :zap: update error message * refactor route rules * set package lock * fix access * remove capitalize * update input labels * refactor heading * change span to fragment * add route types * refactor views * ✅ fix increase timeout for mysql * :zap: correct logic of error message * refactor view names * :zap: update randomString * 📈 Added missing event regarding failed emails (#2964) * replace label with info * 🛠 refactor JWT-secret creation * remove duplicate key * remove unused part * remove semicolon * fix up i18n pattern * update translation keys * update urls * support i18n in nds * fix how external keys are handled * add source * 💥 update timestamp of UM migration * ✏️ small message updates * fix tracking * update notification line-height * fix avatar opacity * fix up empty state * shift focus to input * 🔐 Disable basic auth after owner has been set up (#2973) * Disable basic auth after owner has been set up * Remove unnecessary comparison * rename modal title * 🐛 use pgcrypto extension for uuid creation (#2977) * 📧 Added public url variable for emails (#2967) * Added public url variable for emails * Fixed base url for reset password - the current implementation overrides possibly existing path * Change variable name to editorUrl * Using correct name editorUrl for emails * Changed variable description * Improved base url naming and appending path so it remains consistent * Removed trailing slash from editor base url * 🌐 fix i18n pattern (#2970) * fix up i18n pattern * update translation keys * update urls * support i18n in nds * fix how external keys are handled * add source * Um/fixes 1000 (#2980) * fix select issue * 😫 hacky solution to circumvent pgcrypto (#2979) * fix owner bug after transfer. always fetch latest credentials * add confirmation modal to setup * Use webhook url as fallback when editor url is not defined * fix enter bug * update modal * update modal * update modal text, fix bug in settings view * Updating editor url to not append path * rename keys Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com> Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Ahsan Virani <ahsan.virani@gmail.com> Co-authored-by: Omar Ajoue <krynble@gmail.com> Co-authored-by: Oliver Trajceski <olivertrajceski@yahoo.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com> Co-authored-by: Tom <19203795+that-one-tom@users.noreply.github.com> Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com> Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: pemontto <939704+pemontto@users.noreply.github.com>
2022-03-14 06:46:32 -07:00
return sharedWorkflows.map(({ workflow }) => workflow.id);
:sparkles: Add tagging of workflows (#1647) * clean up dropdown * clean up focusoncreate * :zap: Ignore mistaken ID in POST /workflows * :zap: Fix undefined tag ID in PATCH /workflows * :zap: Shorten response for POST /tags * remove scss mixins * clean up imports * :zap: Implement validation with class-validator * address ivan's comments * implement modals * Fix lint issues * fix disabling shortcuts * fix focus issues * fix focus issues * fix focus issues with modal * fix linting issues * use dispatch * use constants for modal keys * fix focus * fix lint issues * remove unused prop * add modal root * fix lint issues * remove unused methods * fix shortcut * remove max width * :zap: Fix duplicate entry error for pg and MySQL * update rename messaging * update order of buttons * fix firefox overflow on windows * fix dropdown height * :hammer: refactor tag crud controllers * 🧹 remove unused imports * use variable for number of items * fix dropdown spacing * :zap: Restore type to fix build * :zap: Fix post-refactor PATCH /workflows/:id * :zap: Fix PATCH /workflows/:id for zero tags * :zap: Fix usage count becoming stringified * address max's comments * fix filter spacing * fix blur bug * address most of ivan's comments * address tags type concern * remove defaults * :zap: return tag id as string * :hammer: add hooks to tag CUD operations * 🏎 simplify timestamp pruning * remove blur event * fix onblur bug * :zap: Fix fs import to fix build * address max's comments * implement responsive tag container * fix lint issues * Set default dates in entities * :shirt: Fix lint in migrations * update tag limits * address ivan's comments * remove rename, refactor header, implement new designs for save, remove responsive tag container * update styling * update styling * implement responsive tag container * implement header tags edit * implement header tags edit * fix lint issues * implement expandable input * minor fixes * minor fixes * use variable * rename save as * duplicate fixes * :zap: Implement unique workflow names * :zap: Create /workflows/new endpoint * minor edit fixes * lint fixes * style fixes * hook up saving name * hook up tags * clean up impl * fix dirty state bug * update limit * update notification messages * on click outside * fix minor bug with count * lint fixes * :zap: Add query string params to /workflows/new * handle minor edge cases * handle minor edge cases * handle minor bugs; fix firefox dropdown issue * Fix min width * apply tags only after api success * remove count fix * :construction: Adjust to new qs requirements * clean up workflow tags impl, fix tags delete bug * fix minor issue * fix minor spacing issue * disable wrap for ops * fix viewport root; save on click in dropdown * save button loading when saving name/tags * implement max width on tags container * implement cleaner create experience * disable edit while updating * codacy hex color * refactor tags container * fix clickability * fix workflow open and count * clean up structure * fix up lint issues * :zap: Create migrations for unique workflow names * fix button size * increase workflow name limit for larger screen * tslint fixes * disable responsiveness for workflow modal * rename event * change min width for tags * clean up pr * :zap: Adjust quotes in MySQL migration * :zap: Adjust quotes in Postgres migration * address max's comments on styles * remove success toasts * add hover mode to name * minor fixes * refactor name preview * fix name input not to jiggle * finish up name input * Fix up add tags * clean up param * clean up scss * fix resizing name * fix resizing name * fix resize bug * clean up edit spacing * ignore on esc * fix input bug * focus input on clear * build * fix up add tags clickablity * remove scrollbars * move into folders * clean up multiple patch req * remove padding top from edit * update tags on enter * build * rollout blur on enter behavior * rollout esc behavior * fix tags bug when duplicating tags * move key to reload tags * update header spacing * build * update hex case * refactor workflow title * remove unusued prop * keep focus on error, fix bug on error * Fix bug with name / tags toggle on error * impl creating new workflow name * :zap: Refactor endpoint per new guidelines * support naming endpoint * :zap: Refactor to support numeric suffixes * :shirt: Lint migrations for unique workflow names * :zap: Add migrations set default dates to indexes * fix connection push bug * :zap: Lowercase default workflow name * :zap: Add prefixes to set default dates migration * :zap: Fix indentation on default dates migrations * :zap: Add temp ts-ignore for unrelated change * :zap: Adjust default dates migration for MySQL Remove change to data column in credentials_entity, already covered by Omar's migration. Also, fix quotes from table prefix addition. * :zap: Adjust quotes in dates migration for PG * fix safari color bug * fix count bug * fix scroll bugs in dropdown * expand filter size * apply box-sizing to main header * update workflow names in executions to be wrapped by quotes * fix bug where key is same in dropdown * fix firefox bug * move up push connection session * :hammer: Remove mistakenly added nullable property * :fire: Remove unneeded index drop-create (PG) * :fire: Remove unneeded table copying * :zap: Merge dates migration with tags migration * :hammer: Refactor endpoint and make wf name env * dropdown colors in firefox * update colors to use variables * update thumb color * change error message * remove 100 char maximum * fix bug with saving tags dropdowns multiple times * update error message when no name * :zap: Update name missing toast message * :zap: Update workflow already exists message * disable saving for executions * fix bug causing modal to close * make tags in workflow open clickable * increase workflow limit to 3 * remove success notifications * update header spacing * escape tag names * update tag and table colors * remove tags from export * build * clean up push connection dependencies * address ben's comments * revert tags optional interface * address comments * update duplicate message * build * fix eol * add one more eol * :zap: Update comment * add hover style for workflow open, fix up font weight Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: Iván Ovejero <ivov.src@gmail.com> Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com>
2021-05-29 11:31:21 -07:00
}
feat(editor): Improve n8n welcome experience (#3289) * ✨ Injecting a welcome sticky note if a corresponding flag has been received from backend * 🔒 Allowing resources from `/static` route to be displayed in markown component. * ✨ Implemented image width control via markdown URLs * 💄Updating quickstart video thumbnail images. * 🔨 Updated new workflow action name and quickstart sticky name * ✨ Added quickstart menu item in the Help menu * 🔨 Moving quickstart video thumbnail to the translation file. * 🔒 Limiting http static resource requests in markdown img tags only to image files. * 🔒 Adding more file types to supported image list in markown component. * 👌 Extracting quickstart note name to constant. * 🐘 add DB migration sqlite * ⚡️ add logic for onboarding flow flag * 🐘 add postgres migration for user settings * 🐘 add mysql migration for user settings * ✨ Injecting a welcome sticky note if a corresponding flag has been received from backend * 🔒 Allowing resources from `/static` route to be displayed in markown component. * ✨ Implemented image width control via markdown URLs * 💄Updating quickstart video thumbnail images. * 🔨 Updated new workflow action name and quickstart sticky name * ✨ Added quickstart menu item in the Help menu * 🔨 Moving quickstart video thumbnail to the translation file. * 🔒 Limiting http static resource requests in markdown img tags only to image files. * 🔒 Adding more file types to supported image list in markown component. * 👌 Extracting quickstart note name to constant. * 📈 Added telemetry events to quickstart sticky note. * ⚡ Disable sticky node type from showing in expression editor * 🔨 Improving welcome video link detecton when triggering telemetry events * 👌Moved sticky links click handling logic outside of the design system, removed user and instance id from telemetry events. * 👌Improving sticky note link telemetry tracking. * 🔨 Refactoring markdown component click event logic. * 🔨 Moving bits of clicked link detection logic to Markdown component. * 💄Fixing code spacing. * remove transpileonly option * update package lock * 💄Changing the default route to `/workflow`, updating welcome sticky content. * remove hardcoded * 🐛 Fixing the onboarding threshold logic so sticky notes are skipped when counting nodes. * 👕 Fixing linting errors. Co-authored-by: Milorad Filipović <milorad.filipovic19@gmail.com> Co-authored-by: Milorad Filipović <miloradfilipovic19@gmail.com> Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> Co-authored-by: Milorad Filipović <milorad@n8n.io>
2022-05-16 09:19:33 -07:00
/**
* Check if user owns more than 15 workflows or more than 2 workflows with at least 2 nodes.
* If user does, set flag in its settings.
*/
export async function isBelowOnboardingThreshold(user: User): Promise<boolean> {
let belowThreshold = true;
const skippedTypes = ['n8n-nodes-base.start', 'n8n-nodes-base.stickyNote'];
const workflowOwnerRole = await Db.collections.Role.findOne({
name: 'owner',
scope: 'workflow',
});
const ownedWorkflowsIds = await Db.collections.SharedWorkflow.find({
user,
role: workflowOwnerRole,
}).then((ownedWorkflows) => ownedWorkflows.map((wf) => wf.workflowId));
if (ownedWorkflowsIds.length > 15) {
belowThreshold = false;
} else {
// just fetch workflows' nodes to keep memory footprint low
const workflows = await Db.collections.Workflow.find({
where: { id: In(ownedWorkflowsIds) },
select: ['nodes'],
});
// valid workflow: 2+ nodes without start node
const validWorkflowCount = workflows.reduce((counter, workflow) => {
if (counter <= 2 && workflow.nodes.length > 2) {
const nodes = workflow.nodes.filter((node) => !skippedTypes.includes(node.type));
if (nodes.length >= 2) {
return counter + 1;
}
}
return counter;
}, 0);
// more than 2 valid workflows required
belowThreshold = validWorkflowCount <= 2;
}
// user is above threshold --> set flag in settings
if (!belowThreshold) {
void Db.collections.User.update(user.id, { settings: { isOnboarded: true } });
}
return belowThreshold;
}