From 83998a15b0b4bea94aa07984136bdc56523d4f89 Mon Sep 17 00:00:00 2001 From: Luiz Eduardo de Oliveira Fonseca Date: Fri, 22 Apr 2022 11:44:23 -0300 Subject: [PATCH] feat(MongoDB Node): Allow parsing dates using dot notation (#2487) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Parse Dates using Dot Notation * :zap: fixed types issues that prevent brunch from building, fixed nodelinter issues * :hammer: hint for date fields * :hammer: fixed bug with only one field converted to date * :hammer: added toggle for access date fields with dot notation * :zap: Add Odoo and RedisTrigger node codex (#3005) * .168.2fixed: Auto stash before rebase of "refs/heads/codex/0.168.2fixed" Odoo and Redis Trigger codex files update * Update RedisTrigger.node.json Co-authored-by: Niv * :zap: Add KoBoToolbox and Linear codex files (#3040) KoBoToolbox KoBoToolbox Trigger Linear Co-authored-by: Niv * :books: Add missing full stop to license text * (fix): Added missing full stop to license GitHub does not render the single line breaks in the *Limitations* section. The added full stop makes it easier to read our license. * :books: Add also to other files Co-authored-by: Jan Oberhauser * fix(AWS Lambda Node): Fix "Invocation Type" > "Continue Workflow" (#3010) * :hammer: fix for running in continue workflow * :zap: Minor simplification Co-authored-by: Jan Oberhauser * :books: Add one more missing full stop to license text * fix(core): Add logs and error catches for possible failures in queue mode (#3032) * fix(Supabase Node): Fix Row > Get operation (#3045) * fix(Supabase Node): Send token also via Authorization Bearer (#2814) Send Authorization Bearer in headers Fix typo in validateCredentials function * fix(Wise Node): Fix issue when executing a transfer (#3039) * :zap: Fix credentials import success message (#3038) * :books: Add missing full stop to license text (#3028) Adding "." L15. In addition, the markdown display don't show line break as in the editor. * :books: Add note to changelog linking to historic log (#3031) * feat(HTTP Request Node): Add support for OPTIONS method (#3030) * fix(Xero Node): Fix some operations and add support for setting address and phone number (#3048) * :bug: Fix issue when sending Organization ID - Xero node * :shirt: Fix linting issue * feat(Crypto Node): Add Generate operation to generate random values (#2541) * ✨ Add generate action to crypto node * :zap: small fixes, nodelinter issues fixes * :zap: Improvements * :zap: Fix order Co-authored-by: michael-radency Co-authored-by: ricardo Co-authored-by: Jan Oberhauser * feat(Reddit Node): Add possibility to query saved posts (#3034) * chore: add nvmrc with required node version * feat: added saved posts to reddit node with credentials on User resource * Changed Details order * Fixed lint issue * Moved saved posts to profile as it only works for the logged in user, This avoids the breaking change * Removed .nvmrc * :zap: Improvements Co-authored-by: Yassine Fathi Co-authored-by: ricardo * feat(Jira Node): Add Simplify Output option to Issue > Get (#2408) * ✨ Add option to use Jira field display names * 🚸 Make mapped fields more deterministic * ♻️ Refactor Jira user loadOptions * Moved and renamed the option as well as only returning the fields to * Tweaked Friendly Fields to make it "Simplify Output" following similar patterns to other nodes * :zap: Improvements Co-authored-by: Jonathan Bennetts Co-authored-by: ricardo * feat(Zendesk Node): Add ticket status "On-hold" * :bookmark: Release n8n-workflow@0.93.0 * :arrow_up: Set n8n-workflow@0.93.0 on n8n-core * :bookmark: Release n8n-core@0.111.0 * :arrow_up: Set n8n-core@0.111.0 and n8n-workflow@0.93.0 on n8n-node-dev * :bookmark: Release n8n-node-dev@0.50.0 * :arrow_up: Set n8n-core@0.111.0 and n8n-workflow@0.93.0 on n8n-nodes-base * :bookmark: Release n8n-nodes-base@0.168.0 * :bookmark: Release n8n-design-system@0.16.0 * :arrow_up: Set n8n-design-system@0.16.0 and n8n-workflow@0.93.0 on n8n-editor-ui * :bookmark: Release n8n-editor-ui@0.137.0 * :arrow_up: Set n8n-core@0.111.0, n8n-editor-ui@0.137.0, n8n-nodes-base@0.168.0 and n8n-workflow@0.93.0 on n8n * :bookmark: Release n8n@0.170.0 * :arrow_up: Update package-lock.json file * :books: Update CHANGELOG.md with version 0.170.0 * feat(editor): Add download button for binary data (#2992) * :sparkles: Make it possible to download binary data * :zap: Fix lint issues and add support for filesystem mode * :zap: Design adjustment * :zap: Updated wording for Number operations on IF-Node (#3065) * fix(Google Tasks Node): Fix "Show Completed" option and hide title field where not needed (#2741) * 🐛 Google Tasks: Fix showCompleted * :zap: Improvements Co-authored-by: ricardo * feat(Mocean Node): Add "Delivery Report URL" option and credential tests (#3075) * add dlr url column add dlr url(delivery report URl) column. Allow user set the endpoint to receive the report * update update delivery report url description * :zap: fixed nodelinter issues, added credential test, replaced icon * :zap: Improvements Co-authored-by: d3no Co-authored-by: Michael Kret * feat(Emelia Node): Add Campaign > Duplicate functionality (#3000) * feat(Emelia Node): Add campaign duplication feature * :zap: small ui fixes, added credential test, fixed nodelinter issues * :zap: Improvements * :zap: Updated wording for Number operations on IF-Node (#3065) * fix(Google Tasks Node): Fix "Show Completed" option and hide title field where not needed (#2741) * 🐛 Google Tasks: Fix showCompleted * :zap: Improvements Co-authored-by: ricardo * feat(Mocean Node): Add "Delivery Report URL" option and credential tests (#3075) * add dlr url column add dlr url(delivery report URl) column. Allow user set the endpoint to receive the report * update update delivery report url description * :zap: fixed nodelinter issues, added credential test, replaced icon * :zap: Improvements Co-authored-by: d3no Co-authored-by: Michael Kret * :zap: Normalize name Co-authored-by: Michael Kret Co-authored-by: ricardo Co-authored-by: Jonathan Bennetts Co-authored-by: Tom <19203795+that-one-tom@users.noreply.github.com> Co-authored-by: Ricardo Espinoza Co-authored-by: d3no Co-authored-by: Jan Oberhauser * fix(GraphQL Node)!: Correctly report errors returned by the API (#3071) * upstream merge * :zap: graphql node will throw error when response has errors property * :hammer: updated changelog * :zap: Improvements * :zap: Improvements * :zap: Add package-lock.json back Co-authored-by: ricardo * feat(FTP Node): Add option to recursively create directories on rename (#3001) * Recursively Make Directories on SFTP Rename * Linting * :zap: Improvement * :zap: Rename "Move" to "Create Directories" * Change "Create Directories" description Co-authored-by: ricardo * feat(Microsoft Teams Node): Add chat message support (#2635) * ✨ Add chat messages to MS Teams node * Updated credentials to include missing scope * :zap: Small improvements Co-authored-by: Jonathan Bennetts Co-authored-by: ricardo * feat(Mautic Node): Add credential test and allow trailing slash in host (#3080) * Updated Mautic to stop trailing slashes from causing an issue * Fixed oauth failing when there is a trailing slash in the mautic host * Added credential test * test: Fix randomly failing UM tests (#3061) * :zap: Declutter test logs * :bug: Fix random passwords length * :bug: Fix password hashing in test user creation * :bug: Hash leftover password * :zap: Improve error message for `compare` * :zap: Restore `randomInvalidPassword` contant * :zap: Mock Telemetry module to prevent `--forceExit` * :zap: Silence logger * :zap: Simplify condition * :zap: Unhash password in payload * fix(NocoDB Node): Fix pagination (#3081) * feat(Strava Node): Add "Get Streams" operation (#2582) * Strava node: adding getStreams operation * Changed the keys to use multiOptions Co-authored-by: Jonathan Bennetts * fix(core): Fix crash on webhook when last node did not return data * fix(Salesforce Node): Fix issue that "status" did not get used for Case => Create & Update (#2212) * bugfix for salesforce case create and update case not picking status * :bug: Fix issue with package-lock.json Co-authored-by: ricardo * feat(ServiceNow Node): Add basicAuth support and fix getColumns loadOptions (#2712) * ✨ Support basic auth for ServiceNow * 🐛 Support ServiceNow sysparm_fields as string * :zap: credential test for basic auth * fix(Google Tasks Node): Fix "Show Completed" option and hide title field where not needed (#2741) * 🐛 Google Tasks: Fix showCompleted * :zap: Improvements Co-authored-by: ricardo * feat(Mocean Node): Add "Delivery Report URL" option and credential tests (#3075) * add dlr url column add dlr url(delivery report URl) column. Allow user set the endpoint to receive the report * update update delivery report url description * :zap: fixed nodelinter issues, added credential test, replaced icon * :zap: Improvements Co-authored-by: d3no Co-authored-by: Michael Kret * feat(Emelia Node): Add Campaign > Duplicate functionality (#3000) * feat(Emelia Node): Add campaign duplication feature * :zap: small ui fixes, added credential test, fixed nodelinter issues * :zap: Improvements * :zap: Updated wording for Number operations on IF-Node (#3065) * fix(Google Tasks Node): Fix "Show Completed" option and hide title field where not needed (#2741) * 🐛 Google Tasks: Fix showCompleted * :zap: Improvements Co-authored-by: ricardo * feat(Mocean Node): Add "Delivery Report URL" option and credential tests (#3075) * add dlr url column add dlr url(delivery report URl) column. Allow user set the endpoint to receive the report * update update delivery report url description * :zap: fixed nodelinter issues, added credential test, replaced icon * :zap: Improvements Co-authored-by: d3no Co-authored-by: Michael Kret * :zap: Normalize name Co-authored-by: Michael Kret Co-authored-by: ricardo Co-authored-by: Jonathan Bennetts Co-authored-by: Tom <19203795+that-one-tom@users.noreply.github.com> Co-authored-by: Ricardo Espinoza Co-authored-by: d3no Co-authored-by: Jan Oberhauser * :zap: fix nodelinter issues, added hint to field option * fix(GraphQL Node)!: Correctly report errors returned by the API (#3071) * upstream merge * :zap: graphql node will throw error when response has errors property * :hammer: updated changelog * :zap: Improvements * :zap: Improvements * :zap: Add package-lock.json back Co-authored-by: ricardo * feat(FTP Node): Add option to recursively create directories on rename (#3001) * Recursively Make Directories on SFTP Rename * Linting * :zap: Improvement * :zap: Rename "Move" to "Create Directories" * Change "Create Directories" description Co-authored-by: ricardo * feat(Microsoft Teams Node): Add chat message support (#2635) * ✨ Add chat messages to MS Teams node * Updated credentials to include missing scope * :zap: Small improvements Co-authored-by: Jonathan Bennetts Co-authored-by: ricardo * feat(Mautic Node): Add credential test and allow trailing slash in host (#3080) * Updated Mautic to stop trailing slashes from causing an issue * Fixed oauth failing when there is a trailing slash in the mautic host * Added credential test * test: Fix randomly failing UM tests (#3061) * :zap: Declutter test logs * :bug: Fix random passwords length * :bug: Fix password hashing in test user creation * :bug: Hash leftover password * :zap: Improve error message for `compare` * :zap: Restore `randomInvalidPassword` contant * :zap: Mock Telemetry module to prevent `--forceExit` * :zap: Silence logger * :zap: Simplify condition * :zap: Unhash password in payload * fix(NocoDB Node): Fix pagination (#3081) * feat(Strava Node): Add "Get Streams" operation (#2582) * Strava node: adding getStreams operation * Changed the keys to use multiOptions Co-authored-by: Jonathan Bennetts * :zap: Improvements * fix(core): Fix crash on webhook when last node did not return data * fix(Salesforce Node): Fix issue that "status" did not get used for Case => Create & Update (#2212) * bugfix for salesforce case create and update case not picking status * :bug: Fix issue with package-lock.json Co-authored-by: ricardo * :bug: Fix issue with credentials * :zap: Fix basicAuth * :zap: Reset default Co-authored-by: Michael Kret Co-authored-by: Tom <19203795+that-one-tom@users.noreply.github.com> Co-authored-by: ricardo Co-authored-by: Ricardo Espinoza Co-authored-by: d3no Co-authored-by: Charles Lecalier Co-authored-by: Jonathan Bennetts Co-authored-by: Jan Oberhauser Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com> Co-authored-by: Rhys Williams Co-authored-by: Iván Ovejero Co-authored-by: Luis Cipriani <37157+lfcipriani@users.noreply.github.com> Co-authored-by: Ketan Somvanshi * fix(EmailReadImap Node): Fix issue that crashed process if node was configured wrong (#3079) * :bug: Fix issue that IMAP node can crash n8n * :shirt: Fix lint issue * :arrow_up: Set simple-git@3.5.0 on n8n-nodes-base The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-SIMPLEGIT-2434306 * :shirt: Fix lint issue * :arrow_up: Update package-lock.json file * :bookmark: Release n8n-workflow@0.94.0 * :arrow_up: Set n8n-workflow@0.94.0 on n8n-core * :bookmark: Release n8n-core@0.112.0 * :arrow_up: Set n8n-core@0.112.0 and n8n-workflow@0.94.0 on n8n-node-dev * :bookmark: Release n8n-node-dev@0.51.0 * :arrow_up: Set n8n-core@0.112.0 and n8n-workflow@0.94.0 on n8n-nodes-base * :bookmark: Release n8n-nodes-base@0.169.0 * :arrow_up: Set n8n-workflow@0.94.0 on n8n-editor-ui * :bookmark: Release n8n-editor-ui@0.138.0 * :arrow_up: Set n8n-core@0.112.0, n8n-editor-ui@0.138.0, n8n-nodes-base@0.169.0 and n8n-workflow@0.94.0 on n8n * :bookmark: Release n8n@0.171.0 * :books: Update CHANGELOG.md with version 0.171.0 * fix(core): Fix issue with current executions not getting displayed (#3093) * fix(core): Fix issue with falsely skip authorizing (#3087) * fix(WooCommerce Node): Fix pagination issue with "Get All" operation (#2529) * zap(core): Fix issues with n8n version updates that skip multiple versions (#3099) * :bookmark: Release n8n-nodes-base@0.169.1 * :arrow_up: Set n8n-nodes-base@0.169.1 on n8n * :bookmark: Release n8n@0.171.1 * fix(Action Network Node): Fix pagination issue and add credential test (#3011) * fix(Action Network Node): Pagination * Fixed lint issue * Added credential test * :zap: Move credentials verification and injection to the credentials file Co-authored-by: Jonathan Bennetts Co-authored-by: ricardo * feat(PayPal Node): Add auth test, fix typo and update API URL (#3084) * Implements PayPal Auth API Test * Deletes unit tests * :rotating_light: Fixed lint issues * Added changes from PR#2568 * Moved methods to above execute Co-authored-by: paolo-rechia * feat(Magento 2 Node): Add credential tests (#3086) * Implements Magento Auth API Test * Deletes unit tests * Fixed lint issues and changed the URI for the credential test * :zap: Move credential verification to the credential file * :zap: Simplify code Co-authored-by: paolo-rechia Co-authored-by: ricardo Co-authored-by: Jan Oberhauser * :fire: Clear legacy tslint config files (#3103) * :rotating_light: Optimize UM tests (#3066) * :zap: Declutter test logs * :bug: Fix random passwords length * :bug: Fix password hashing in test user creation * :bug: Hash leftover password * :zap: Improve error message for `compare` * :zap: Restore `randomInvalidPassword` contant * :zap: Mock Telemetry module to prevent `--forceExit` * :fire: Remove unused imports * :fire: Remove unused import * :zap: Add util for configuring test SMTP * :zap: Isolate user creation * :fire: De-duplicate `createFullUser` * :zap: Centralize hashing * :fire: Remove superfluous arg * :fire: Remove outdated comment * :zap: Prioritize shared tables during trucation * :test_tube: Add login tests * :zap: Use token helper * :pencil2: Improve naming * :zap: Make `createMemberShell` consistent * :fire: Remove unneeded helper * :fire: De-duplicate `beforeEach` * :pencil2: Improve naming * :truck: Move `categorize` to utils * :pencil2: Update comment * :test_tube: Simplify test * :blue_book: Improve `User.password` type * :zap: Silence logger * :zap: Simplify condition * :zap: Unhash password in payload * :bug: Fix comparison against unhashed password * :zap: Increase timeout for fake SMTP service * :fire: Remove unneeded import * :zap: Use `isNull()` * :test_tube: Use `Promise.all()` in creds tests * :test_tube: Use `Promise.all()` in me tests * :test_tube: Use `Promise.all()` in owner tests * :test_tube: Use `Promise.all()` in password tests * :test_tube: Use `Promise.all()` in users tests * :zap: Re-set cookie if UM disabled * :fire: Remove repeated line * :zap: Refactor out shared owner data * :fire: Remove unneeded import * :fire: Remove repeated lines * :zap: Organize imports * :zap: Reuse helper * :truck: Rename tests to match routers * :truck: Rename `createFullUser()` to `createUser()` * :zap: Consolidate user shell creation * :zap: Make hashing async * :zap: Add email to user shell * :zap: Optimize array building * 🛠 refactor user shell factory * :bug: Fix MySQL tests * :zap: Silence logger in other DBs Co-authored-by: Ben Hesseldieck * :test_tube: Add Node 14 tests to CI (#2779) Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com> * :hammer: Infer typings for config schema (#2656) * :truck: Move schema to standalone file * :zap: Add assertions to string literal arrays * :sparkles: Infer typings for convict schema * :fire: Remove unneeded assertions * :hammer: Fix errors surfaced by typings * :zap: Type nodes.include/exclude per docs * :zap: Account for types for exception paths * :zap: Set method alias to flag incorrect paths * :zap: Replace original with alias * :zap: Make allowance for nodes.include * :zap: Adjust leftover calls * :twisted_rightwards_arrows: Fix conflicts * :fire: Remove unneeded castings * :blue_book: Simplify exception path type * :package: Update package-lock.json * :fire: Remove unneeded imports * :fire: Remove unrelated file * :zap: Update schema * :zap: Update interface * :package: Update package-lock.json * :package: Update package-lock.json * :fire: Remove leftover assertions Co-authored-by: Jan Oberhauser * :zap: Enable `esModuleInterop` compiler option and upgrade to TypeScript 4.6 (#3106) * :zap: Enable `esModuleInterop` for /core * :zap: Adjust imports in /core * :zap: Enable `esModuleInterop` for /cli * :zap: Adjust imports in /cli * :zap: Enable `esModuleInterop` for /nodes-base * :zap: Adjust imports in /nodes-base * :zap: Make imports consistent * ⬆️ Upgrade TypeScript to 4.6 (#3109) * :arrow_up: Upgrade TypeScript to 4.6 * :package: Update package-lock.json * :wrench: Avoid erroring on untyped errors * :blue_book: Fix type error Co-authored-by: Jan Oberhauser * fix(core): Set correct timezone in luxon (#3115) * :arrow_up: Set moment@2.29.2 on n8n-nodes-base * fix(editor): Fix i18n issues (#3072) * :bug: Fix `defaultLocale` watcher * :zap: Improve error handling for headers * :pencil2: Improve naming * :bug: Fix hiring banner check * :zap: Flatten base text keys * :zap: Fix miscorrected key * :zap: Implement pluralization * :pencil2: Update docs * :truck: Move headers fetching to `App.vue` * fix hiring banner * :zap: Fix missing import * :pencil2: Alphabetize translations * :zap: Switch to async check * feat(editor): Refactor Output Panel + fix i18n issues (#3097) * update main panel * finish up tabs * fix docs link * add icon * update node settings * clean up settings * add rename modal * fix component styles * fix spacing * truncate name * remove mixin * fix spacing * fix spacing * hide docs url * fix bug * fix renaming * refactor tabs out * refactor execute button * refactor header * add more views * fix error view * fix workflow rename bug * rename component * fix small screen bug * move items, fix positions * add hover state * show selector on empty state * add empty run state * fix binary view * 1 item * add vjs styles * show empty row for every item * refactor tabs * add branch names * fix spacing * fix up spacing * add run selector * fix positioning * clean up * increase width of selector * fix up spacing * fix copy button * fix branch naming; type issues * fix docs in custom nodes * add type * hide items when run selector is shown * increase selector size * add select prepend * clean up a bit * Add pagination * add stale icon * enable stale data in execution run * Revert "enable stale data in execution run" 8edb68dbffa0aa0d8189117e1a53381cb2c27608 * move metadata to its own state * fix smaller size * add scroll buttons * update tabs on resize * update stale data on rename * remove metadata on delete * hide x * change title colors * binary data classes * remove duplicate css * add colors * delete unused keys * use event bus * update styles of pagination * fix ts issues * fix ts issues * use chevron icons * fix design with download button * add back to canvas button * add trigger warning disabled * show trigger warning tooltip * update button labels for triggers * update node output message * fix add-option bug * add page selector * fix pagination selector bug * fix executions bug * remove hint * add json colors * add colors for json * add color json keys * fix select options bug * update keys * address comments * update name limit * align pencil * update icon size * update radio buttons height * address comments * fix pencil bug * change buttons alignment * fully center * change order of buttons * add no output message in branch * scroll to top * change active state * fix page size * all items * update expression background * update naming * align pencil * update modal background * add schedule group * update schedule nodes messages * use ellpises for last chars * fix spacing * fix tabs issue * fix too far data bug * fix executions bug * fix table wrapping * fix rename bug * add padding * handle unkown errors * add sticky header * ignore empty input, trim node name * nudge lightness of color * center buttons * update pagination * set colors of title * increase table font, fix alignment * fix pencil bug * fix spacing * use date now * address pagination issues * delete unused keys * update keys sort * fix prepend * fix radio button position * Revert "fix radio button position" ae42781786f2e6dcfb00d1be770b19a67f533bdf Co-authored-by: Mutasem Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com> * :arrow_up: Update package-lock.json file * :bookmark: Release n8n-workflow@0.95.0 * :arrow_up: Set n8n-workflow@0.95.0 on n8n-core * :bookmark: Release n8n-core@0.113.0 * :arrow_up: Set n8n-core@0.113.0 and n8n-workflow@0.95.0 on n8n-node-dev * :bookmark: Release n8n-node-dev@0.52.0 * :arrow_up: Set n8n-core@0.113.0 and n8n-workflow@0.95.0 on n8n-nodes-base * :bookmark: Release n8n-nodes-base@0.170.0 * :bookmark: Release n8n-design-system@0.17.0 * :arrow_up: Set n8n-design-system@0.17.0 and n8n-workflow@0.95.0 on n8n-editor-ui * :bookmark: Release n8n-editor-ui@0.139.0 * :arrow_up: Set n8n-core@0.113.0, n8n-editor-ui@0.139.0, n8n-nodes-base@0.170.0 and n8n-workflow@0.95.0 on n8n * :bookmark: Release n8n@0.172.0 * :books: Update CHANGELOG.md with version 0.171.1 and 0.172.0 * :zap: Fix n8n-node-dev publish issue * :zap: Fix credential formatting issues (#3134) * :shirt: Autofix creds lint issues * :shirt: Manually fix creds lint issues * :shirt: Fix indentation * :pencil2: Fix typo * :shirt: Fix indentation * :pencil2: Fix typo * :zap: Add executeWorkflow input-output notice. (#3095) * :zap: Remove non-null assertions for `Db` collections (#3111) * :blue_book: Remove unions to `null` * :zap: Track `Db` initialization state * :fire: Remove non-null assertions * :shirt: Remove lint exceptions * :fire: Remove leftover assertion * feat(Google Cloud Realtime Database Node): Make it possible to select region (#3096) * upstream merge * :hammer: fixed bug, replaced icon with svg, added ability to get whole db object * :hammer: optimization * :hammer: option for region in credentials * :bug: Fix region default * :zap: Remove dot Co-authored-by: ricardo Co-authored-by: Jan Oberhauser * fix(ui): Reset text-edit input value when pressing esc key to have matching input values (#3098) * :zap: Make event on Eventbrite Trigger Node optional (#2829) * Set `event` property as optional * Add some parameter descriptions To please nodelinter, mostly. * Fix UI complaining about missing parameter. * :rotating_light: Fixed lint isssues * :zap: Improvements Co-authored-by: Jonathan Bennetts Co-authored-by: ricardo * fix(Zoho Node): Fix pagination issue (#3129) * fix(editor): Fix breaking Drop-downs after removing expressions (#3094) * :bug: Fixed multiOption parameter input dropdown values after removing expression. * :recycle: Moved array value normalization to removeExpression action. * :bug: Handled scenario where expression contained invalid value. * :art: Centralize error throwing for encryption keys and credentials (#3105) * Centralized error throwing for encryption key * Unifying the error message used by cli and core packages * Improvements to error messages to make it more DRY * Removed unnecessary throw * Throwing error when credential does not exist to simplify node behavior (#3112) Co-authored-by: Iván Ovejero * fix(core): Make email for UM case insensitive (#3078) * 🚧 lowercasing email * ✅ add tests for case insensitive email * 🐘 add migration to lowercase email * 🚚 rename migration * 🐛 fix package.lock * :bug: fix double import * 📋 add todo * :zap: Add autocompletion for i18n keys in script sections of Vue files (#3133) * :blue_book: Type `baseText()` to i18n keys * :blue_book: Adjust `baseText()` signature * :shirt: Except JSON files from Vue ESLint * :bug: Fix errors surfaced by `baseText()` typing * :zap: Pluralize keys * :blue_book: Add typing for category names * :zap: Mark internal keys * :pencil2: Update docs references * :art: Prettify syntax * :bug: Fix leftover internal key references * feat(Discord Node): Add additional options (#2918) * 🔖 Discord Node v2.0 * Updated image from png to svg * Added correct versioning * Added old for versioning purposes * Added other parameter for the url * Fixed subtitle added multipart option for payload * Removed unused imports * Changed data type for binary file * Removed console.log * Moved the additional fields to an option field + fixed some bugs * Refactored node into one version * Removed any type * Fixed some broken behaviour * Minor fixes for discord node * :zap: Fix parameter name Co-authored-by: Timeraa Co-authored-by: Omar Ajoue Co-authored-by: Jan Oberhauser * feat(PagerDuty Node): Add support for additional details in incidents (#3140) * feat(PagerDuty node): add support for additional details for the incident * fix(editor): Fix breaking Drop-downs after removing expressions (#3094) * :bug: Fixed multiOption parameter input dropdown values after removing expression. * :recycle: Moved array value normalization to removeExpression action. * :bug: Handled scenario where expression contained invalid value. * :art: Centralize error throwing for encryption keys and credentials (#3105) * Centralized error throwing for encryption key * Unifying the error message used by cli and core packages * Improvements to error messages to make it more DRY * Removed unnecessary throw * Throwing error when credential does not exist to simplify node behavior (#3112) Co-authored-by: Iván Ovejero * fix(core): Make email for UM case insensitive (#3078) * 🚧 lowercasing email * ✅ add tests for case insensitive email * 🐘 add migration to lowercase email * 🚚 rename migration * 🐛 fix package.lock * :bug: fix double import * 📋 add todo * :zap: Add autocompletion for i18n keys in script sections of Vue files (#3133) * :blue_book: Type `baseText()` to i18n keys * :blue_book: Adjust `baseText()` signature * :shirt: Except JSON files from Vue ESLint * :bug: Fix errors surfaced by `baseText()` typing * :zap: Pluralize keys * :blue_book: Add typing for category names * :zap: Mark internal keys * :pencil2: Update docs references * :art: Prettify syntax * :bug: Fix leftover internal key references * feat(Discord Node): Add additional options (#2918) * 🔖 Discord Node v2.0 * Updated image from png to svg * Added correct versioning * Added old for versioning purposes * Added other parameter for the url * Fixed subtitle added multipart option for payload * Removed unused imports * Changed data type for binary file * Removed console.log * Moved the additional fields to an option field + fixed some bugs * Refactored node into one version * Removed any type * Fixed some broken behaviour * Minor fixes for discord node * :zap: Fix parameter name Co-authored-by: Timeraa Co-authored-by: Omar Ajoue Co-authored-by: Jan Oberhauser * :zap: Move order and fix displayName and description Co-authored-by: Alex Grozav Co-authored-by: Omar Ajoue Co-authored-by: Iván Ovejero Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com> Co-authored-by: agobrech <45268029+agobrech@users.noreply.github.com> Co-authored-by: Timeraa Co-authored-by: Jan Oberhauser * :shirt: Fix lint issue * fix(ZendeskTrigger Node): Fix deprecated targets, replaced with webhooks (#3025) * :hammer: fix for deprecated targets * :zap: Move crendentials injection to the credential file Co-authored-by: ricardo * feat(GoogleBigQuery Node): Add support for service account authentication (#3128) * :zap: Enable service account authentication with the BigQuery node * :hammer: fixed auth issue with key, fixed nodelinter issues * :zap: added continue on fail * :zap: Improvements Co-authored-by: Mark Steve Samson Co-authored-by: ricardo * fix(core): Add "rawBody" also for xml requests (#3143) * :shirt: Fix lint issue * fix(Discourse Node): Fix issue with not all posts getting returned and add credential test (#3007) * :hammer: fix for not all posts returning * :zap: added credential test * :zap: Improvements * :zap: Improvements * :zap: Define test the new way * :zap: Remove not needed imports * :zap: Fix auth test problem Co-authored-by: ricardo Co-authored-by: Ricardo Espinoza Co-authored-by: Jan Oberhauser * :arrow_up: Update package-lock.json file * feat(Markdown Node): Add new node to covert between Markdown <> HTML (#1728) * :sparkles: Markdown Node * Tweaked wording * :arrow_up: Bump showdown to latest version * :zap: Small improvement * :shirt: Fix linting issue * :zap: Small improvements * :hammer: added options, added continue on fail, some clean up * :zap: removed test code * :zap: added missing semicolumn * :hammer: wip * :hammer: replaced library for converting html to markdown, added options * :zap: lock file fix * :hammer: clean up Co-authored-by: sirdavidoff <1670123+sirdavidoff@users.noreply.github.com> Co-authored-by: Michael Kret * fix(Postgres Node): Fix issue with columns containing spaces (#2989) * :hammer: fixed error when column name containes spaces * :zap: added lock fille to commit * :hammer: fix for column names wraped in square braces * :hammer: added lock file * :hammer: fix for update key not included in update columns * :zap: Revert imports Co-authored-by: Ricardo Espinoza Co-authored-by: Jan Oberhauser * :bug: Update initialization checks (#3147) * feat(editor): Add drag and drop from nodes panel (#3123) * :sparkles: Added support for drag and drop from nodes main panel. :sparkles: Added node draggable placeholder. * :sparkles: Added snapping to grid. Changed how draggable ghost follows the cursor. * :lipstick: Changed node drag anchor position to be centered. * :sparkles: Added drag and drop animation. Added event cancellation when dropping node on main panel. * :recycle: Simplified drag and drop code and cleaned up prop-drilling. * :bug: Added check for nodeTypeName in dataTransfer when draging and dropping nodes. * :bug: Ensured MS Edge compatibility. MS edge does not send datatransfer in ondragover event. Co-authored-by: Mutasem * feat(Slack Node): Add blocks to slack message update (#2182) * Adding blocks to slack message update * Fixing lint * Adding blocks to slack message update * Fixing lint * :zap: added toggle to display json inputs in update operation * :zap: Improvements * feat(Markdown Node): Add new node to covert between Markdown <> HTML (#1728) * :sparkles: Markdown Node * Tweaked wording * :arrow_up: Bump showdown to latest version * :zap: Small improvement * :shirt: Fix linting issue * :zap: Small improvements * :hammer: added options, added continue on fail, some clean up * :zap: removed test code * :zap: added missing semicolumn * :hammer: wip * :hammer: replaced library for converting html to markdown, added options * :zap: lock file fix * :hammer: clean up Co-authored-by: sirdavidoff <1670123+sirdavidoff@users.noreply.github.com> Co-authored-by: Michael Kret Co-authored-by: Michael Kret Co-authored-by: ricardo Co-authored-by: Ricardo Espinoza Co-authored-by: sirdavidoff <1670123+sirdavidoff@users.noreply.github.com> Co-authored-by: Jan Oberhauser * :arrow_up: Update package-lock.json file * :bookmark: Release n8n-workflow@0.96.0 * :arrow_up: Set n8n-workflow@0.96.0 on n8n-core * :bookmark: Release n8n-core@0.114.0 * :arrow_up: Set n8n-core@0.114.0 and n8n-workflow@0.96.0 on n8n-node-dev * :bookmark: Release n8n-node-dev@0.53.0 * :arrow_up: Set n8n-core@0.114.0 and n8n-workflow@0.96.0 on n8n-nodes-base * :bookmark: Release n8n-nodes-base@0.171.0 * :arrow_up: Set n8n-workflow@0.96.0 on n8n-editor-ui * :bookmark: Release n8n-editor-ui@0.140.0 * :arrow_up: Set n8n-core@0.114.0, n8n-editor-ui@0.140.0, n8n-nodes-base@0.171.0 and n8n-workflow@0.96.0 on n8n * :bookmark: Release n8n@0.173.0 * :books: Update CHANGELOG.md with version 0.173.0 * :zap: Fix discord icon name * :bookmark: Release n8n-nodes-base@0.171.1 * :arrow_up: Set n8n-nodes-base@0.171.1 on n8n * :bookmark: Release n8n@0.173.1 * :books: Update CHANGELOG.md with version 0.173.1 * :zap: Update Calendly Logo (#2528) Calendly has a new logo, updated the logo from the media kit: https://calendly.com/newsroom * test(core): Implement timeout in SMTP tests (#3152) * :zap: Implement timeout in SMTP tests * :truck: Move timeout to constants * fix(QuickBooks Node) Fix pagination (#3169) * Fixed pagination issue * Removed unused import * fix(Slack Node): Fix credential test (#3151) * feat(All AWS Nodes): Enable support for AWS temporary credentials (#2587) * Enable support for AWS temporary credentials * :hammer: removed toggle from ui added sessionToken to other aws services that using sign function from aws4 module * Update sign method for other AWS nodes * Remove the unneeded additional `temporaryCredentials` checkbox * Update description for session token * :zap: added missing session token to credentials test * Update sign method for DynamoDB * :hammer: added back toggle for hiding session token, fixed linter errors * :zap: wording fix Co-authored-by: Michael Kret * :zap: Removed unnecessary import and fixed option order Co-authored-by: Michael Kret Co-authored-by: nivb06 <99671629+nivb06@users.noreply.github.com> Co-authored-by: Niv Co-authored-by: Tom <19203795+that-one-tom@users.noreply.github.com> Co-authored-by: Jan Oberhauser Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com> Co-authored-by: Omar Ajoue Co-authored-by: Jan Oberhauser Co-authored-by: Sergio Co-authored-by: Valentin Mocanu Co-authored-by: Jasper Zonneveld Co-authored-by: Fred Co-authored-by: Deborah Co-authored-by: TheFSilver <40010470+TheFSilver@users.noreply.github.com> Co-authored-by: Ricardo Espinoza Co-authored-by: pemontto <939704+pemontto@users.noreply.github.com> Co-authored-by: Jonathan Bennetts Co-authored-by: Yassine Fathi Co-authored-by: Ricardo Espinoza Co-authored-by: d3no Co-authored-by: Charles Lecalier Co-authored-by: Rhys Williams Co-authored-by: Iván Ovejero Co-authored-by: Luis Cipriani <37157+lfcipriani@users.noreply.github.com> Co-authored-by: Ketan Somvanshi Co-authored-by: Snyk bot Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com> Co-authored-by: paolo-rechia Co-authored-by: Ben Hesseldieck Co-authored-by: Mutasem Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com> Co-authored-by: Alex Grozav Co-authored-by: Francesco Pongiluppi Co-authored-by: agobrech <45268029+agobrech@users.noreply.github.com> Co-authored-by: Timeraa Co-authored-by: Andrey Sinitsyn Co-authored-by: Mark Steve Samson Co-authored-by: sirdavidoff <1670123+sirdavidoff@users.noreply.github.com> Co-authored-by: Mike Quinlan Co-authored-by: Cody Stamps Co-authored-by: Basit Ali --- .../nodes-base/nodes/MongoDb/MongoDb.node.ts | 9 +++++++-- .../nodes/MongoDb/mongo.node.options.ts | 9 ++++++++- .../nodes/MongoDb/mongo.node.utils.ts | 17 +++++++++++++++++ 3 files changed, 32 insertions(+), 3 deletions(-) diff --git a/packages/nodes-base/nodes/MongoDb/MongoDb.node.ts b/packages/nodes-base/nodes/MongoDb/MongoDb.node.ts index f939a1b9e2..ac9ad9af95 100644 --- a/packages/nodes-base/nodes/MongoDb/MongoDb.node.ts +++ b/packages/nodes-base/nodes/MongoDb/MongoDb.node.ts @@ -23,6 +23,7 @@ import { import { getItemCopy, handleDateFields, + handleDateFieldsWithDotNotation, validateAndResolveMongoCredentials } from './mongo.node.utils'; @@ -145,8 +146,10 @@ export class MongoDb implements INodeType { const options = this.getNodeParameter('options', 0) as IDataObject; const insertItems = getItemCopy(items, fields); - if (options.dateFields) { + if (options.dateFields && !options.useDotNotation) { handleDateFields(insertItems, options.dateFields as string); + } else if (options.dateFields && options.useDotNotation) { + handleDateFieldsWithDotNotation(insertItems, options.dateFields as string); } const { insertedIds } = await mdb @@ -194,8 +197,10 @@ export class MongoDb implements INodeType { // Prepare the data to update and copy it to be returned const updateItems = getItemCopy(items, fields); - if (options.dateFields) { + if (options.dateFields && !options.useDotNotation) { handleDateFields(updateItems, options.dateFields as string); + } else if (options.dateFields && options.useDotNotation) { + handleDateFieldsWithDotNotation(updateItems, options.dateFields as string); } for (const item of updateItems) { diff --git a/packages/nodes-base/nodes/MongoDb/mongo.node.options.ts b/packages/nodes-base/nodes/MongoDb/mongo.node.options.ts index 6ed8f2854a..2951436b54 100644 --- a/packages/nodes-base/nodes/MongoDb/mongo.node.options.ts +++ b/packages/nodes-base/nodes/MongoDb/mongo.node.options.ts @@ -266,7 +266,14 @@ export const nodeDescription: INodeTypeDescription = { name: 'dateFields', type: 'string', default: '', - description: 'Comma separeted list of fields that will be parse as Mongo Date type.', + description: 'Comma separeted list of fields that will be parse as Mongo Date type', + }, + { + displayName:'Use Dot Notation', + name: 'useDotNotation', + type: 'boolean', + default: false, + description: 'Wheather to use dot notation to access date fields', }, ], }, diff --git a/packages/nodes-base/nodes/MongoDb/mongo.node.utils.ts b/packages/nodes-base/nodes/MongoDb/mongo.node.utils.ts index 42dc4efcb0..be09378b09 100644 --- a/packages/nodes-base/nodes/MongoDb/mongo.node.utils.ts +++ b/packages/nodes-base/nodes/MongoDb/mongo.node.utils.ts @@ -11,6 +11,8 @@ import { IMongoParametricCredentials, } from './mongo.node.types'; +import { get, set } from 'lodash'; + /** * Standard way of building the MongoDB connection string, unless overridden with a provided string * @@ -118,3 +120,18 @@ export function handleDateFields(insertItems: IDataObject[], fields: string) { } } } + +export function handleDateFieldsWithDotNotation(insertItems: IDataObject[], fields: string) { + const dateFields = fields.split(',').map(field => field.trim()); + + for (let i = 0; i < insertItems.length; i++) { + for (const field of dateFields) { + const fieldValue = get(insertItems[i], field) as string; + const date = new Date(fieldValue); + + if (fieldValue && !isNaN(date.valueOf())) { + set(insertItems[i], field, date); + } + } + } +}