Commit graph

118 commits

Author SHA1 Message Date
Michael Kret 254700a059
fix(Slack Node): Attachments fix (#8471)
Co-authored-by: Elias Meire <elias@meire.dev>
2024-02-01 12:26:04 +01:00
कारतोफ्फेलस्क्रिप्ट™ 52a2e25a25
fix(core): Replace all moment imports with moment-timezone (#8337) 2024-01-15 15:45:33 +01:00
Michael Kret 5e16dd4ab4
feat(core): Improvements/overhaul for nodes working with binary data (#7651)
Github issue / Community forum post (link here to close automatically):

---------

Co-authored-by: Giulio Andreini <andreini@netseven.it>
Co-authored-by: Marcus <marcus@n8n.io>
2024-01-03 13:08:16 +02:00
Iván Ovejero 0ca2759d75
refactor: Optimize SVG icons for nodes (#8195)
Running `svgo` to optimize icon size for nodes.
2024-01-02 17:40:08 +01:00
Iván Ovejero 1d46983b24
refactor: Unify severity and level for all application errors for Sentry (no-changelog) (#7956)
## Summary
Unify `severity` and `level` for all backend application errors for
Sentry

Follow-up to:
https://github.com/n8n-io/n8n/pull/7914#issuecomment-1840433542

...

#### How to test the change:
1. ...


## Issues fixed
Include links to Github issue or Community forum post or **Linear
ticket**:
> Important in order to close automatically and provide context to
reviewers

...


## Review / Merge checklist
- [ ] PR title and summary are descriptive. **Remember, the title
automatically goes into the changelog. Use `(no-changelog)` otherwise.**
([conventions](https://github.com/n8n-io/n8n/blob/master/.github/pull_request_title_conventions.md))
- [ ] [Docs updated](https://github.com/n8n-io/n8n-docs) or follow-up
ticket created.
- [ ] Tests included.
> A bug is not considered fixed, unless a test is added to prevent it
from happening again. A feature is not complete without tests.
  >
> *(internal)* You can use Slack commands to trigger [e2e
tests](https://www.notion.so/n8n/How-to-use-Test-Instances-d65f49dfc51f441ea44367fb6f67eb0a?pvs=4#a39f9e5ba64a48b58a71d81c837e8227)
or [deploy test
instance](https://www.notion.so/n8n/How-to-use-Test-Instances-d65f49dfc51f441ea44367fb6f67eb0a?pvs=4#f6a177d32bde4b57ae2da0b8e454bfce)
or [deploy early access version on
Cloud](https://www.notion.so/n8n/Cloudbot-3dbe779836004972b7057bc989526998?pvs=4#fef2d36ab02247e1a0f65a74f6fb534e).
2023-12-07 16:57:02 +01:00
Jon 90bb6ba417
feat(Slack Node): Add support for getting the profile of a user (#7829)
Github issue / Community forum post (link here to close automatically):
https://github.com/n8n-io/n8n/issues/7825

This adds support for getting a users profile which returns different
data to the existing user info (Get) operation we have.

Test Workflow
```
{
  "meta": {
    "instanceId": "8c8c5237b8e37b006a7adce87f4369350c58e41f3ca9de16196d3197f69eabcd"
  },
  "nodes": [
    {
      "parameters": {},
      "id": "69f437fb-9962-4d51-91bb-0ef4b3827e49",
      "name": "When clicking \"Execute Workflow\"",
      "type": "n8n-nodes-base.manualTrigger",
      "typeVersion": 1,
      "position": [
        880,
        380
      ]
    },
    {
      "parameters": {
        "resource": "user",
        "user": {
          "__rl": true,
          "value": "U035F563JSW",
          "mode": "list",
          "cachedResultName": "jonathan"
        }
      },
      "id": "826828db-598b-40c7-b085-5b01f2c10d73",
      "name": "Get Info",
      "type": "n8n-nodes-base.slack",
      "typeVersion": 2.1,
      "position": [
        1120,
        260
      ],
      "credentials": {
        "slackApi": {
          "id": "E4DnXIyNuRxi5GSz",
          "name": "Slack account"
        }
      }
    },
    {
      "parameters": {
        "resource": "user",
        "operation": "getProfile",
        "user": {
          "__rl": true,
          "value": "U035F563JSW",
          "mode": "list",
          "cachedResultName": "jonathan"
        }
      },
      "id": "9de02c3f-e17c-4a32-a64e-11aaa0b36120",
      "name": "Get Profile",
      "type": "n8n-nodes-base.slack",
      "typeVersion": 2.1,
      "position": [
        1120,
        440
      ],
      "credentials": {
        "slackApi": {
          "id": "E4DnXIyNuRxi5GSz",
          "name": "Slack account"
        }
      }
    }
  ],
  "connections": {
    "When clicking \"Execute Workflow\"": {
      "main": [
        [
          {
            "node": "Get Info",
            "type": "main",
            "index": 0
          },
          {
            "node": "Get Profile",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "pinData": {}
}
```
2023-11-29 08:37:18 +00:00
Iván Ovejero 18dcea8c19
refactor(Slack Node): Stop reporting to Sentry errors from missing scopes (no-changelog) (#7542)
https://n8nio.sentry.io/issues/4570238312
2023-10-27 16:46:05 +02:00
Iván Ovejero 62c096710f
refactor: Run lintfix (no-changelog) (#7537)
- Fix autofixable violations
- Remove unused directives
- Allow for PascalCased variables - needed for dynamically imported or
assigned classes, decorators, routers, etc.
2023-10-27 14:15:02 +02:00
कारतोफ्फेलस्क्रिप्ट™ b6de910cbe
refactor(core): Abstract away InstanceSettings and encryptionKey into injectable services (no-changelog) (#7471)
This change ensures that things like `encryptionKey` and `instanceId`
are always available directly where they are needed, instead of passing
them around throughout the code.
2023-10-23 13:39:35 +02:00
Michael Kret 8f9fe6269b
feat(core): Add "Sent by n8n" attribution (#7183)
Github issue / Community forum post (link here to close automatically):

---------

Co-authored-by: Giulio Andreini <g.andreini@gmail.com>
2023-10-03 11:18:59 +03:00
Iván Ovejero 75541e91f2
refactor(core)!: Make getBinaryStream async (#7247)
Story: [PAY-846](https://linear.app/n8n/issue/PAY-846) | Related:
https://github.com/n8n-io/n8n/pull/7225

For the S3 backend for external storage of binary data and execution
data, the `getAsStream` method in the binary data manager interface used
by FS and S3 will need to become async. This is a breaking change for
nodes-base.
2023-09-25 16:59:45 +02:00
कारतोफ्फेलस्क्रिप्ट™ 6aa7b93473
refactor(core): Deprecate prepareOutputData (no-changelog) (#7091) 2023-09-05 12:59:02 +02:00
Iván Ovejero f50fc8443e
refactor: Reduce usage of IExecuteSingleFunctions (no-changelog) (#6944) 2023-08-16 15:52:41 +02:00
OlegIvaniv 2acd71eeb1
fix(Slack Node): Add UTM params to n8n reference in Slack message (no-changelog) (#6668)
fix(Slack Node): Add UTM params to n8n reference in Slack message
2023-07-17 17:07:28 +02:00
OlegIvaniv aa53c46367
feat(Slack Node): Add option to include link to workflow in Slack node (#6611)
* feat(Slack Node): Add “automated by” message to Slack node’s post message

Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>

* Pass instanceBaseUrl to node context

Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>

* Move `includeLinkToWorkflow` to options

Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>

* keep "includeLinkToWorkflow" hidden

* Only append the message for version 2.1 and up

Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>

---------

Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
Co-authored-by: ricardo <ricardoespinoza105@gmail.com>
2023-07-10 15:03:21 +02:00
Iván Ovejero beedfb609c
feat(editor): SQL editor overhaul (#6282)
* Draft setup
*  Implemented expression evaluation in Postgres node, minor SQL editor UI improvements, minor refacring
*  Added initial version of expression preview for SQL editor
*  Linking npm package for codemirror sql grammar instead of a local file
*  Moving expression editor wrapper elements to the component
*  Using expression preview in SQL editor
* Use SQL parser skipping whitespace
*  Added support for custom skipped segments specification
*  Fixing highlight problems with dots and expressions that resolve to zero
* 👕 Fixing linting error
*  Added current item support
*  Added expression support to more nodes with sql editor
*  Added expression support for other nodes
*  Implemented different SQL dialect support
* 🐛 Fixing hard-coded parameter names for editors
*  Fixing preview for nested queries, updating query when input data changes, adding keyboard shortcut to toggle comments
*  Adding a custom automcomplete notice for different editors
*  Updating SQL autocomplete notice
*  Added unit tests for SQL editor
*  Using latest grammar
* 🐛 Fixing code node editor rendering
* 💄 SQL preview dropdown matches editor width. Removing unnecessary css
*  Addressing PR review feedback
* 👌 Addressing PR review feedback pt2
* 👌 Added path alias for utils in nodes-base package
* 👌 Addressing more PR review feedback
*  Adding tests for `getResolvables` utility function
* Fixing lodash imports
* 👌 Better focus handling, adding more plugins to the editor, other minor imrovements
*  Not showing SQL autocomplete suggestions inside expressions
*  Using npm package for sql grammar
*  Removing autocomplete notice, adding line highlight on syntax error
* 👌 Addressing code review feedback
---------
Co-authored-by: Milorad Filipovic <milorad@n8n.io>
2023-06-22 16:47:28 +02:00
Chris Wu 1111c915f2
refactor(core): Replace lodash's "soft-deprecated" individual packages with lodash to resolve CVE (no-changelog) (#6450)
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-06-16 16:26:35 +02:00
Michael Kret cb497fbbec
feat(core): Add notice to alert users a new version is available 2023-05-02 11:45:04 +03:00
Michael Kret 8669f95736
fix(Slack Node): Restore ability to send text in addition of blocks or attachments 2023-04-28 13:23:36 +03:00
कारतोफ्फेलस्क्रिप्ट™ c87262a312
docs: Stop assuming the user's gender in code comments (no-changelog) (#6015) 2023-04-19 16:00:49 +02:00
कारतोफ्फेलस्क्रिप्ट™ 7a4e9ef5fa
refactor: Remove n8n-core dependency in nodes-base (no-changelog) (#5649) 2023-03-09 18:13:15 +01:00
कारतोफ्फेलस्क्रिप्ट™ 5eb0d52459
refactor: Unify binary-data assertion across all nodes (no-changelog) (#5624) 2023-03-06 17:33:32 +01:00
agobrech 9420b0fdf8
feat(Slack Node): Move from Binary Buffer to Binary streaming (#5612)
 Add Binary streaming instead of binary buffering
2023-03-03 18:11:27 +01:00
Michael Kret bb4db58819
fix(core): Remove linting exceptions in nodes-base, @typescript-eslint/no-unsafe-argument (no-changelog) 2023-02-28 05:39:43 +02:00
Alex Grozav f0695827f5
feat: Migrate packages from lodash to lodash-es (no-changelog) (#5538) 2023-02-23 16:16:05 +01:00
Jonathan Bennetts 3af3db160b
fix: fix typo in error messages when a property does not exist (#4310) 2023-02-23 08:33:43 +00:00
Jonathan Bennetts 7954ed3cfb
feat(Slack Node): Add support for manually inputting a channel name (#5488) 2023-02-16 10:45:03 +00:00
agobrech 4df69428f1
feat(Slack Node): Revamp the node with more functionalities in a new version (#4587)
* 🔥 Remove useless tooltips

* Slack change additional fields to Options in node

* 🥅 Add error handeling for out of Scope request

* ♻️ Refactor channel visibility

* ♻️ refactor user ressource

* Update user profile

* 🔥 remove JSON parameter

* 🔥 remove attchmant json and block json

* 🎨 refactors message post

* 🎨 refactor ts property into timestamps

* 🎨 change action name for messages

*  add new operation to message ressouce

*  add search backend logic + channel RLC

* 🎨 improve timestamp description and plaecholder

* 🎨 change timestamp disaplay name

*  add RLC for channels

*  add versioning

* 🐛 Fix imports for versioning

*  Add RLC for users when sending messages

*  RLC for user presence

*  Add json builder for slack blocks

* 🐛 Fix option in search query

* Add loadoption for search in channels

* Fix indentation issue

*  Add more scopes to Oauth2

* 🐛 Fix lint issue

* 🐛 oauth fix

*  Merge user and user profile

*  Improve reactions and star resource

* ️Merges ephemeral operation into one

* ️Merge image and emoji in profile picture

* 🐛Fix bug for replying to messages

* ️Add username type to User Rlc

* 🐛 Fix typo

* 🎨 Improves tooltip and naming for ephemeral messages

* 🎨 Improve display name and description

* ️Add the ability to delete within username channel

* 🎨 Add informations on how to use the emojis and add doc

* 🎨 Fix typos and improve display names

*  Improve FE validation for timestamp

* 🎨 Change block description

* 🚨 Fix linting

* 🚨 More lint fixes

* 🐛 Fix timestamps bug

* 🐛 Fix timestamp not showing up

* 🐛 More small fixes

* 🐛 Fix logic error

* Add searchable to slack rlc channels and users

* Fix lint rules

* ️Message Search -> fix limit request using qs count

* ️Message Search -> sort by relevance use qs score

* Fix messages by username rlc

* 🐛 fix messages search all operation

* Add error when using username with ephemeral message

* 🎨 fix linting errors

* 🎨 send message ephemeral error message improvement

---------

Co-authored-by: Marcus <marcus@n8n.io>
2023-02-03 17:04:37 +01:00
Iván Ovejero b03e358a12
refactor: Integrate consistent-type-imports in nodes-base (no-changelog) (#5267)
* 👕 Enable `consistent-type-imports` for nodes-base

* 👕 Apply to nodes-base

*  Undo unrelated changes

* 🚚 Move to `.eslintrc.js` in nodes-base

*  Revert "Enable `consistent-type-imports` for nodes-base"

This reverts commit 529ad72b05.

* 👕 Fix severity
2023-01-27 12:22:44 +01:00
Michael Kret e667df783c
fix(core): Revert rule @typescript-eslint/prefer-nullish-coalescing 2023-01-19 14:37:19 +02:00
Michael Kret 6608e69457
refactor(core): Remove linting exceptions in nodes-base (no-changelog) (#4944) 2023-01-13 18:11:56 +01:00
कारतोफ्फेलस्क्रिप्ट™ 1acc7fea89
refactor(core): Add more overloads for string-type node parameters (no-changelog) (#5101)
* refactor(core): Add more overloads for string-type node parameter (no-changelog)

continued from https://github.com/n8n-io/n8n/pull/4797

* include binaryPropertyOutput
2023-01-06 15:09:32 +01:00
Iván Ovejero d9b98fc8be
refactor: Lint for no unneeded backticks (#5057) (no-changelog)
*  Create rule `no-unneeded-backticks`

* 👕 Enable rule

*  Run rule on `cli`

*  Run rule on `core`

*  Run rule on `workflow`

*  Rule rule on `design-system`

*  Run rule on `node-dev`

*  Run rule on `editor-ui`

*  Run rule on `nodes-base`
2022-12-29 12:20:43 +01:00
Iván Ovejero fbb8611ae2
refactor: Deprecate alwaysOpenEditWindow for string (#4839)
* 🔥 Remove from client

* 📘 Update interface comment

* ✏️ Update docs

*  Update nodes

* ✏️ Fix typo

*  Restore misremoved property

* 🔥 Remove more instances
2022-12-07 15:29:45 +01:00
Michael Kret 61e26804ba
refactor(core): Remove linting exceptions in nodes-base (#4794)
*  enabled array-type

*  await-thenable on

*  ban-types on

*  default-param-last on

*  dot-notation on

*  member-delimiter-style on

*  no-duplicate-imports on

*  no-empty-interface on

*  no-floating-promises on

*  no-for-in-array on

*  no-invalid-void-type on

*  no-loop-func on

*  no-shadow on

*  ban-ts-comment re enabled

*  @typescript-eslint/lines-between-class-members on

* address my own comment

* @typescript-eslint/return-await on

* @typescript-eslint/promise-function-async on

* @typescript-eslint/no-unnecessary-boolean-literal-compare on

* @typescript-eslint/no-unnecessary-type-assertion on

* prefer-const on

* @typescript-eslint/prefer-optional-chain on

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2022-12-02 21:54:28 +01:00
Iván Ovejero cfd32d2642
refactor: Phase out TSLint in nodes-base (no-changelog) (#4798)
* 🔥 Remove TSLint scripts

* 🔥 Remove TSLint config

* 🔥 Remove TSLint exceptions

* 👕 Adjust lint config

* ✏️ Add story numbers
2022-12-02 15:25:21 +01:00
Iván Ovejero 632f573021
refactor(core): Introduce overload for string-type node parameter (no-changelog) (#4797)
* 📘 Set up overload

* 🔥 Remove inferrable assertions
2022-12-02 12:53:59 +01:00
Iván Ovejero 0d9eeea024
refactor(core): Introduce overload for record-type node parameter (no-changelog) (#4648)
* 📘 Set up overload

* 🔥 Remove inferrable record assertions

* 👕 Fix semicolon

* 👕 Fix another semicolon
2022-11-18 16:29:44 +01:00
Iván Ovejero 0565194473
refactor(core): Introduce overload for number-type node parameter (no-changelog) (#4644)
* 📘 Set up overloads

* 📘 Add temporary assertion

* 🔥 Remove inferrable number assertions

* ✏️ Add ticket ref
2022-11-18 15:26:22 +01:00
Iván Ovejero 6757c9a2ea
refactor(core): Introduce overload for boolean-type node parameter (no-changelog) (#4647)
* 📘 Set up overloads

* 📘 Add temporary assertion

* 🔥 Remove inferrable boolean assertions

*  Undo autoformatting
2022-11-18 14:31:38 +01:00
Mike Arvela 6e8e4f5937
fix(nodes-base): fix and harmonize all primaryDocumentation links (#4191)
* fix(nodes-base): fix and harmonize all primaryDocumentation links

* feat(workflow, cli): expose documentation links to UI via node codex

* fix(editor-ui): link to correct node and credential documentation URLs

* config(nodes-base): update 'format' script to also format node descriptor json

* chore: fix outdated links to node reference documentation
2022-09-29 13:33:16 +03:00
Jonathan Bennetts 2714b4ced7
feat(slack Node): add operation get many for user resource (#3150) 2022-09-29 10:26:51 +01:00
Iván Ovejero 3a9c7acb04
refactor(nodes-base): Apply lint rule node-param-operation-option-description-wrong-for-get-many (#4064)
* 👕 Enable rule

* ⬆️ Upgrade linter

* 📦 Update `package-lock.json`

* 👕 Apply rule

* ✏️ Fix plurals

* ✏️ More typos

* ✏️ Final typos
2022-09-13 12:36:36 +02:00
Iván Ovejero d4f858db92
refactor(nodes-base): Apply lint rule node-param-operation-option-action-wrong-for-get-many (#4055)
* 👕 Apply `node-param-operation-option-action-wrong-for-get-many`

* 🔥 Remove `package-lock.json`

* 📦 Re-add `package-lock.json`

*  master update

Co-authored-by: Michael Kret <michael.k@radency.com>
2022-09-08 17:10:13 +02:00
Iván Ovejero ca8c2d6577
refactor(nodes-base): Apply lint rule node-param-option-name-wrong-for-get-many (#4051)
* ⬆️ Upgrade linter

* 📦 Update `package-lock.json`

* 👕 Substitute rule

* 👕 Apply lintfix for `node-param-option-name-wrong-for-get-many`

* 👕 Restore lint exceptions
2022-09-07 16:51:14 +02:00
Omar Ajoue b2c674591c
Feature/paired item support (#3869)
* Add paired item helper and implement it in some nodes
2022-08-30 17:55:33 +02:00
Michael Kret 91d7e16c81
n8n-3867-progressively-apply-prettier-to-all (#3873)
* 🔨 formatting nodes with prettier
2022-08-17 17:50:24 +02:00
Mutasem Aldmour c9b7b6d30f
fix: Fix broken links in nodes (#3716) 2022-07-14 22:05:11 +02:00
Iván Ovejero 2a8043cd27
feat: Add item information to more node errors (#3681)
*  Add `itemIndex` to node-thrown errors

*  Add some missing item indexes
2022-07-12 17:51:01 +02:00
Iván Ovejero 6f95121fac
refactor: Add action to all operations on all nodes (#3655)
* 👕 Add `action` to `INodePropertyOptions`

* 👕 Apply `node-param-operation-option-without-action`

* ✏️ Fix add/remove phrasing

* ✏️ Fix email template phrasing

* ✏️ Fix add/remove phrasing

* ✏️ Fix custom fields phrasing

* ✏️ Fix job report phrasing

* ✏️ Fix query phrasing

* ✏️ Various phrasing fixes

* ✏️ Fix final phrasings

* ✏️ Remove `conversation`

* ✏️ Fix plural
2022-07-10 23:50:51 +03:00