Jon
2eba57774b
docs: Update credential urls (no-changelog) ( #10193 )
2024-07-25 17:22:46 +01:00
Michael Kret
b7aea957b8
feat: Do not show errors not processed by n8n (no-changelog) ( #9598 )
...
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2024-06-20 08:45:00 +03:00
Elias Meire
600013a1ab
feat: Add support for dark mode node icons and colors ( #9412 )
...
Co-authored-by: Giulio Andreini <g.andreini@gmail.com>
2024-06-06 13:34:30 +02:00
Elias Meire
100d9bc087
refactor: Add IRequestOptions type to helpers.request for more type safety (no-changelog) ( #8563 )
...
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2024-02-14 16:29:09 +01:00
Tomi Turtiainen
9a1cc56806
fix: Set '@typescript-eslint/return-await' rule to 'always' for node code (no-changelog) ( #8363 )
...
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2024-01-17 17:08:50 +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
Michael Kret
c72229fbe2
fix(core): Rename ’Marketing & Content' category to 'Marketing' (no-changelog) ( #7823 )
...
Github issue / Community forum post (link here to close automatically):
2023-11-29 13:37:46 +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
कारतोफ्फेलस्क्रिप्ट™
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
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
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
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
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
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
Iván Ovejero
59f2e8e7d5
refactor: Apply more eslint-plugin-n8n-nodes-base
rules ( #3624 )
...
* ⬆️ Upgrade `eslint-plugin-n8n-nodes-base`
* 📦 Update `package-lock.json`
* 🔧 Adjust renamed filesystem rules
* ✏️ Alphabetize ruleset
* ⚡ Categorize overrides
* ⚡ Set renamings in lint exceptions
* ⚡ Run baseline `lintfix`
* ⚡ Update linting scripts
* 👕 Apply `node-param-description-missing-from-dynamic-multi-options`
* 👕 Apply `cred-class-field-name-missing-oauth2` (#3627 )
* Rule working as intended
* Removed comments
* Move cred rule to different rule set
* 👕 Apply `node-param-array-type-assertion`
* 👕 Apply `node-dirname-against-convention`
* Apply `cred-class-field-display-name-oauth2` (#3628 )
* Apply `node-execute-block-wrong-error-thrown`
* Apply `node-class-description-display-name-unsuffixed-trigger-node`
* Apply `node-class-description-name-unsuffixed-trigger-node`
* Apply `cred-class-name-missing-oauth2-suffix` (#3636 )
* Rule working as intended, add exception to existing nodes
* 👕 Apply `cred-class-field-name-uppercase-first-char` (#3638 )
* ⬆️ Upgrade to plugin version 1.2.28
* 📦 Update `package-lock.json`
* 👕 Update lintings with 1.2.8 change
* 👕 Apply `cred-class-field-name-unsuffixed`
* 👕 Apply `cred-class-name-unsuffixed`
* 👕 Apply `node-class-description-credentials-name-unsuffixed`
* ✏️ Alphabetize rules
* ➖ Remove `nodelinter` package
* 📦 Update `package-lock.json`
* ⚡ Consolidate `lint` and `lintfix` scripts
Co-authored-by: agobrech <45268029+agobrech@users.noreply.github.com>
Co-authored-by: agobrech <ael.gobrecht@gmail.com>
2022-07-04 11:12:08 +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
Iván Ovejero
6dcdb30bf4
refactor: Apply more nodelinting rules ( #3324 )
...
* ✏️ Alphabetize lint rules
* 🔥 Remove duplicates
* ⚡ Update `lintfix` script
* 👕 Apply `node-param-operation-without-no-data-expression` (#3329 )
* 👕 Apply `node-param-operation-without-no-data-expression`
* 👕 Add exceptions
* 👕 Apply `node-param-description-weak` (#3328 )
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
* 👕 Apply `node-param-option-value-duplicate` (#3331 )
* 👕 Apply `node-param-description-miscased-json` (#3337 )
* 👕 Apply `node-param-display-name-excess-inner-whitespace` (#3335 )
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
* 👕 Apply `node-param-type-options-missing-from-limit` (#3336 )
* Rule workig as intended
* ✏️ Uncomment rules
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
* 👕 Apply `node-param-option-name-duplicate` (#3338 )
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
* 👕 Apply `node-param-description-wrong-for-simplify` (#3334 )
* ⚡ fix
* ⚡ exceptions
* ⚡ changed rule ignoring from file to line
* 👕 Apply `node-param-resource-without-no-data-expression` (#3339 )
* 👕 Apply `node-param-display-name-untrimmed` (#3341 )
* 👕 Apply `node-param-display-name-miscased-id` (#3340 )
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
* 👕 Apply `node-param-resource-with-plural-option` (#3342 )
* 👕 Apply `node-param-description-wrong-for-upsert` (#3333 )
* ⚡ fix
* ⚡ replaced record with contact in description
* ⚡ fix
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
* 👕 Apply `node-param-option-description-identical-to-name` (#3343 )
* 👕 Apply `node-param-option-name-containing-star` (#3347 )
* 👕 Apply `node-param-display-name-wrong-for-update-fields` (#3348 )
* 👕 Apply `node-param-option-name-wrong-for-get-all` (#3345 )
* ⚡ fix
* ⚡ exceptions
* 👕 Apply node-param-display-name-wrong-for-simplify (#3344 )
* Rule working as intended
* Uncomented other rules
* 👕 Undo and add exceptions
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
* ⚡ Alphabetize lint rules
* ⚡ Restore `lintfix` script
Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com>
Co-authored-by: agobrech <45268029+agobrech@users.noreply.github.com>
2022-05-20 23:47:24 +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
agobrech
4bdd607fdf
feat(Microsoft Dynamics CRM Node): Add support for other regions than North America ( #3157 )
...
* Typo
* Added all dynamics regions
* Change uri to match credentials region
* ⚡ Small improvement
Co-authored-by: ricardo <ricardoespinoza105@gmail.com>
2022-05-02 07:55:32 +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
2b74b6238e
⚡ Deprecate step size and node color ( #2586 )
...
* 🔥 Deprecate numberStepSize
* 🔥 Deprecate color in non-FA nodes
* ⚡ Minor node name fixes
* 📦 Update package-lock.json
* ⏪ Restore Merge node color
* 👕 Fix lint
2021-12-23 13:30:35 +01:00
Iván Ovejero
a783288338
⚡ Enforce type checking in all node params ( #2509 )
2021-12-03 09:44:16 +01:00
Harshil Agrawal
cfd797b8ad
⚡ Add codex files ( #2412 )
2021-11-05 08:45:20 -06:00
Jan Oberhauser
8ca388f168
👕 Fix lint issue
2021-10-28 19:08:32 -05:00
Ricardo Espinoza
a798c6c0f6
✨ Add Microsoft Dynamics CRM Node ( #2292 )
...
* ✨ Microsoft Dynamics CRM
* ⚡ Improvements
* ⚡ Improvements
* ⚡ Minor improvements
Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2021-10-28 19:00:25 -05:00