Elias Meire
5e6c1d4f4b
fix(Convert to/from binary data Node): Rename 'Move Binary Data' to 'Convert to/from binary data' ( #7318 )
...
Github issue / Community forum post (link here to close automatically):
2023-10-04 13:23:33 +02:00
Iván Ovejero
6d6e2488c6
refactor(core): Generalize binary data manager interface (no-changelog) ( #7164 )
...
Depends on: #7092 | Story:
[PAY-768](https://linear.app/n8n/issue/PAY-768 )
This PR:
- Generalizes the `IBinaryDataManager` interface.
- Adjusts `Filesystem.ts` to satisfy the interface.
- Sets up an S3 client stub to be filled in in the next PR.
- Turns `BinaryDataManager` into an injectable service.
- Adjusts the config schema and adds new validators.
Note that the PR looks large but all the main changes are in
`packages/core/src/binaryData`.
Out of scope:
- `BinaryDataManager` (now `BinaryDataService`) and `Filesystem.ts` (now
`fs.client.ts`) were slightly refactored for maintainability, but fully
overhauling them is **not** the focus of this PR, which is meant to
clear the way for the S3 implementation. Future improvements for these
two should include setting up a backwards-compatible dir structure that
makes it easier to locate binary data files to delete, removing
duplication, simplifying cloning methods, using integers for binary data
size instead of `prettyBytes()`, writing tests for existing binary data
logic, etc.
---------
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-09-22 17:22:12 +02:00
कारतोफ्फेलस्क्रिप्ट™
e57e85edf7
refactor: Delete unnecessary interface re-exports from core, and delete unused code in nodes-base (no-changelog) ( #6631 )
2023-07-12 11:15:38 +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
कारतोफ्फेलस्क्रिप्ट™
7a4e9ef5fa
refactor: Remove n8n-core dependency in nodes-base (no-changelog) ( #5649 )
2023-03-09 18:13:15 +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
Marcus
9698c7e7ea
test(Move Binary Data Node): Unit tests (no-changelog) ( #5442 )
...
* ✅ add Move Binary Data test
* ✅ improve Move Binary Data Test -
---------
Co-authored-by: Michael Kret <michael.k@radency.com>
2023-02-10 15:33:32 +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
कारतोफ्फेलस्क्रिप्ट™
3b969d2cd1
fix(Move Binary Data Node): Stringify objects before encoding them in MoveBinaryData ( #4882 )
...
* stringify objects before encoding them objects in MoveBinaryData
* add fileSize and fileType on MoveBinaryData converted data
* show `view` option for text files as well
* improve how JSON binary data is shown in the UI
2022-12-11 14:10:54 +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
Michael Kret
1d57b10942
refactor(core): fix for no-uncaught-json-parse warnings
2022-10-21 21:52:43 +03:00
Michael Kret
9d6a2c32d7
refactor(core): fixes n8n-local-rules/no-json-parse-json-stringify warnings ( #4407 )
...
* 🔨 fixes
* 🔨 set rule to error
2022-10-21 17:24:58 +02: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
Michael Kret
91d7e16c81
n8n-3867-progressively-apply-prettier-to-all ( #3873 )
...
* 🔨 formatting nodes with prettier
2022-08-17 17:50:24 +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
88dea330b9
refactor: Apply more eslint-plugin-n8n-nodes-base
rules ( #3534 )
...
* ⚡ Update `lintfix` script
* ⚡ Run baseline `lintfix`
* 🔥 Remove unneeded exceptions (#3538 )
* 🔥 Remove exceptions for `node-param-default-wrong-for-simplify`
* 🔥 Remove exceptions for `node-param-placeholder-miscased-id`
* ⚡ Update version
* 👕 Apply `node-param-placeholder-missing` (#3542 )
* 👕 Apply `filesystem-wrong-cred-filename` (#3543 )
* 👕 Apply `node-param-description-missing-from-dynamic-options` (#3545 )
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
* 👕 Apply `node-class-description-empty-string` (#3546 )
* 👕 Apply `node-class-description-icon-not-svg` (#3548 )
* 👕 Apply `filesystem-wrong-node-filename` (#3549 )
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
* 👕 Expand lintings to credentials (#3550 )
* 👕 Apply `node-param-multi-options-type-unsorted-items` (#3552 )
* ⚡ fix
* ⚡ Minor fixes
Co-authored-by: Michael Kret <michael.k@radency.com>
* 👕 Apply `node-param-description-wrong-for-dynamic-multi-options` (#3541 )
* ⚡ Add new lint rule, node-param-description-wrong-for-dynamic-multi-options
* ⚡ Fix with updated linting rules
* ⚡ Minor fixes
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
* 👕 Apply `node-param-description-boolean-without-whether` (#3553 )
* ⚡ fix
* Update packages/nodes-base/nodes/Clockify/ProjectDescription.ts
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
* 👕 Apply node-param-display-name-wrong-for-dynamic-multi-options (#3537 )
* 👕 Add exceptions
* 👕 Add exception
* ✏️ Alphabetize rules
* ⚡ Restore `lintfix` command
Co-authored-by: agobrech <45268029+agobrech@users.noreply.github.com>
Co-authored-by: Omar Ajoue <krynble@gmail.com>
Co-authored-by: Michael Kret <michael.k@radency.com>
Co-authored-by: brianinoa <54530642+brianinoa@users.noreply.github.com>
Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com>
2022-06-20 07:54:01 -07:00
Iván Ovejero
70ae90fa3c
refactor: Apply more eslint-plugin-n8n-nodes-base
autofixable rules ( #3432 )
...
* ⚡ Update `lintfix` script
* 👕 Remove unneeded lint exceptions
* 👕 Run baseline `lintfix`
* 👕 Apply `node-param-description-miscased-url` (#3441 )
* 👕 Apply `rule node-param-placeholder-miscased-id` (#3443 )
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
* 👕 Apply `node-param-option-name-wrong-for-upsert` (#3446 )
* 👕 Apply `node-param-min-value-wrong-for-limit` (#3442 )
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
* Apply `node-param-display-name-wrong-for-dynamic-options` (#3454 )
* 🔨 fix
* ⚡ Fix `Assigned To` fields
Co-authored-by: Michael Kret <michael.k@radency.com>
* 👕 Apply `rule node-param-default-wrong-for-number` (#3453 )
* 👕 Apply `node-param-default-wrong-for-string` (#3452 )
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
* Apply `node-param-display-name-miscased` (#3449 )
* 🔨 fix
* 🔨 exceptions
* ⚡ review fixes
* 👕 Apply `node-param-description-lowercase-first-char` (#3451 )
* ⚡ fix
* ⚡ review fixes
* ⚡ fix
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
* 👕 Apply `node-param-description-wrong-for-dynamic-options` (#3456 )
* Rule working as intended
* Add rule
* 🔥 Remove repetitions
* 👕 Add exceptions
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
* 👕 Small fix for `node-param-description-wrong-for-dynamic-options`
* 👕 Apply `node-param-default-wrong-for-fixed-collection` (#3460 )
* 👕 Apply `node-param-description-line-break-html-tag` (#3462 )
* 👕 Run baseline `lintfix`
* 👕 Apply `node-param-options-type-unsorted-items` (#3459 )
* ⚡ fix
* 🔨 exceptions
* Add exception for Salesmate and Zoom
Co-authored-by: Michael Kret <michael.k@radency.com>
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
* ⚡ Restore `lintfix` command
Co-authored-by: Omar Ajoue <krynble@gmail.com>
Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com>
Co-authored-by: agobrech <45268029+agobrech@users.noreply.github.com>
Co-authored-by: Michael Kret <michael.k@radency.com>
Co-authored-by: brianinoa <54530642+brianinoa@users.noreply.github.com>
2022-06-03 19:23:49 +02:00
Jan Oberhauser
bdb84130d6
feat(core): Add support for pairedItem (beta) ( #3012 )
...
* ✨ Add pairedItem support
* 👕 Fix lint issue
* 🐛 Fix resolution in frontend
* 🐛 Fix resolution issue
* 🐛 Fix resolution in frontend
* 🐛 Fix another resolution issue in frontend
* ⚡ Try to automatically add pairedItem data if possible
* ⚡ Cleanup
* ⚡ Display expression errors in editor UI
* 🐛 Fix issue that it did not display errors in production
* 🐛 Fix auto-fix of missing pairedItem data
* 🐛 Fix frontend resolution for not executed nodes
* ⚡ Fail execution on pairedItem resolve issue and display information
about itemIndex and runIndex
* ⚡ Allow that pairedItem is only set to number if runIndex is 0
* ✨ Improve Expression Errors
* ⚡ Remove no longer needed code
* ⚡ Make errors more helpful
* ⚡ Add additional errors
* 👕 Fix lint issue
* ⚡ Add pairedItem support to core nodes
* ⚡ Improve support in Merge-Node
* ⚡ Fix issue with not correctly converted incoming pairedItem data
* 🐛 Fix frontend resolve issue
* 🐛 Fix frontend parameter name display issue
* ⚡ Improve errors
* 👕 Fix lint issue
* ⚡ Improve errors
* ⚡ Make it possible to display parameter name in error messages
* ⚡ Improve error messages
* ⚡ Fix error message
* ⚡ Improve error messages
* ⚡ Add another error message
* ⚡ Simplify
2022-06-03 17:25:07 +02:00
Iván Ovejero
63b6c9f128
refactor: Apply more eslint-plugin-n8n-nodes-base
autofixable rules ( #3243 )
...
* ✏️ Alphabetize rules
* 🔖 Update version
* ⚡ Update lintfix command
* ⚡ Run baseline lintfix
* 📦 Update package-lock.json
* 👕 Apply `node-param-description-untrimmed` (#3200 )
* Removing unneeded backticks (#3249 )
* 👕 Apply node-param-description-wrong-for-return-all (#3253 )
* 👕 Apply node-param-description-missing-limit (#3252 )
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
* 👕 Apply node-param-description-excess-final-period (#3250 )
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
* 👕 Apply node-param-description-unencoded-angle-brackets (#3256 )
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
* 👕 Apply node-param-description-url-missing-protocol (#3258 )
* 👕 Apply `node-param-description-miscased-id` (#3254 )
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
* 👕 Apply node-param-description-wrong-for-limit (#3257 )
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
* 👕 Apply node-param-description-wrong-for-ignore-ssl-issues (#3261 )
* 👕 Apply rule
* ⚡ Restore lintfix script
* ⚡ Restore lintfix script
Co-authored-by: agobrech <45268029+agobrech@users.noreply.github.com>
Co-authored-by: Omar Ajoue <krynble@gmail.com>
Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com>
2022-05-06 23:01:25 +02:00
Iván Ovejero
0448feec56
refactor: Apply eslint-plugin-n8n-nodes-base
autofixable rules ( #3174 )
...
* ⚡ Initial setup
* 👕 Update `.eslintignore`
* 👕 Autofix node-param-default-missing (#3173 )
* 🔥 Remove duplicate key
* 👕 Add exceptions
* 📦 Update package-lock.json
* 👕 Apply `node-class-description-inputs-wrong-trigger-node` (#3176 )
* 👕 Apply `node-class-description-inputs-wrong-regular-node` (#3177 )
* 👕 Apply `node-class-description-outputs-wrong` (#3178 )
* 👕 Apply `node-execute-block-double-assertion-for-items` (#3179 )
* 👕 Apply `node-param-default-wrong-for-collection` (#3180 )
* 👕 Apply node-param-default-wrong-for-boolean (#3181 )
* Autofixed default missing
* Autofixed booleans, worked well
* ⚡ Fix params
* ⏪ Undo exempted autofixes
* 📦 Update package-lock.json
* 👕 Apply node-class-description-missing-subtitle (#3182 )
* ⚡ Fix missing comma
* 👕 Apply `node-param-default-wrong-for-fixed-collection` (#3184 )
* 👕 Add exception for `node-class-description-missing-subtitle`
* 👕 Apply `node-param-default-wrong-for-multi-options` (#3185 )
* 👕 Apply `node-param-collection-type-unsorted-items` (#3186 )
* Missing coma
* 👕 Apply `node-param-default-wrong-for-simplify` (#3187 )
* 👕 Apply `node-param-description-comma-separated-hyphen` (#3190 )
* 👕 Apply `node-param-description-empty-string` (#3189 )
* 👕 Apply `node-param-description-excess-inner-whitespace` (#3191 )
* Rule looks good
* Add whitespace rule in eslint config
* :zao: fix
* 👕 Apply `node-param-description-identical-to-display-name` (#3193 )
* 👕 Apply `node-param-description-missing-for-ignore-ssl-issues` (#3195 )
* ⏪ Revert ":zao: fix"
This reverts commit ef8a76f3df
.
* 👕 Apply `node-param-description-missing-for-simplify` (#3196 )
* 👕 Apply `node-param-description-missing-final-period` (#3194 )
* Rule working as intended
* Add rule to eslint
* 👕 Apply node-param-description-missing-for-return-all (#3197 )
* ⚡ Restore `lintfix` command
Co-authored-by: agobrech <45268029+agobrech@users.noreply.github.com>
Co-authored-by: Omar Ajoue <krynble@gmail.com>
Co-authored-by: agobrech <ael.gobrecht@gmail.com>
Co-authored-by: Michael Kret <michael.k@radency.com>
2022-04-22 18:29:51 +02:00
Iván Ovejero
027dfb2f0a
⚡ Enable esModuleInterop
compiler option and upgrade to TypeScript 4.6 ( #3106 )
...
* ⚡ Enable `esModuleInterop` for /core
* ⚡ Adjust imports in /core
* ⚡ Enable `esModuleInterop` for /cli
* ⚡ Adjust imports in /cli
* ⚡ Enable `esModuleInterop` for /nodes-base
* ⚡ Adjust imports in /nodes-base
* ⚡ Make imports consistent
* ⬆️ Upgrade TypeScript to 4.6 (#3109 )
* ⬆️ Upgrade TypeScript to 4.6
* 📦 Update package-lock.json
* 🔧 Avoid erroring on untyped errors
* 📘 Fix type error
Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2022-04-08 23:32:08 +02:00
Ricardo Espinoza
3cde6bd426
🐛 Fix issue getting binary data when filesystem mode is used - Move Binary Data ( #2727 )
...
* 🐛 Fix issue getting binary data when filesystem mode is used
* ⚡ Simplifications
Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2022-01-28 08:46:30 +01:00
Iván Ovejero
0764c49dcf
🔥 Remove line breaks from param descriptions ( #2473 )
...
* 🔥 Remove line breaks from param descriptions
* 🔥 Remove more line breaks
* 🎨 Fix spacing for list item in tooltip
* ⚡ Apply multiline with <p> tags
* ⚡ Improve <code> and <a> tags
* ✏️ Improve grammar and spelling
* ⚡ Add missing <p> tags
* ✏️ Make "multiple" phrasing consistent
* ⚡ Fix unneeded quote escapes
* ⚡ Encode angle brackets
* ⚡ Fix typo and copy-paste artifact
2021-11-25 18:10:06 +01:00
Iván Ovejero
766f74c782
🚚 Directorize and alphabetize nodes ( #2445 )
...
* 🚚 Directorize nodes
* ⚡ Alphabetize nodes and credentials
* 🔥 Remove unused node
* 🔥 Remove unused codex
* 🔥 Remove duplicate cred file references
* 🐛 Fix node file paths
* 🔥 Remove duplicate node reference
2021-11-17 17:30:14 +01:00