mirror of
https://github.com/n8n-io/n8n.git
synced 2024-12-23 11:44:06 -08:00
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>
This commit is contained in:
parent
aeb5a1234a
commit
0448feec56
|
@ -1,3 +1,2 @@
|
|||
packages/nodes-base
|
||||
packages/editor-ui
|
||||
packages/design-system
|
||||
|
|
710
.eslintrc.js
710
.eslintrc.js
|
@ -1,4 +1,6 @@
|
|||
module.exports = {
|
||||
root: true,
|
||||
|
||||
env: {
|
||||
browser: true,
|
||||
es6: true,
|
||||
|
@ -21,346 +23,378 @@ module.exports = {
|
|||
'**/migrations/**',
|
||||
],
|
||||
|
||||
extends: [
|
||||
/**
|
||||
* Config for typescript-eslint recommended ruleset (without type checking)
|
||||
*
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/1c1b572c3000d72cfe665b7afbada0ec415e7855/packages/eslint-plugin/src/configs/recommended.ts
|
||||
*/
|
||||
'plugin:@typescript-eslint/recommended',
|
||||
overrides: [
|
||||
{
|
||||
files: './packages/*(cli|core|workflow|node-dev)/**/*.ts',
|
||||
plugins: [
|
||||
/**
|
||||
* Plugin with lint rules for import/export syntax
|
||||
* https://github.com/import-js/eslint-plugin-import
|
||||
*/
|
||||
'eslint-plugin-import',
|
||||
|
||||
/**
|
||||
* Config for typescript-eslint recommended ruleset (with type checking)
|
||||
*
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/1c1b572c3000d72cfe665b7afbada0ec415e7855/packages/eslint-plugin/src/configs/recommended-requiring-type-checking.ts
|
||||
*/
|
||||
'plugin:@typescript-eslint/recommended-requiring-type-checking',
|
||||
/**
|
||||
* @typescript-eslint/eslint-plugin is required by eslint-config-airbnb-typescript
|
||||
* See step 2: https://github.com/iamturns/eslint-config-airbnb-typescript#2-install-eslint-plugins
|
||||
*/
|
||||
'@typescript-eslint',
|
||||
|
||||
/**
|
||||
* Config for Airbnb style guide for TS, /base to remove React rules
|
||||
*
|
||||
* https://github.com/iamturns/eslint-config-airbnb-typescript
|
||||
* https://github.com/airbnb/javascript/tree/master/packages/eslint-config-airbnb-base/rules
|
||||
*/
|
||||
'eslint-config-airbnb-typescript/base',
|
||||
/**
|
||||
* Plugin to report formatting violations as lint violations
|
||||
* https://github.com/prettier/eslint-plugin-prettier
|
||||
*/
|
||||
'eslint-plugin-prettier',
|
||||
],
|
||||
extends: [
|
||||
/**
|
||||
* Config for typescript-eslint recommended ruleset (without type checking)
|
||||
*
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/1c1b572c3000d72cfe665b7afbada0ec415e7855/packages/eslint-plugin/src/configs/recommended.ts
|
||||
*/
|
||||
'plugin:@typescript-eslint/recommended',
|
||||
|
||||
/**
|
||||
* Config to disable ESLint rules covered by Prettier
|
||||
*
|
||||
* https://github.com/prettier/eslint-config-prettier
|
||||
*/
|
||||
'eslint-config-prettier',
|
||||
/**
|
||||
* Config for typescript-eslint recommended ruleset (with type checking)
|
||||
*
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/1c1b572c3000d72cfe665b7afbada0ec415e7855/packages/eslint-plugin/src/configs/recommended-requiring-type-checking.ts
|
||||
*/
|
||||
'plugin:@typescript-eslint/recommended-requiring-type-checking',
|
||||
|
||||
/**
|
||||
* Config for Airbnb style guide for TS, /base to remove React rules
|
||||
*
|
||||
* https://github.com/iamturns/eslint-config-airbnb-typescript
|
||||
* https://github.com/airbnb/javascript/tree/master/packages/eslint-config-airbnb-base/rules
|
||||
*/
|
||||
'eslint-config-airbnb-typescript/base',
|
||||
|
||||
/**
|
||||
* Config to disable ESLint rules covered by Prettier
|
||||
*
|
||||
* https://github.com/prettier/eslint-config-prettier
|
||||
*/
|
||||
'eslint-config-prettier',
|
||||
],
|
||||
rules: {
|
||||
// ******************************************************************
|
||||
// required by prettier plugin
|
||||
// ******************************************************************
|
||||
|
||||
// The following rule enables eslint-plugin-prettier
|
||||
// See: https://github.com/prettier/eslint-plugin-prettier#recommended-configuration
|
||||
|
||||
'prettier/prettier': 'error',
|
||||
|
||||
// The following two rules must be disabled when using eslint-plugin-prettier:
|
||||
// See: https://github.com/prettier/eslint-plugin-prettier#arrow-body-style-and-prefer-arrow-callback-issue
|
||||
|
||||
/**
|
||||
* https://eslint.org/docs/rules/arrow-body-style
|
||||
*/
|
||||
'arrow-body-style': 'off',
|
||||
|
||||
/**
|
||||
* https://eslint.org/docs/rules/prefer-arrow-callback
|
||||
*/
|
||||
'prefer-arrow-callback': 'off',
|
||||
|
||||
// ******************************************************************
|
||||
// additions to base ruleset
|
||||
// ******************************************************************
|
||||
|
||||
// ----------------------------------
|
||||
// ESLint
|
||||
// ----------------------------------
|
||||
|
||||
/**
|
||||
* https://eslint.org/docs/rules/id-denylist
|
||||
*/
|
||||
'id-denylist': [
|
||||
'error',
|
||||
'err',
|
||||
'cb',
|
||||
'callback',
|
||||
'any',
|
||||
'Number',
|
||||
'number',
|
||||
'String',
|
||||
'string',
|
||||
'Boolean',
|
||||
'boolean',
|
||||
'Undefined',
|
||||
'undefined',
|
||||
],
|
||||
|
||||
'no-void': ['error', { allowAsStatement: true }],
|
||||
|
||||
// ----------------------------------
|
||||
// @typescript-eslint
|
||||
// ----------------------------------
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/array-type.md
|
||||
*/
|
||||
'@typescript-eslint/array-type': ['error', { default: 'array-simple' }],
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/ban-ts-comment.md
|
||||
*/
|
||||
'@typescript-eslint/ban-ts-comment': 'off',
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/ban-types.md
|
||||
*/
|
||||
'@typescript-eslint/ban-types': [
|
||||
'error',
|
||||
{
|
||||
types: {
|
||||
Object: {
|
||||
message: 'Use object instead',
|
||||
fixWith: 'object',
|
||||
},
|
||||
String: {
|
||||
message: 'Use string instead',
|
||||
fixWith: 'string',
|
||||
},
|
||||
Boolean: {
|
||||
message: 'Use boolean instead',
|
||||
fixWith: 'boolean',
|
||||
},
|
||||
Number: {
|
||||
message: 'Use number instead',
|
||||
fixWith: 'number',
|
||||
},
|
||||
Symbol: {
|
||||
message: 'Use symbol instead',
|
||||
fixWith: 'symbol',
|
||||
},
|
||||
Function: {
|
||||
message: [
|
||||
'The `Function` type accepts any function-like value.',
|
||||
'It provides no type safety when calling the function, which can be a common source of bugs.',
|
||||
'It also accepts things like class declarations, which will throw at runtime as they will not be called with `new`.',
|
||||
'If you are expecting the function to accept certain arguments, you should explicitly define the function shape.',
|
||||
].join('\n'),
|
||||
},
|
||||
},
|
||||
extendDefaults: false,
|
||||
},
|
||||
],
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/consistent-type-assertions.md
|
||||
*/
|
||||
'@typescript-eslint/consistent-type-assertions': 'error',
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/explicit-member-accessibility.md
|
||||
*/
|
||||
'@typescript-eslint/explicit-member-accessibility': [
|
||||
'error',
|
||||
{ accessibility: 'no-public' },
|
||||
],
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/member-delimiter-style.md
|
||||
*/
|
||||
'@typescript-eslint/member-delimiter-style': [
|
||||
'error',
|
||||
{
|
||||
multiline: {
|
||||
delimiter: 'semi',
|
||||
requireLast: true,
|
||||
},
|
||||
singleline: {
|
||||
delimiter: 'semi',
|
||||
requireLast: false,
|
||||
},
|
||||
},
|
||||
],
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/naming-convention.md
|
||||
*/
|
||||
'@typescript-eslint/naming-convention': [
|
||||
'error',
|
||||
{
|
||||
selector: 'default',
|
||||
format: ['camelCase'],
|
||||
},
|
||||
{
|
||||
selector: 'variable',
|
||||
format: ['camelCase', 'snake_case', 'UPPER_CASE'],
|
||||
leadingUnderscore: 'allowSingleOrDouble',
|
||||
trailingUnderscore: 'allowSingleOrDouble',
|
||||
},
|
||||
{
|
||||
selector: 'property',
|
||||
format: ['camelCase', 'snake_case'],
|
||||
leadingUnderscore: 'allowSingleOrDouble',
|
||||
trailingUnderscore: 'allowSingleOrDouble',
|
||||
},
|
||||
{
|
||||
selector: 'typeLike',
|
||||
format: ['PascalCase'],
|
||||
},
|
||||
{
|
||||
selector: ['method', 'function'],
|
||||
format: ['camelCase'],
|
||||
leadingUnderscore: 'allowSingleOrDouble',
|
||||
},
|
||||
],
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-duplicate-imports.md
|
||||
*/
|
||||
'@typescript-eslint/no-duplicate-imports': 'error',
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-invalid-void-type.md
|
||||
*/
|
||||
'@typescript-eslint/no-invalid-void-type': 'error',
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-misused-promises.md
|
||||
*/
|
||||
'@typescript-eslint/no-misused-promises': ['error', { checksVoidReturn: false }],
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/v4.30.0/packages/eslint-plugin/docs/rules/no-floating-promises.md
|
||||
*/
|
||||
'@typescript-eslint/no-floating-promises': ['error', { ignoreVoid: true }],
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/v4.33.0/packages/eslint-plugin/docs/rules/no-namespace.md
|
||||
*/
|
||||
'@typescript-eslint/no-namespace': 'off',
|
||||
|
||||
/**
|
||||
* https://eslint.org/docs/1.0.0/rules/no-throw-literal
|
||||
*/
|
||||
'@typescript-eslint/no-throw-literal': 'error',
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-unnecessary-boolean-literal-compare.md
|
||||
*/
|
||||
'@typescript-eslint/no-unnecessary-boolean-literal-compare': 'error',
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-unnecessary-qualifier.md
|
||||
*/
|
||||
'@typescript-eslint/no-unnecessary-qualifier': 'error',
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-unused-expressions.md
|
||||
*/
|
||||
'@typescript-eslint/no-unused-expressions': 'error',
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-unused-vars.md
|
||||
*/
|
||||
'@typescript-eslint/no-unused-vars': ['error', { argsIgnorePattern: '_' }],
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/prefer-nullish-coalescing.md
|
||||
*/
|
||||
'@typescript-eslint/prefer-nullish-coalescing': 'error',
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/prefer-optional-chain.md
|
||||
*/
|
||||
'@typescript-eslint/prefer-optional-chain': 'error',
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/promise-function-async.md
|
||||
*/
|
||||
'@typescript-eslint/promise-function-async': 'error',
|
||||
|
||||
// ----------------------------------
|
||||
// eslint-plugin-import
|
||||
// ----------------------------------
|
||||
|
||||
/**
|
||||
* https://github.com/import-js/eslint-plugin-import/blob/master/docs/rules/no-default-export.md
|
||||
*/
|
||||
'import/no-default-export': 'error',
|
||||
|
||||
/**
|
||||
* https://github.com/import-js/eslint-plugin-import/blob/master/docs/rules/order.md
|
||||
*/
|
||||
'import/order': 'error',
|
||||
|
||||
// ******************************************************************
|
||||
// overrides to base ruleset
|
||||
// ******************************************************************
|
||||
|
||||
// ----------------------------------
|
||||
// ESLint
|
||||
// ----------------------------------
|
||||
|
||||
/**
|
||||
* https://eslint.org/docs/rules/class-methods-use-this
|
||||
*/
|
||||
'class-methods-use-this': 'off',
|
||||
|
||||
/**
|
||||
* https://eslint.org/docs/rules/eqeqeq
|
||||
*/
|
||||
eqeqeq: 'error',
|
||||
|
||||
/**
|
||||
* https://eslint.org/docs/rules/no-plusplus
|
||||
*/
|
||||
'no-plusplus': 'off',
|
||||
|
||||
/**
|
||||
* https://eslint.org/docs/rules/object-shorthand
|
||||
*/
|
||||
'object-shorthand': 'error',
|
||||
|
||||
/**
|
||||
* https://eslint.org/docs/rules/prefer-const
|
||||
*/
|
||||
'prefer-const': 'error',
|
||||
|
||||
/**
|
||||
* https://eslint.org/docs/rules/prefer-spread
|
||||
*/
|
||||
'prefer-spread': 'error',
|
||||
|
||||
// ----------------------------------
|
||||
// import
|
||||
// ----------------------------------
|
||||
|
||||
/**
|
||||
* https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/prefer-default-export.md
|
||||
*/
|
||||
'import/prefer-default-export': 'off',
|
||||
},
|
||||
},
|
||||
{
|
||||
files: ['./packages/nodes-base/nodes/**/*.ts'],
|
||||
plugins: ['eslint-plugin-n8n-nodes-base'],
|
||||
rules: {
|
||||
"n8n-nodes-base/node-param-default-missing": "error",
|
||||
"n8n-nodes-base/node-class-description-missing-subtitle": "error",
|
||||
"n8n-nodes-base/node-class-description-inputs-wrong-trigger-node": "error",
|
||||
"n8n-nodes-base/node-class-description-inputs-wrong-regular-node": "error",
|
||||
"n8n-nodes-base/node-class-description-outputs-wrong": "error",
|
||||
"n8n-nodes-base/node-execute-block-double-assertion-for-items": "error",
|
||||
"n8n-nodes-base/node-param-default-wrong-for-collection": "error",
|
||||
"n8n-nodes-base/node-param-default-wrong-for-boolean": "error",
|
||||
"n8n-nodes-base/node-param-collection-type-unsorted-items": "error",
|
||||
"n8n-nodes-base/node-param-default-wrong-for-fixed-collection": "error",
|
||||
"n8n-nodes-base/node-param-default-wrong-for-multi-options": "error",
|
||||
"n8n-nodes-base/node-param-description-excess-inner-whitespace": "error",
|
||||
"n8n-nodes-base/node-param-description-empty-string": "error",
|
||||
"n8n-nodes-base/node-param-description-comma-separated-hyphen": "error",
|
||||
"n8n-nodes-base/node-param-default-wrong-for-simplify": "error",
|
||||
"n8n-nodes-base/node-param-description-missing-for-return-all": "error",
|
||||
"n8n-nodes-base/node-param-description-missing-final-period": "error",
|
||||
"n8n-nodes-base/node-param-description-missing-for-simplify": "error",
|
||||
"n8n-nodes-base/node-param-description-missing-for-ignore-ssl-issues": "error",
|
||||
"n8n-nodes-base/node-param-description-identical-to-display-name": "error",
|
||||
}
|
||||
},
|
||||
],
|
||||
|
||||
plugins: [
|
||||
/**
|
||||
* Plugin with lint rules for import/export syntax
|
||||
* https://github.com/import-js/eslint-plugin-import
|
||||
*/
|
||||
'eslint-plugin-import',
|
||||
|
||||
/**
|
||||
* @typescript-eslint/eslint-plugin is required by eslint-config-airbnb-typescript
|
||||
* See step 2: https://github.com/iamturns/eslint-config-airbnb-typescript#2-install-eslint-plugins
|
||||
*/
|
||||
'@typescript-eslint',
|
||||
|
||||
/**
|
||||
* Plugin to report formatting violations as lint violations
|
||||
* https://github.com/prettier/eslint-plugin-prettier
|
||||
*/
|
||||
'eslint-plugin-prettier',
|
||||
],
|
||||
|
||||
rules: {
|
||||
// ******************************************************************
|
||||
// required by prettier plugin
|
||||
// ******************************************************************
|
||||
|
||||
// The following rule enables eslint-plugin-prettier
|
||||
// See: https://github.com/prettier/eslint-plugin-prettier#recommended-configuration
|
||||
|
||||
'prettier/prettier': 'error',
|
||||
|
||||
// The following two rules must be disabled when using eslint-plugin-prettier:
|
||||
// See: https://github.com/prettier/eslint-plugin-prettier#arrow-body-style-and-prefer-arrow-callback-issue
|
||||
|
||||
/**
|
||||
* https://eslint.org/docs/rules/arrow-body-style
|
||||
*/
|
||||
'arrow-body-style': 'off',
|
||||
|
||||
/**
|
||||
* https://eslint.org/docs/rules/prefer-arrow-callback
|
||||
*/
|
||||
'prefer-arrow-callback': 'off',
|
||||
|
||||
// ******************************************************************
|
||||
// additions to base ruleset
|
||||
// ******************************************************************
|
||||
|
||||
// ----------------------------------
|
||||
// ESLint
|
||||
// ----------------------------------
|
||||
|
||||
/**
|
||||
* https://eslint.org/docs/rules/id-denylist
|
||||
*/
|
||||
'id-denylist': [
|
||||
'error',
|
||||
'err',
|
||||
'cb',
|
||||
'callback',
|
||||
'any',
|
||||
'Number',
|
||||
'number',
|
||||
'String',
|
||||
'string',
|
||||
'Boolean',
|
||||
'boolean',
|
||||
'Undefined',
|
||||
'undefined',
|
||||
],
|
||||
|
||||
'no-void': ['error', { 'allowAsStatement': true }],
|
||||
|
||||
// ----------------------------------
|
||||
// @typescript-eslint
|
||||
// ----------------------------------
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/array-type.md
|
||||
*/
|
||||
'@typescript-eslint/array-type': ['error', { default: 'array-simple' }],
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/ban-ts-comment.md
|
||||
*/
|
||||
'@typescript-eslint/ban-ts-comment': 'off',
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/ban-types.md
|
||||
*/
|
||||
'@typescript-eslint/ban-types': [
|
||||
'error',
|
||||
{
|
||||
types: {
|
||||
Object: {
|
||||
message: 'Use object instead',
|
||||
fixWith: 'object',
|
||||
},
|
||||
String: {
|
||||
message: 'Use string instead',
|
||||
fixWith: 'string',
|
||||
},
|
||||
Boolean: {
|
||||
message: 'Use boolean instead',
|
||||
fixWith: 'boolean',
|
||||
},
|
||||
Number: {
|
||||
message: 'Use number instead',
|
||||
fixWith: 'number',
|
||||
},
|
||||
Symbol: {
|
||||
message: 'Use symbol instead',
|
||||
fixWith: 'symbol',
|
||||
},
|
||||
Function: {
|
||||
message: [
|
||||
'The `Function` type accepts any function-like value.',
|
||||
'It provides no type safety when calling the function, which can be a common source of bugs.',
|
||||
'It also accepts things like class declarations, which will throw at runtime as they will not be called with `new`.',
|
||||
'If you are expecting the function to accept certain arguments, you should explicitly define the function shape.',
|
||||
].join('\n'),
|
||||
},
|
||||
},
|
||||
extendDefaults: false,
|
||||
},
|
||||
],
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/consistent-type-assertions.md
|
||||
*/
|
||||
'@typescript-eslint/consistent-type-assertions': 'error',
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/explicit-member-accessibility.md
|
||||
*/
|
||||
'@typescript-eslint/explicit-member-accessibility': ['error', { accessibility: 'no-public' }],
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/member-delimiter-style.md
|
||||
*/
|
||||
'@typescript-eslint/member-delimiter-style': [
|
||||
'error',
|
||||
{
|
||||
multiline: {
|
||||
delimiter: 'semi',
|
||||
requireLast: true,
|
||||
},
|
||||
singleline: {
|
||||
delimiter: 'semi',
|
||||
requireLast: false,
|
||||
},
|
||||
},
|
||||
],
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/naming-convention.md
|
||||
*/
|
||||
'@typescript-eslint/naming-convention': [
|
||||
'error',
|
||||
{
|
||||
selector: 'default',
|
||||
format: ['camelCase'],
|
||||
},
|
||||
{
|
||||
selector: 'variable',
|
||||
format: ['camelCase', 'snake_case', 'UPPER_CASE'],
|
||||
leadingUnderscore: 'allowSingleOrDouble',
|
||||
trailingUnderscore: 'allowSingleOrDouble',
|
||||
},
|
||||
{
|
||||
selector: 'property',
|
||||
format: ['camelCase', 'snake_case'],
|
||||
leadingUnderscore: 'allowSingleOrDouble',
|
||||
trailingUnderscore: 'allowSingleOrDouble',
|
||||
},
|
||||
{
|
||||
selector: 'typeLike',
|
||||
format: ['PascalCase'],
|
||||
},
|
||||
{
|
||||
selector: ['method', 'function'],
|
||||
format: ['camelCase'],
|
||||
leadingUnderscore: 'allowSingleOrDouble',
|
||||
},
|
||||
],
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-duplicate-imports.md
|
||||
*/
|
||||
'@typescript-eslint/no-duplicate-imports': 'error',
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-invalid-void-type.md
|
||||
*/
|
||||
'@typescript-eslint/no-invalid-void-type': 'error',
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-misused-promises.md
|
||||
*/
|
||||
'@typescript-eslint/no-misused-promises': ['error', { checksVoidReturn: false }],
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/v4.30.0/packages/eslint-plugin/docs/rules/no-floating-promises.md
|
||||
*/
|
||||
'@typescript-eslint/no-floating-promises': ['error', { ignoreVoid: true }],
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/v4.33.0/packages/eslint-plugin/docs/rules/no-namespace.md
|
||||
*/
|
||||
'@typescript-eslint/no-namespace': 'off',
|
||||
|
||||
/**
|
||||
* https://eslint.org/docs/1.0.0/rules/no-throw-literal
|
||||
*/
|
||||
'@typescript-eslint/no-throw-literal': 'error',
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-unnecessary-boolean-literal-compare.md
|
||||
*/
|
||||
'@typescript-eslint/no-unnecessary-boolean-literal-compare': 'error',
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-unnecessary-qualifier.md
|
||||
*/
|
||||
'@typescript-eslint/no-unnecessary-qualifier': 'error',
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-unused-expressions.md
|
||||
*/
|
||||
'@typescript-eslint/no-unused-expressions': 'error',
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-unused-vars.md
|
||||
*/
|
||||
'@typescript-eslint/no-unused-vars': ['error', { argsIgnorePattern: '_' }],
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/prefer-nullish-coalescing.md
|
||||
*/
|
||||
'@typescript-eslint/prefer-nullish-coalescing': 'error',
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/prefer-optional-chain.md
|
||||
*/
|
||||
'@typescript-eslint/prefer-optional-chain': 'error',
|
||||
|
||||
/**
|
||||
* https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/promise-function-async.md
|
||||
*/
|
||||
'@typescript-eslint/promise-function-async': 'error',
|
||||
|
||||
// ----------------------------------
|
||||
// eslint-plugin-import
|
||||
// ----------------------------------
|
||||
|
||||
/**
|
||||
* https://github.com/import-js/eslint-plugin-import/blob/master/docs/rules/no-default-export.md
|
||||
*/
|
||||
'import/no-default-export': 'error',
|
||||
|
||||
/**
|
||||
* https://github.com/import-js/eslint-plugin-import/blob/master/docs/rules/order.md
|
||||
*/
|
||||
'import/order': 'error',
|
||||
|
||||
// ******************************************************************
|
||||
// overrides to base ruleset
|
||||
// ******************************************************************
|
||||
|
||||
// ----------------------------------
|
||||
// ESLint
|
||||
// ----------------------------------
|
||||
|
||||
/**
|
||||
* https://eslint.org/docs/rules/class-methods-use-this
|
||||
*/
|
||||
'class-methods-use-this': 'off',
|
||||
|
||||
/**
|
||||
* https://eslint.org/docs/rules/eqeqeq
|
||||
*/
|
||||
eqeqeq: 'error',
|
||||
|
||||
/**
|
||||
* https://eslint.org/docs/rules/no-plusplus
|
||||
*/
|
||||
'no-plusplus': 'off',
|
||||
|
||||
/**
|
||||
* https://eslint.org/docs/rules/object-shorthand
|
||||
*/
|
||||
'object-shorthand': 'error',
|
||||
|
||||
/**
|
||||
* https://eslint.org/docs/rules/prefer-const
|
||||
*/
|
||||
'prefer-const': 'error',
|
||||
|
||||
/**
|
||||
* https://eslint.org/docs/rules/prefer-spread
|
||||
*/
|
||||
'prefer-spread': 'error',
|
||||
|
||||
// ----------------------------------
|
||||
// import
|
||||
// ----------------------------------
|
||||
|
||||
/**
|
||||
* https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/prefer-default-export.md
|
||||
*/
|
||||
'import/prefer-default-export': 'off',
|
||||
},
|
||||
};
|
||||
|
|
1826
package-lock.json
generated
1826
package-lock.json
generated
File diff suppressed because it is too large
Load diff
|
@ -128,7 +128,7 @@ const postalAddressesFields: INodeProperties[] = [
|
|||
displayName: 'Location',
|
||||
name: 'location',
|
||||
type: 'fixedCollection',
|
||||
default: '',
|
||||
default: {},
|
||||
options: [
|
||||
{
|
||||
displayName: 'Location Fields',
|
||||
|
|
|
@ -56,7 +56,6 @@ export const accountContactFields: INodeProperties[] = [
|
|||
],
|
||||
},
|
||||
},
|
||||
description: 'Account ID',
|
||||
},
|
||||
{
|
||||
displayName: 'Contact ID',
|
||||
|
@ -74,7 +73,6 @@ export const accountContactFields: INodeProperties[] = [
|
|||
],
|
||||
},
|
||||
},
|
||||
description: 'Contact ID',
|
||||
},
|
||||
{
|
||||
displayName: 'Additional Fields',
|
||||
|
|
|
@ -51,7 +51,6 @@ export const contactListFields: INodeProperties[] = [
|
|||
],
|
||||
},
|
||||
},
|
||||
description: 'List ID',
|
||||
},
|
||||
{
|
||||
displayName: 'Contact ID',
|
||||
|
@ -69,7 +68,6 @@ export const contactListFields: INodeProperties[] = [
|
|||
],
|
||||
},
|
||||
},
|
||||
description: 'Contact ID',
|
||||
},
|
||||
|
||||
// ----------------------------------
|
||||
|
@ -91,7 +89,6 @@ export const contactListFields: INodeProperties[] = [
|
|||
],
|
||||
},
|
||||
},
|
||||
description: 'List ID',
|
||||
},
|
||||
{
|
||||
displayName: 'Contact ID',
|
||||
|
@ -109,6 +106,5 @@ export const contactListFields: INodeProperties[] = [
|
|||
],
|
||||
},
|
||||
},
|
||||
description: 'Contact ID',
|
||||
},
|
||||
];
|
||||
|
|
|
@ -54,7 +54,6 @@ export const contactTagFields: INodeProperties[] = [
|
|||
],
|
||||
},
|
||||
},
|
||||
description: 'Tag ID',
|
||||
},
|
||||
{
|
||||
displayName: 'Contact ID',
|
||||
|
@ -72,7 +71,6 @@ export const contactTagFields: INodeProperties[] = [
|
|||
],
|
||||
},
|
||||
},
|
||||
description: 'Contact ID',
|
||||
},
|
||||
// ----------------------------------
|
||||
// contactTag:delete
|
||||
|
|
|
@ -73,7 +73,7 @@ export const ecomOrderFields: INodeProperties[] = [
|
|||
],
|
||||
},
|
||||
},
|
||||
description: 'The id of the order in the external service. ONLY REQUIRED IF EXTERNALCHECKOUTID NOT INCLUDED',
|
||||
description: 'The id of the order in the external service. ONLY REQUIRED IF EXTERNALCHECKOUTID NOT INCLUDED.',
|
||||
},
|
||||
{
|
||||
displayName: 'External checkout ID',
|
||||
|
@ -437,7 +437,7 @@ export const ecomOrderFields: INodeProperties[] = [
|
|||
name: 'externalid',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: 'The id of the order in the external service. ONLY REQUIRED IF EXTERNALCHECKOUTID NOT INCLUDED',
|
||||
description: 'The id of the order in the external service. ONLY REQUIRED IF EXTERNALCHECKOUTID NOT INCLUDED.',
|
||||
},
|
||||
{
|
||||
displayName: 'External checkout ID',
|
||||
|
|
|
@ -155,7 +155,7 @@ export class Affinity implements INodeType {
|
|||
async execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]> {
|
||||
const items = this.getInputData();
|
||||
const returnData: IDataObject[] = [];
|
||||
const length = items.length as unknown as number;
|
||||
const length = items.length;
|
||||
let responseData;
|
||||
const qs: IDataObject = {};
|
||||
const resource = this.getNodeParameter('resource', 0) as string;
|
||||
|
|
|
@ -183,6 +183,7 @@ export const companyFields: INodeProperties[] = [
|
|||
],
|
||||
},
|
||||
},
|
||||
// eslint-disable-next-line n8n-nodes-base/node-param-default-wrong-for-simplify
|
||||
default: false,
|
||||
description: 'Return a simplified version of the response instead of the raw data.',
|
||||
},
|
||||
|
@ -206,7 +207,7 @@ export const companyFields: INodeProperties[] = [
|
|||
],
|
||||
},
|
||||
},
|
||||
default: '',
|
||||
default: {},
|
||||
placeholder: 'Add Condition',
|
||||
options: [
|
||||
{
|
||||
|
@ -319,7 +320,6 @@ export const companyFields: INodeProperties[] = [
|
|||
},
|
||||
},
|
||||
default: '',
|
||||
description: '',
|
||||
},
|
||||
{
|
||||
displayName: 'Options',
|
||||
|
@ -388,7 +388,6 @@ export const companyFields: INodeProperties[] = [
|
|||
name: 'jsonParameters',
|
||||
type: 'boolean',
|
||||
default: false,
|
||||
description: '',
|
||||
displayOptions: {
|
||||
show: {
|
||||
resource: [
|
||||
|
@ -600,7 +599,6 @@ export const companyFields: INodeProperties[] = [
|
|||
name: 'customProperties',
|
||||
type: 'fixedCollection',
|
||||
default: {},
|
||||
description: 'Custom Properties',
|
||||
typeOptions: {
|
||||
multipleValues: true,
|
||||
},
|
||||
|
@ -686,7 +684,6 @@ export const companyFields: INodeProperties[] = [
|
|||
name: 'jsonParameters',
|
||||
type: 'boolean',
|
||||
default: false,
|
||||
description: '',
|
||||
displayOptions: {
|
||||
show: {
|
||||
resource: [
|
||||
|
@ -898,7 +895,6 @@ export const companyFields: INodeProperties[] = [
|
|||
name: 'customProperties',
|
||||
type: 'fixedCollection',
|
||||
default: {},
|
||||
description: 'Custom Properties',
|
||||
typeOptions: {
|
||||
multipleValues: true,
|
||||
},
|
||||
|
|
|
@ -183,6 +183,7 @@ export const contactFields: INodeProperties[] = [
|
|||
],
|
||||
},
|
||||
},
|
||||
// eslint-disable-next-line n8n-nodes-base/node-param-default-wrong-for-simplify
|
||||
default: false,
|
||||
description: 'Return a simplified version of the response instead of the raw data.',
|
||||
},
|
||||
|
@ -206,7 +207,7 @@ export const contactFields: INodeProperties[] = [
|
|||
],
|
||||
},
|
||||
},
|
||||
default: '',
|
||||
default: {},
|
||||
placeholder: 'Add Condition',
|
||||
options: [
|
||||
{
|
||||
|
@ -319,7 +320,6 @@ export const contactFields: INodeProperties[] = [
|
|||
},
|
||||
},
|
||||
default: '',
|
||||
description: '',
|
||||
},
|
||||
{
|
||||
displayName: 'Options',
|
||||
|
@ -389,7 +389,6 @@ export const contactFields: INodeProperties[] = [
|
|||
name: 'jsonParameters',
|
||||
type: 'boolean',
|
||||
default: false,
|
||||
description: '',
|
||||
displayOptions: {
|
||||
show: {
|
||||
resource: [
|
||||
|
@ -539,7 +538,6 @@ export const contactFields: INodeProperties[] = [
|
|||
type: 'string',
|
||||
required: true,
|
||||
default: '',
|
||||
description: 'Email',
|
||||
},
|
||||
],
|
||||
},
|
||||
|
@ -769,7 +767,6 @@ export const contactFields: INodeProperties[] = [
|
|||
name: 'customProperties',
|
||||
type: 'fixedCollection',
|
||||
default: {},
|
||||
description: 'Custom Properties',
|
||||
typeOptions: {
|
||||
multipleValues: true,
|
||||
},
|
||||
|
@ -855,7 +852,6 @@ export const contactFields: INodeProperties[] = [
|
|||
name: 'jsonParameters',
|
||||
type: 'boolean',
|
||||
default: false,
|
||||
description: '',
|
||||
displayOptions: {
|
||||
show: {
|
||||
resource: [
|
||||
|
@ -1003,7 +999,6 @@ export const contactFields: INodeProperties[] = [
|
|||
type: 'string',
|
||||
required: true,
|
||||
default: '',
|
||||
description: 'Email',
|
||||
},
|
||||
],
|
||||
},
|
||||
|
@ -1233,7 +1228,6 @@ export const contactFields: INodeProperties[] = [
|
|||
name: 'customProperties',
|
||||
type: 'fixedCollection',
|
||||
default: {},
|
||||
description: 'Custom Properties',
|
||||
typeOptions: {
|
||||
multipleValues: true,
|
||||
},
|
||||
|
|
|
@ -231,7 +231,6 @@ export const dealFields: INodeProperties[] = [
|
|||
name: 'jsonParameters',
|
||||
type: 'boolean',
|
||||
default: false,
|
||||
description: '',
|
||||
displayOptions: {
|
||||
show: {
|
||||
resource: [
|
||||
|
@ -302,7 +301,6 @@ export const dealFields: INodeProperties[] = [
|
|||
name: 'customData',
|
||||
type: 'fixedCollection',
|
||||
default: {},
|
||||
description: 'Custom Data',
|
||||
typeOptions: {
|
||||
multipleValues: true,
|
||||
},
|
||||
|
@ -381,7 +379,6 @@ export const dealFields: INodeProperties[] = [
|
|||
name: 'jsonParameters',
|
||||
type: 'boolean',
|
||||
default: false,
|
||||
description: '',
|
||||
displayOptions: {
|
||||
show: {
|
||||
resource: [
|
||||
|
@ -482,7 +479,6 @@ export const dealFields: INodeProperties[] = [
|
|||
name: 'customData',
|
||||
type: 'fixedCollection',
|
||||
default: {},
|
||||
description: 'Custom Data',
|
||||
typeOptions: {
|
||||
multipleValues: true,
|
||||
},
|
||||
|
|
|
@ -433,7 +433,7 @@ export class Airtable implements INodeType {
|
|||
},
|
||||
},
|
||||
default: '',
|
||||
description: 'Comma separated list of fields to ignore.',
|
||||
description: 'Comma-separated list of fields to ignore.',
|
||||
},
|
||||
{
|
||||
displayName: 'Typecast',
|
||||
|
|
|
@ -137,7 +137,7 @@ export class Automizy implements INodeType {
|
|||
async execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]> {
|
||||
const items = this.getInputData();
|
||||
const returnData: IDataObject[] = [];
|
||||
const length = (items.length as unknown) as number;
|
||||
const length = items.length;
|
||||
const qs: IDataObject = {};
|
||||
let responseData;
|
||||
const resource = this.getNodeParameter('resource', 0) as string;
|
||||
|
|
|
@ -110,7 +110,7 @@ export const contactFields: INodeProperties[] = [
|
|||
displayName: 'Custom Fields',
|
||||
name: 'customFieldsUi',
|
||||
type: 'fixedCollection',
|
||||
default: '',
|
||||
default: {},
|
||||
placeholder: 'Add Custom Field',
|
||||
typeOptions: {
|
||||
multipleValues: true,
|
||||
|
@ -394,7 +394,7 @@ export const contactFields: INodeProperties[] = [
|
|||
displayName: 'Custom Fields',
|
||||
name: 'customFieldsUi',
|
||||
type: 'fixedCollection',
|
||||
default: '',
|
||||
default: {},
|
||||
placeholder: 'Add Custom Field',
|
||||
typeOptions: {
|
||||
multipleValues: true,
|
||||
|
|
|
@ -153,7 +153,7 @@ export class Autopilot implements INodeType {
|
|||
async execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]> {
|
||||
const items = this.getInputData();
|
||||
const returnData: IDataObject[] = [];
|
||||
const length = (items.length as unknown) as number;
|
||||
const length = items.length;
|
||||
const qs: IDataObject = {};
|
||||
let responseData;
|
||||
const resource = this.getNodeParameter('resource', 0) as string;
|
||||
|
|
|
@ -91,7 +91,7 @@ export const contactFields: INodeProperties[] = [
|
|||
displayName: 'Custom Fields',
|
||||
name: 'customFieldsUi',
|
||||
type: 'fixedCollection',
|
||||
default: '',
|
||||
default: {},
|
||||
placeholder: 'Add Custom Field',
|
||||
typeOptions: {
|
||||
multipleValues: true,
|
||||
|
|
|
@ -172,10 +172,10 @@ export const itemFields: INodeProperties[] = [
|
|||
{
|
||||
displayName: 'Expression Attribute Values',
|
||||
name: 'eavUi',
|
||||
description: 'Substitution tokens for attribute names in an expression. Only needed when the parameter "condition expression" is set',
|
||||
description: 'Substitution tokens for attribute names in an expression. Only needed when the parameter "condition expression" is set.',
|
||||
placeholder: 'Add Attribute Value',
|
||||
type: 'fixedCollection',
|
||||
default: '',
|
||||
default: {},
|
||||
required: true,
|
||||
typeOptions: {
|
||||
multipleValues: true,
|
||||
|
@ -223,14 +223,14 @@ export const itemFields: INodeProperties[] = [
|
|||
name: 'conditionExpression',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: 'A condition that must be satisfied in order for a conditional upsert to succeed. <a href="https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_PutItem.html">View details</a>',
|
||||
description: 'A condition that must be satisfied in order for a conditional upsert to succeed. <a href="https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_PutItem.html">View details</a>.',
|
||||
},
|
||||
{
|
||||
displayName: 'Expression Attribute Names',
|
||||
name: 'eanUi',
|
||||
placeholder: 'Add Expression',
|
||||
type: 'fixedCollection',
|
||||
default: '',
|
||||
default: {},
|
||||
typeOptions: {
|
||||
multipleValues: true,
|
||||
},
|
||||
|
@ -254,7 +254,7 @@ export const itemFields: INodeProperties[] = [
|
|||
],
|
||||
},
|
||||
],
|
||||
description: 'One or more substitution tokens for attribute names in an expression. <a href="https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_PutItem.html">View details</a>',
|
||||
description: 'One or more substitution tokens for attribute names in an expression. <a href="https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_PutItem.html">View details</a>.',
|
||||
},
|
||||
],
|
||||
},
|
||||
|
@ -401,7 +401,7 @@ export const itemFields: INodeProperties[] = [
|
|||
name: 'eanUi',
|
||||
placeholder: 'Add Expression',
|
||||
type: 'fixedCollection',
|
||||
default: '',
|
||||
default: {},
|
||||
typeOptions: {
|
||||
multipleValues: true,
|
||||
},
|
||||
|
@ -425,15 +425,15 @@ export const itemFields: INodeProperties[] = [
|
|||
],
|
||||
},
|
||||
],
|
||||
description: 'One or more substitution tokens for attribute names in an expression. Check <a href="https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_PutItem.html">Info</a>',
|
||||
description: 'One or more substitution tokens for attribute names in an expression. Check <a href="https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_PutItem.html">Info</a>.',
|
||||
},
|
||||
{
|
||||
displayName: 'Expression Attribute Values',
|
||||
name: 'expressionAttributeUi',
|
||||
description: 'Substitution tokens for attribute names in an expression. Only needed when the parameter "condition expression" is set',
|
||||
description: 'Substitution tokens for attribute names in an expression. Only needed when the parameter "condition expression" is set.',
|
||||
placeholder: 'Add Attribute Value',
|
||||
type: 'fixedCollection',
|
||||
default: '',
|
||||
default: {},
|
||||
required: true,
|
||||
typeOptions: {
|
||||
multipleValues: true,
|
||||
|
@ -624,7 +624,7 @@ export const itemFields: INodeProperties[] = [
|
|||
name: 'eanUi',
|
||||
placeholder: 'Add Expression',
|
||||
type: 'fixedCollection',
|
||||
default: '',
|
||||
default: {},
|
||||
typeOptions: {
|
||||
multipleValues: true,
|
||||
},
|
||||
|
@ -648,7 +648,7 @@ export const itemFields: INodeProperties[] = [
|
|||
],
|
||||
},
|
||||
],
|
||||
description: 'One or more substitution tokens for attribute names in an expression. <a href="https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_PutItem.html">View details</a>',
|
||||
description: 'One or more substitution tokens for attribute names in an expression. <a href="https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_PutItem.html">View details</a>.',
|
||||
},
|
||||
{
|
||||
displayName: 'Read Type',
|
||||
|
@ -665,7 +665,7 @@ export const itemFields: INodeProperties[] = [
|
|||
},
|
||||
],
|
||||
default: 'eventuallyConsistentRead',
|
||||
description: 'Type of read to perform on the table. <a href="https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.ReadConsistency.html">View details</a>',
|
||||
description: 'Type of read to perform on the table. <a href="https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.ReadConsistency.html">View details</a>.',
|
||||
},
|
||||
],
|
||||
},
|
||||
|
@ -688,7 +688,7 @@ export const itemFields: INodeProperties[] = [
|
|||
},
|
||||
},
|
||||
default: false,
|
||||
description: 'Whether to do an scan or query. Check <a href="https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/bp-query-scan.html" >differences</a>',
|
||||
description: 'Whether to do an scan or query. Check <a href="https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/bp-query-scan.html" >differences</a>.',
|
||||
},
|
||||
{
|
||||
displayName: 'Filter Expression',
|
||||
|
@ -733,7 +733,7 @@ export const itemFields: INodeProperties[] = [
|
|||
description: 'Substitution tokens for attribute names in an expression',
|
||||
placeholder: 'Add Attribute Value',
|
||||
type: 'fixedCollection',
|
||||
default: '',
|
||||
default: {},
|
||||
required: true,
|
||||
typeOptions: {
|
||||
multipleValues: true,
|
||||
|
@ -924,14 +924,14 @@ export const itemFields: INodeProperties[] = [
|
|||
},
|
||||
},
|
||||
default: '',
|
||||
description: 'Text that contains conditions that DynamoDB applies after the Query operation, but before the data is returned. Items that do not satisfy the FilterExpression criteria are not returned',
|
||||
description: 'Text that contains conditions that DynamoDB applies after the Query operation, but before the data is returned. Items that do not satisfy the FilterExpression criteria are not returned.',
|
||||
},
|
||||
{
|
||||
displayName: 'Expression Attribute Names',
|
||||
name: 'eanUi',
|
||||
placeholder: 'Add Expression',
|
||||
type: 'fixedCollection',
|
||||
default: '',
|
||||
default: {},
|
||||
typeOptions: {
|
||||
multipleValues: true,
|
||||
},
|
||||
|
@ -955,7 +955,7 @@ export const itemFields: INodeProperties[] = [
|
|||
],
|
||||
},
|
||||
],
|
||||
description: 'One or more substitution tokens for attribute names in an expression. Check <a href="https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_PutItem.html">Info</a>',
|
||||
description: 'One or more substitution tokens for attribute names in an expression. Check <a href="https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_PutItem.html">Info</a>.',
|
||||
},
|
||||
],
|
||||
},
|
||||
|
|
|
@ -205,7 +205,7 @@ export class AwsRekognition implements INodeType {
|
|||
displayName: 'Regions of Interest',
|
||||
name: 'regionsOfInterestUi',
|
||||
type: 'fixedCollection',
|
||||
default: '',
|
||||
default: {},
|
||||
placeholder: 'Add Region of Interest',
|
||||
displayOptions: {
|
||||
show: {
|
||||
|
@ -272,7 +272,7 @@ export class AwsRekognition implements INodeType {
|
|||
displayName: 'Word Filter',
|
||||
name: 'wordFilterUi',
|
||||
type: 'collection',
|
||||
default: '',
|
||||
default: {},
|
||||
placeholder: 'Add Word Filter',
|
||||
displayOptions: {
|
||||
show: {
|
||||
|
|
|
@ -348,7 +348,7 @@ export const bucketFields: INodeProperties[] = [
|
|||
name: 'startAfter',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: 'StartAfter is where you want Amazon S3 to start listing from. Amazon S3 starts listing after this specified key',
|
||||
description: 'StartAfter is where you want Amazon S3 to start listing from. Amazon S3 starts listing after this specified key.',
|
||||
},
|
||||
],
|
||||
},
|
||||
|
|
|
@ -671,7 +671,7 @@ export const fileFields: INodeProperties[] = [
|
|||
name: 'tagsUi',
|
||||
placeholder: 'Add Tag',
|
||||
type: 'fixedCollection',
|
||||
default: '',
|
||||
default: {},
|
||||
typeOptions: {
|
||||
multipleValues: true,
|
||||
},
|
||||
|
@ -695,14 +695,12 @@ export const fileFields: INodeProperties[] = [
|
|||
name: 'key',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: '',
|
||||
},
|
||||
{
|
||||
displayName: 'Value',
|
||||
name: 'value',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: '',
|
||||
},
|
||||
],
|
||||
},
|
||||
|
|
|
@ -55,7 +55,6 @@ export class AwsTextract implements INodeType {
|
|||
},
|
||||
],
|
||||
default: 'analyzeExpense',
|
||||
description: '',
|
||||
},
|
||||
{
|
||||
displayName: 'Input Data Field Name',
|
||||
|
@ -70,7 +69,7 @@ export class AwsTextract implements INodeType {
|
|||
},
|
||||
},
|
||||
required: true,
|
||||
description: 'The name of the input field containing the binary file data to be uploaded. Supported file types: PNG, JPEG',
|
||||
description: 'The name of the input field containing the binary file data to be uploaded. Supported file types: PNG, JPEG.',
|
||||
},
|
||||
{
|
||||
displayName: 'Simplify Response',
|
||||
|
|
|
@ -28,7 +28,6 @@ export const descriptions: INodeProperties[] = [
|
|||
},
|
||||
],
|
||||
default: 'get',
|
||||
description: '',
|
||||
},
|
||||
...get.description,
|
||||
];
|
||||
|
|
|
@ -50,7 +50,7 @@ export const createEmployeeSharedDescription = (sync = false): INodeProperties[]
|
|||
type: 'string',
|
||||
default: '',
|
||||
placeholder: 'United States',
|
||||
description: 'The name of the country. Must exist in the BambooHr country list',
|
||||
description: 'The name of the country. Must exist in the BambooHr country list.',
|
||||
},
|
||||
],
|
||||
},
|
||||
|
|
|
@ -49,7 +49,6 @@ export const descriptions: INodeProperties[] = [
|
|||
},
|
||||
],
|
||||
default: 'create',
|
||||
description: '',
|
||||
},
|
||||
...create.description,
|
||||
...get.description,
|
||||
|
|
|
@ -50,7 +50,7 @@ export const updateEmployeeSharedDescription = (sync = false): INodeProperties[]
|
|||
type: 'string',
|
||||
default: '',
|
||||
placeholder: 'United States',
|
||||
description: 'The name of the country. Must exist in the BambooHr country list',
|
||||
description: 'The name of the country. Must exist in the BambooHr country list.',
|
||||
},
|
||||
],
|
||||
},
|
||||
|
|
|
@ -54,7 +54,7 @@ export const employeeDocumentUploadDescription: EmployeeDocumentProperties = [
|
|||
},
|
||||
},
|
||||
required: true,
|
||||
description: 'The name of the input field containing the binary file data to be uploaded. Supported file types: PNG, JPEG',
|
||||
description: 'The name of the input field containing the binary file data to be uploaded. Supported file types: PNG, JPEG.',
|
||||
},
|
||||
{
|
||||
displayName: 'Options',
|
||||
|
|
|
@ -56,7 +56,6 @@ export const descriptions: INodeProperties[] = [
|
|||
},
|
||||
],
|
||||
default: 'delete',
|
||||
description: '',
|
||||
},
|
||||
...del.description,
|
||||
...download.description,
|
||||
|
|
|
@ -17,7 +17,7 @@ export const fileUploadDescription: INodeProperties[] = [
|
|||
},
|
||||
},
|
||||
required: true,
|
||||
description: 'The name of the input field containing the binary file data to be uploaded. Supported file types: PNG, JPEG',
|
||||
description: 'The name of the input field containing the binary file data to be uploaded. Supported file types: PNG, JPEG.',
|
||||
},
|
||||
{
|
||||
displayName: 'Category Name/ID',
|
||||
|
|
|
@ -113,7 +113,7 @@ export class Bannerbear implements INodeType {
|
|||
async execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]> {
|
||||
const items = this.getInputData();
|
||||
const returnData: IDataObject[] = [];
|
||||
const length = items.length as unknown as number;
|
||||
const length = items.length;
|
||||
let responseData;
|
||||
const qs: IDataObject = {};
|
||||
const resource = this.getNodeParameter('resource', 0) as string;
|
||||
|
|
|
@ -297,37 +297,37 @@ export const operationFields: INodeProperties[] = [
|
|||
{
|
||||
name: 'Date Equal',
|
||||
value: 'date_equal',
|
||||
description: 'Field is date. Format: \'YYYY-MM-DD\'',
|
||||
description: 'Field is date. Format: \'YYYY-MM-DD\'.',
|
||||
},
|
||||
{
|
||||
name: 'Date Not Equal',
|
||||
value: 'date_not_equal',
|
||||
description: 'Field is not date. Format: \'YYYY-MM-DD\'',
|
||||
description: 'Field is not date. Format: \'YYYY-MM-DD\'.',
|
||||
},
|
||||
{
|
||||
name: 'Date Equals Today',
|
||||
value: 'date_equals_today',
|
||||
description: 'Field is today. Format: string',
|
||||
description: 'Field is today. Format: string.',
|
||||
},
|
||||
{
|
||||
name: 'Date Equals Month',
|
||||
value: 'date_equals_month',
|
||||
description: 'Field in this month. Format: string',
|
||||
description: 'Field in this month. Format: string.',
|
||||
},
|
||||
{
|
||||
name: 'Date Equals Year',
|
||||
value: 'date_equals_year',
|
||||
description: 'Field in this year. Format: string',
|
||||
description: 'Field in this year. Format: string.',
|
||||
},
|
||||
{
|
||||
name: 'Date Before Date',
|
||||
value: 'date_before',
|
||||
description: 'Field before this date. Format: \'YYYY-MM-DD\'',
|
||||
description: 'Field before this date. Format: \'YYYY-MM-DD\'.',
|
||||
},
|
||||
{
|
||||
name: 'Date After Date',
|
||||
value: 'date_after',
|
||||
description: 'Field after this date. Format: \'YYYY-MM-DD\'',
|
||||
description: 'Field after this date. Format: \'YYYY-MM-DD\'.',
|
||||
},
|
||||
{
|
||||
name: 'Filename Contains',
|
||||
|
|
|
@ -174,7 +174,6 @@ export class Beeminder implements INodeType {
|
|||
name: 'datapointId',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: 'Datapoint id',
|
||||
displayOptions: {
|
||||
show: {
|
||||
operation: [
|
||||
|
@ -207,7 +206,6 @@ export class Beeminder implements INodeType {
|
|||
name: 'comment',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: 'Comment',
|
||||
},
|
||||
{
|
||||
displayName: 'Timestamp',
|
||||
|
@ -284,7 +282,6 @@ export class Beeminder implements INodeType {
|
|||
name: 'comment',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: 'Comment',
|
||||
},
|
||||
{
|
||||
displayName: 'Timestamp',
|
||||
|
@ -326,7 +323,7 @@ export class Beeminder implements INodeType {
|
|||
|
||||
const items = this.getInputData();
|
||||
const returnData: IDataObject[] = [];
|
||||
const length = items.length as unknown as number;
|
||||
const length = items.length;
|
||||
const timezone = this.getTimezone();
|
||||
|
||||
const resource = this.getNodeParameter('resource', 0) as string;
|
||||
|
|
|
@ -134,7 +134,7 @@ export class Bitly implements INodeType {
|
|||
async execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]> {
|
||||
const items = this.getInputData();
|
||||
const returnData: IDataObject[] = [];
|
||||
const length = items.length as unknown as number;
|
||||
const length = items.length;
|
||||
const qs: IDataObject = {};
|
||||
let responseData;
|
||||
const resource = this.getNodeParameter('resource', 0) as string;
|
||||
|
|
|
@ -80,7 +80,7 @@ export class Box implements INodeType {
|
|||
async execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]> {
|
||||
const items = this.getInputData();
|
||||
const returnData: IDataObject[] = [];
|
||||
const length = items.length as unknown as number;
|
||||
const length = items.length;
|
||||
const qs: IDataObject = {};
|
||||
let responseData;
|
||||
const timezone = this.getTimezone();
|
||||
|
|
|
@ -77,7 +77,6 @@ export const fileFields: INodeProperties[] = [
|
|||
},
|
||||
},
|
||||
default: '',
|
||||
description: 'File ID',
|
||||
},
|
||||
{
|
||||
displayName: 'Parent ID',
|
||||
|
@ -94,7 +93,7 @@ export const fileFields: INodeProperties[] = [
|
|||
],
|
||||
},
|
||||
},
|
||||
description: 'The ID of folder to copy the file to. If not defined will be copied to the root folder',
|
||||
description: 'The ID of folder to copy the file to. If not defined will be copied to the root folder.',
|
||||
},
|
||||
{
|
||||
displayName: 'Additional Fields',
|
||||
|
@ -176,7 +175,6 @@ export const fileFields: INodeProperties[] = [
|
|||
},
|
||||
},
|
||||
default: '',
|
||||
description: 'File ID',
|
||||
},
|
||||
{
|
||||
displayName: 'Binary Property',
|
||||
|
@ -327,7 +325,7 @@ export const fileFields: INodeProperties[] = [
|
|||
name: 'contet_types',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: `Limits search results to items with the given content types. Content types are defined as a comma separated lists of Box recognized content types.`,
|
||||
description: 'Limits search results to items with the given content types. Content types are defined as a comma-separated lists of Box recognized content types.',
|
||||
},
|
||||
{
|
||||
displayName: 'Created At Range',
|
||||
|
@ -396,7 +394,7 @@ export const fileFields: INodeProperties[] = [
|
|||
name: 'ancestor_folder_ids',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: `Limits search results to items within the given list of folders. Folders are defined as a comma separated lists of folder IDs.`,
|
||||
description: 'Limits search results to items within the given list of folders. Folders are defined as a comma-separated lists of folder IDs.',
|
||||
},
|
||||
{
|
||||
displayName: 'Scope',
|
||||
|
@ -421,7 +419,7 @@ export const fileFields: INodeProperties[] = [
|
|||
type: 'string',
|
||||
default: '',
|
||||
placeholder: '1000000,5000000',
|
||||
description: `Limits search results to items within a given file size range. File size ranges are defined as comma separated byte sizes.`,
|
||||
description: 'Limits search results to items within a given file size range. File size ranges are defined as comma-separated byte sizes.',
|
||||
},
|
||||
{
|
||||
displayName: 'Sort',
|
||||
|
@ -492,7 +490,7 @@ export const fileFields: INodeProperties[] = [
|
|||
name: 'owner_user_ids',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: `Limits search results to items owned by the given list of owners. Owners are defined as a comma separated list of user IDs.`,
|
||||
description: 'Limits search results to items owned by the given list of owners. Owners are defined as a comma-separated list of user IDs.',
|
||||
},
|
||||
],
|
||||
},
|
||||
|
@ -830,6 +828,6 @@ export const fileFields: INodeProperties[] = [
|
|||
},
|
||||
},
|
||||
default: '',
|
||||
description: 'ID of the parent folder that will contain the file. If not it will be uploaded to the root folder',
|
||||
description: 'ID of the parent folder that will contain the file. If not it will be uploaded to the root folder.',
|
||||
},
|
||||
];
|
||||
|
|
|
@ -89,7 +89,7 @@ export const folderFields: INodeProperties[] = [
|
|||
},
|
||||
},
|
||||
default: '',
|
||||
description: 'ID of the folder you want to create the new folder in. if not defined it will be created on the root folder',
|
||||
description: 'ID of the folder you want to create the new folder in. if not defined it will be created on the root folder.',
|
||||
},
|
||||
{
|
||||
displayName: 'Options',
|
||||
|
@ -155,7 +155,6 @@ export const folderFields: INodeProperties[] = [
|
|||
},
|
||||
},
|
||||
default: '',
|
||||
description: 'Folder ID',
|
||||
},
|
||||
|
||||
/* -------------------------------------------------------------------------- */
|
||||
|
@ -176,7 +175,6 @@ export const folderFields: INodeProperties[] = [
|
|||
},
|
||||
},
|
||||
default: '',
|
||||
description: 'Folder ID',
|
||||
},
|
||||
{
|
||||
displayName: 'Recursive',
|
||||
|
@ -279,7 +277,7 @@ export const folderFields: INodeProperties[] = [
|
|||
name: 'contet_types',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: `Limits search results to items with the given content types. Content types are defined as a comma separated lists of Box recognized content types.`,
|
||||
description: 'Limits search results to items with the given content types. Content types are defined as a comma-separated lists of Box recognized content types.',
|
||||
},
|
||||
{
|
||||
displayName: 'Created At Range',
|
||||
|
@ -348,7 +346,7 @@ export const folderFields: INodeProperties[] = [
|
|||
name: 'ancestor_folder_ids',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: `Limits search results to items within the given list of folders. Folders are defined as a comma separated lists of folder IDs.`,
|
||||
description: 'Limits search results to items within the given list of folders. Folders are defined as a comma-separated lists of folder IDs.',
|
||||
},
|
||||
{
|
||||
displayName: 'Scope',
|
||||
|
@ -373,7 +371,7 @@ export const folderFields: INodeProperties[] = [
|
|||
type: 'string',
|
||||
default: '',
|
||||
placeholder: '1000000,5000000',
|
||||
description: `Limits search results to items within a given file size range. File size ranges are defined as comma separated byte sizes.`,
|
||||
description: 'Limits search results to items within a given file size range. File size ranges are defined as comma-separated byte sizes.',
|
||||
},
|
||||
{
|
||||
displayName: 'Sort',
|
||||
|
@ -444,7 +442,7 @@ export const folderFields: INodeProperties[] = [
|
|||
name: 'owner_user_ids',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: `Limits search results to items owned by the given list of owners. Owners are defined as a comma separated list of user IDs.`,
|
||||
description: 'Limits search results to items owned by the given list of owners. Owners are defined as a comma-separated list of user IDs.',
|
||||
},
|
||||
],
|
||||
},
|
||||
|
@ -703,7 +701,6 @@ export const folderFields: INodeProperties[] = [
|
|||
},
|
||||
},
|
||||
default: '',
|
||||
description: 'Folder ID',
|
||||
},
|
||||
{
|
||||
displayName: 'Update Fields',
|
||||
|
|
|
@ -161,7 +161,7 @@ export class Brandfetch implements INodeType {
|
|||
|
||||
async execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]> {
|
||||
const items = this.getInputData();
|
||||
const length = items.length as unknown as number;
|
||||
const length = items.length;
|
||||
|
||||
const operation = this.getNodeParameter('operation', 0) as string;
|
||||
const responseData = [];
|
||||
|
|
|
@ -297,7 +297,6 @@ export const objectFields: INodeProperties[] = [
|
|||
name: 'jsonParameters',
|
||||
type: 'boolean',
|
||||
default: false,
|
||||
description: '',
|
||||
displayOptions: {
|
||||
show: {
|
||||
resource: [
|
||||
|
@ -471,7 +470,7 @@ export const objectFields: INodeProperties[] = [
|
|||
},
|
||||
},
|
||||
placeholder: `[ { "key": "name", "constraint_type": "text contains", "value": "cafe" } , { "key": "address", "constraint_type": "geographic_search", "value": { "range":10, "origin_address":"New York" } } ]`,
|
||||
description: 'Refine the list that is returned by the Data API with search constraints, exactly as you define a search in Bubble. See <a href="https://manual.bubble.io/core-resources/api/data-api#search-constraints">link</a>',
|
||||
description: 'Refine the list that is returned by the Data API with search constraints, exactly as you define a search in Bubble. See <a href="https://manual.bubble.io/core-resources/api/data-api#search-constraints">link</a>.',
|
||||
},
|
||||
{
|
||||
displayName: 'Sort',
|
||||
|
@ -492,7 +491,7 @@ export const objectFields: INodeProperties[] = [
|
|||
name: 'sort_field',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: `Specify the field to use for sorting. Either use a fielddefined for the current typeor use <code>_random_sorting</code> to get the entries in a random order`,
|
||||
description: 'Specify the field to use for sorting. Either use a fielddefined for the current typeor use <code>_random_sorting</code> to get the entries in a random order.',
|
||||
},
|
||||
{
|
||||
displayName: 'Descending',
|
||||
|
|
|
@ -61,7 +61,7 @@ export class CircleCi implements INodeType {
|
|||
async execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]> {
|
||||
const items = this.getInputData();
|
||||
const returnData: IDataObject[] = [];
|
||||
const length = items.length as unknown as number;
|
||||
const length = items.length;
|
||||
const qs: IDataObject = {};
|
||||
let responseData;
|
||||
const resource = this.getNodeParameter('resource', 0) as string;
|
||||
|
|
|
@ -164,7 +164,7 @@ export function getActionInheritedProperties(): INodeProperties[] {
|
|||
name: 'iconUrl',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: 'Optional icon to be shown on the action in conjunction with the title. Supports data URI in version 1.2+',
|
||||
description: 'Optional icon to be shown on the action in conjunction with the title. Supports data URI in version 1.2+.',
|
||||
},
|
||||
{
|
||||
displayName: 'Style',
|
||||
|
@ -205,7 +205,7 @@ export function getTextBlockProperties(): INodeProperties[] {
|
|||
},
|
||||
},
|
||||
required: true,
|
||||
description: 'Text to display. A subset of markdown is supported (https://aka.ms/ACTextFeatures)',
|
||||
description: 'Text to display. A subset of markdown is supported (https://aka.ms/ACTextFeatures).',
|
||||
},
|
||||
{
|
||||
displayName: 'Color',
|
||||
|
@ -407,7 +407,7 @@ export function getTextBlockProperties(): INodeProperties[] {
|
|||
},
|
||||
},
|
||||
default: true,
|
||||
description: 'If true, allow text to wrap. Otherwise, text is clipped',
|
||||
description: 'If true, allow text to wrap. Otherwise, text is clipped.',
|
||||
},
|
||||
{
|
||||
displayName: 'Height',
|
||||
|
@ -537,7 +537,7 @@ export function getInputTextProperties(): INodeProperties[] {
|
|||
},
|
||||
},
|
||||
default: '',
|
||||
description: 'Unique identifier for the value. Used to identify collected input when the Submit action is performed',
|
||||
description: 'Unique identifier for the value. Used to identify collected input when the Submit action is performed.',
|
||||
},
|
||||
{
|
||||
displayName: 'Is Multiline',
|
||||
|
@ -579,7 +579,7 @@ export function getInputTextProperties(): INodeProperties[] {
|
|||
},
|
||||
},
|
||||
default: '',
|
||||
description: 'Description of the input desired. Displayed when no text has been input',
|
||||
description: 'Description of the input desired. Displayed when no text has been input.',
|
||||
},
|
||||
{
|
||||
displayName: 'Regex',
|
||||
|
|
|
@ -61,7 +61,7 @@ export const meetingFields: INodeProperties[] = [
|
|||
],
|
||||
},
|
||||
},
|
||||
description: 'Meeting title. The title can be a maximum of 128 characters long',
|
||||
description: 'Meeting title. The title can be a maximum of 128 characters long.',
|
||||
},
|
||||
{
|
||||
displayName: 'Start',
|
||||
|
@ -79,7 +79,7 @@ export const meetingFields: INodeProperties[] = [
|
|||
],
|
||||
},
|
||||
},
|
||||
description: 'Date and time for the start of the meeting. Acceptable <a href="https://datatracker.ietf.org/doc/html/rfc2445"> format</a>',
|
||||
description: 'Date and time for the start of the meeting. Acceptable <a href="https://datatracker.ietf.org/doc/html/rfc2445"> format</a>.',
|
||||
},
|
||||
{
|
||||
displayName: 'End',
|
||||
|
@ -97,7 +97,7 @@ export const meetingFields: INodeProperties[] = [
|
|||
],
|
||||
},
|
||||
},
|
||||
description: 'Date and time for the end of the meeting. Acceptable <a href="https://datatracker.ietf.org/doc/html/rfc2445"> format</a>',
|
||||
description: 'Date and time for the end of the meeting. Acceptable <a href="https://datatracker.ietf.org/doc/html/rfc2445"> format</a>.',
|
||||
},
|
||||
{
|
||||
displayName: 'Additional Fields',
|
||||
|
@ -121,7 +121,7 @@ export const meetingFields: INodeProperties[] = [
|
|||
name: 'agenda',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: 'Meeting agenda. The agenda can be a maximum of 1300 characters long',
|
||||
description: 'Meeting agenda. The agenda can be a maximum of 1300 characters long.',
|
||||
},
|
||||
{
|
||||
displayName: 'Allow Any User To Be Co-Host',
|
||||
|
@ -184,14 +184,14 @@ export const meetingFields: INodeProperties[] = [
|
|||
name: 'hostEmail',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: `Email address for the meeting host. Can only be set if you're an admin`,
|
||||
description: 'Email address for the meeting host. Can only be set if you\'re an admin.',
|
||||
},
|
||||
{
|
||||
displayName: 'Integration Tags',
|
||||
name: 'integrationTags',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: `External keys created by an integration application in its own domain. They could be Zendesk ticket IDs, Jira IDs, Salesforce Opportunity IDs, etc`,
|
||||
description: 'External keys created by an integration application in its own domain. They could be Zendesk ticket IDs, Jira IDs, Salesforce Opportunity IDs, etc.',
|
||||
},
|
||||
{
|
||||
displayName: 'Invitees',
|
||||
|
@ -200,7 +200,7 @@ export const meetingFields: INodeProperties[] = [
|
|||
typeOptions: {
|
||||
multipleValues: true,
|
||||
},
|
||||
default: '',
|
||||
default: {},
|
||||
placeholder: 'Add Invitee',
|
||||
options: [
|
||||
{
|
||||
|
@ -270,7 +270,7 @@ export const meetingFields: INodeProperties[] = [
|
|||
name: 'recurrence',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: `Rule for how the meeting should recur. Acceptable <a href="https://datatracker.ietf.org/doc/html/rfc2445"> format</a>`,
|
||||
description: 'Rule for how the meeting should recur. Acceptable <a href="https://datatracker.ietf.org/doc/html/rfc2445"> format</a>.',
|
||||
},
|
||||
{
|
||||
displayName: 'Required Registration Info',
|
||||
|
@ -355,7 +355,7 @@ export const meetingFields: INodeProperties[] = [
|
|||
loadOptionsMethod: 'getSites',
|
||||
},
|
||||
default: '',
|
||||
description: `URL of the Webex site which the meeting is created on. If not specified, the meeting is created on user's preferred site`,
|
||||
description: 'URL of the Webex site which the meeting is created on. If not specified, the meeting is created on user\'s preferred site.',
|
||||
},
|
||||
],
|
||||
},
|
||||
|
@ -403,7 +403,7 @@ export const meetingFields: INodeProperties[] = [
|
|||
name: 'hostEmail',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: 'Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin-level scopes',
|
||||
description: 'Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin-level scopes.',
|
||||
},
|
||||
{
|
||||
displayName: 'Send Email',
|
||||
|
@ -458,21 +458,21 @@ export const meetingFields: INodeProperties[] = [
|
|||
name: 'hostEmail',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: 'Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin-level scopes',
|
||||
description: 'Email address for the meeting host. This parameter is only used if the user or application calling the API has the admin-level scopes.',
|
||||
},
|
||||
{
|
||||
displayName: 'Password',
|
||||
name: 'password',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: `Meeting password. It's required when the meeting is protected by a password and the current user is not privileged to view it if they are not a host, co-host or invitee of the meeting`,
|
||||
description: 'Meeting password. It\'s required when the meeting is protected by a password and the current user is not privileged to view it if they are not a host, co-host or invitee of the meeting.',
|
||||
},
|
||||
{
|
||||
displayName: 'Send Email',
|
||||
name: 'sendEmail',
|
||||
type: 'boolean',
|
||||
default: true,
|
||||
description: 'Whether or not to send emails to host and invitees. It is an optional field and default value is true',
|
||||
description: 'Whether or not to send emails to host and invitees. It is an optional field and default value is true.',
|
||||
},
|
||||
],
|
||||
},
|
||||
|
@ -542,7 +542,7 @@ export const meetingFields: INodeProperties[] = [
|
|||
name: 'from',
|
||||
type: 'dateTime',
|
||||
default: '',
|
||||
description: 'Start date and time (inclusive) for the meeting. Acceptable <a href="https://datatracker.ietf.org/doc/html/rfc2445"> format</a>',
|
||||
description: 'Start date and time (inclusive) for the meeting. Acceptable <a href="https://datatracker.ietf.org/doc/html/rfc2445"> format</a>.',
|
||||
},
|
||||
{
|
||||
displayName: 'Host Email',
|
||||
|
@ -658,7 +658,7 @@ export const meetingFields: INodeProperties[] = [
|
|||
name: 'to',
|
||||
type: 'dateTime',
|
||||
default: '',
|
||||
description: 'End date and time (inclusive) for the meeting. Acceptable <a href="https://datatracker.ietf.org/doc/html/rfc2445"> format</a>',
|
||||
description: 'End date and time (inclusive) for the meeting. Acceptable <a href="https://datatracker.ietf.org/doc/html/rfc2445"> format</a>.',
|
||||
},
|
||||
{
|
||||
displayName: 'Weblink',
|
||||
|
@ -713,7 +713,7 @@ export const meetingFields: INodeProperties[] = [
|
|||
name: 'agenda',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: `The meeting's agenda. Cannot be longer that 1300 characters`,
|
||||
description: 'The meeting\'s agenda. Cannot be longer that 1300 characters.',
|
||||
},
|
||||
{
|
||||
displayName: 'Allow Any User To Be Co-Host',
|
||||
|
@ -762,7 +762,7 @@ export const meetingFields: INodeProperties[] = [
|
|||
name: 'end',
|
||||
type: 'dateTime',
|
||||
default: '',
|
||||
description: 'Date and time for the end of the meeting. Acceptable <a href="https://datatracker.ietf.org/doc/html/rfc2445"> format</a>',
|
||||
description: 'Date and time for the end of the meeting. Acceptable <a href="https://datatracker.ietf.org/doc/html/rfc2445"> format</a>.',
|
||||
},
|
||||
{
|
||||
displayName: 'Exclude Password',
|
||||
|
@ -776,7 +776,7 @@ export const meetingFields: INodeProperties[] = [
|
|||
name: 'hostEmail',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: `Email address for the meeting host. This attribute should only be set if the user or application calling the API has the admin-level scopes`,
|
||||
description: 'Email address for the meeting host. This attribute should only be set if the user or application calling the API has the admin-level scopes.',
|
||||
},
|
||||
{
|
||||
displayName: 'Invitees',
|
||||
|
@ -785,7 +785,7 @@ export const meetingFields: INodeProperties[] = [
|
|||
typeOptions: {
|
||||
multipleValues: true,
|
||||
},
|
||||
default: '',
|
||||
default: {},
|
||||
placeholder: 'Add Invitee',
|
||||
options: [
|
||||
{
|
||||
|
@ -937,7 +937,7 @@ export const meetingFields: INodeProperties[] = [
|
|||
name: 'sendEmail',
|
||||
type: 'boolean',
|
||||
default: false,
|
||||
description: `Whether or not to send emails to host and invitees. It is an optional field and default value is true`,
|
||||
description: 'Whether or not to send emails to host and invitees. It is an optional field and default value is true.',
|
||||
},
|
||||
{
|
||||
displayName: 'Site URL',
|
||||
|
@ -947,14 +947,14 @@ export const meetingFields: INodeProperties[] = [
|
|||
loadOptionsMethod: 'getSites',
|
||||
},
|
||||
default: '',
|
||||
description: `URL of the Webex site which the meeting is created on. If not specified, the meeting is created on user's preferred site`,
|
||||
description: 'URL of the Webex site which the meeting is created on. If not specified, the meeting is created on user\'s preferred site.',
|
||||
},
|
||||
{
|
||||
displayName: 'Start',
|
||||
name: 'start',
|
||||
type: 'dateTime',
|
||||
default: '',
|
||||
description: 'Date and time for the start of the meeting. Acceptable <a href="https://datatracker.ietf.org/doc/html/rfc2445"> format</a>',
|
||||
description: 'Date and time for the start of the meeting. Acceptable <a href="https://datatracker.ietf.org/doc/html/rfc2445"> format</a>.',
|
||||
},
|
||||
{
|
||||
displayName: 'Title',
|
||||
|
|
|
@ -133,7 +133,6 @@ export const messageFields: INodeProperties[] = [
|
|||
{
|
||||
displayName: 'Person ID',
|
||||
name: 'toPersonId',
|
||||
description: 'The person ID',
|
||||
type: 'string',
|
||||
required: true,
|
||||
default: '',
|
||||
|
@ -249,7 +248,6 @@ export const messageFields: INodeProperties[] = [
|
|||
},
|
||||
],
|
||||
default: 'textBlock',
|
||||
description: '',
|
||||
},
|
||||
...getTextBlockProperties(),
|
||||
...getInputTextProperties(),
|
||||
|
@ -290,7 +288,6 @@ export const messageFields: INodeProperties[] = [
|
|||
},
|
||||
],
|
||||
default: 'openUrl',
|
||||
description: '',
|
||||
},
|
||||
{
|
||||
displayName: 'URL',
|
||||
|
@ -319,7 +316,7 @@ export const messageFields: INodeProperties[] = [
|
|||
},
|
||||
},
|
||||
default: '',
|
||||
description: 'Any extra data to pass along. These are essentially ‘hidden’ properties',
|
||||
description: 'Any extra data to pass along. These are essentially ‘hidden’ properties.',
|
||||
},
|
||||
{
|
||||
displayName: 'Verb',
|
||||
|
@ -373,7 +370,6 @@ export const messageFields: INodeProperties[] = [
|
|||
},
|
||||
],
|
||||
default: 'url',
|
||||
description: '',
|
||||
},
|
||||
{
|
||||
displayName: 'Input Field With File',
|
||||
|
@ -413,7 +409,7 @@ export const messageFields: INodeProperties[] = [
|
|||
name: 'markdown',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: 'The message in markdown format. When used the text parameter is used to provide alternate text for UI clients that do not support rich text',
|
||||
description: 'The message in markdown format. When used the text parameter is used to provide alternate text for UI clients that do not support rich text.',
|
||||
},
|
||||
],
|
||||
},
|
||||
|
@ -637,7 +633,7 @@ export const messageFields: INodeProperties[] = [
|
|||
{
|
||||
displayName: 'Markdown',
|
||||
name: 'markdownText',
|
||||
description: 'The message, in Markdown format. The maximum message length is 7439 bytes',
|
||||
description: 'The message, in Markdown format. The maximum message length is 7439 bytes.',
|
||||
type: 'string',
|
||||
required: true,
|
||||
default: '',
|
||||
|
|
|
@ -57,8 +57,7 @@ export class Clearbit implements INodeType {
|
|||
{
|
||||
name: 'Person',
|
||||
value: 'person',
|
||||
description: `The Person API lets you retrieve social information associated with an email address,
|
||||
such as a person’s name, location and Twitter handle.`,
|
||||
description: 'The Person API lets you retrieve social information associated with an email address, such as a person’s name, location and Twitter handle.',
|
||||
},
|
||||
],
|
||||
default: 'company',
|
||||
|
@ -74,7 +73,7 @@ export class Clearbit implements INodeType {
|
|||
async execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]> {
|
||||
const items = this.getInputData();
|
||||
const returnData: IDataObject[] = [];
|
||||
const length = items.length as unknown as number;
|
||||
const length = items.length;
|
||||
const qs: IDataObject = {};
|
||||
let responseData;
|
||||
const resource = this.getNodeParameter('resource', 0) as string;
|
||||
|
|
|
@ -473,7 +473,7 @@ export class ClickUp implements INodeType {
|
|||
async execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]> {
|
||||
const items = this.getInputData();
|
||||
const returnData: IDataObject[] = [];
|
||||
const length = items.length as unknown as number;
|
||||
const length = items.length;
|
||||
const qs: IDataObject = {};
|
||||
let responseData;
|
||||
|
||||
|
|
|
@ -372,7 +372,6 @@ export const taskFields: INodeProperties[] = [
|
|||
],
|
||||
},
|
||||
},
|
||||
description: 'Task ID',
|
||||
},
|
||||
{
|
||||
displayName: 'Update Fields',
|
||||
|
@ -396,7 +395,7 @@ export const taskFields: INodeProperties[] = [
|
|||
name: 'addAssignees',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: 'Assignees IDs. Multiple ca be added separated by comma',
|
||||
description: 'Assignees IDs. Multiple ca be added separated by comma.',
|
||||
},
|
||||
{
|
||||
displayName: 'Content',
|
||||
|
@ -459,14 +458,13 @@ export const taskFields: INodeProperties[] = [
|
|||
name: 'removeAssignees',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: 'Assignees IDs. Multiple ca be added separated by comma',
|
||||
description: 'Assignees IDs. Multiple ca be added separated by comma.',
|
||||
},
|
||||
{
|
||||
displayName: 'Status',
|
||||
name: 'status',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: 'status',
|
||||
},
|
||||
{
|
||||
displayName: 'Start Date',
|
||||
|
@ -510,7 +508,6 @@ export const taskFields: INodeProperties[] = [
|
|||
],
|
||||
},
|
||||
},
|
||||
description: 'Task ID',
|
||||
},
|
||||
|
||||
/* -------------------------------------------------------------------------- */
|
||||
|
@ -943,7 +940,6 @@ export const taskFields: INodeProperties[] = [
|
|||
],
|
||||
},
|
||||
},
|
||||
description: 'task ID',
|
||||
},
|
||||
|
||||
/* -------------------------------------------------------------------------- */
|
||||
|
@ -965,7 +961,6 @@ export const taskFields: INodeProperties[] = [
|
|||
],
|
||||
},
|
||||
},
|
||||
description: 'Task ID',
|
||||
},
|
||||
{
|
||||
displayName: 'Return All',
|
||||
|
@ -1063,9 +1058,7 @@ export const taskFields: INodeProperties[] = [
|
|||
},
|
||||
},
|
||||
default: false,
|
||||
description: `The value is JSON and will be parsed as such. Is needed
|
||||
if for example needed for labels which expects the value
|
||||
to be an array.`,
|
||||
description: 'The value is JSON and will be parsed as such. Is needed if for example needed for labels which expects the value to be an array.',
|
||||
},
|
||||
{
|
||||
displayName: 'Value',
|
||||
|
|
|
@ -231,7 +231,7 @@ export class Clockify implements INodeType {
|
|||
|
||||
const returnData: IDataObject[] = [];
|
||||
|
||||
const length = (items.length as unknown) as number;
|
||||
const length = items.length;
|
||||
|
||||
const qs: IDataObject = {};
|
||||
|
||||
|
|
|
@ -50,6 +50,7 @@ export class ClockifyTrigger implements INodeType {
|
|||
required: true,
|
||||
default: '',
|
||||
},
|
||||
// eslint-disable-next-line n8n-nodes-base/node-param-default-missing
|
||||
{
|
||||
displayName: 'Trigger',
|
||||
name: 'watchField',
|
||||
|
|
|
@ -295,7 +295,7 @@ export const projectFields: INodeProperties[] = [
|
|||
name: 'contains-client',
|
||||
type: 'boolean',
|
||||
default: false,
|
||||
description: 'If provided, projects will be filtered by whether they have a client.; ',
|
||||
description: 'If provided, projects will be filtered by whether they have a client.; ',
|
||||
},
|
||||
{
|
||||
displayName: 'Client Status',
|
||||
|
|
|
@ -112,7 +112,7 @@ export class Cockpit implements INodeType {
|
|||
async execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]> {
|
||||
const items = this.getInputData();
|
||||
const returnData: IDataObject[] = [];
|
||||
const length = items.length as unknown as number;
|
||||
const length = items.length;
|
||||
const resource = this.getNodeParameter('resource', 0) as string;
|
||||
const operation = this.getNodeParameter('operation', 0) as string;
|
||||
|
||||
|
|
|
@ -122,7 +122,7 @@ export const collectionFields: INodeProperties[] = [
|
|||
alwaysOpenEditWindow: true,
|
||||
},
|
||||
placeholder: '_id,name',
|
||||
description: 'Comma separated list of fields to get.',
|
||||
description: 'Comma-separated list of fields to get.',
|
||||
},
|
||||
{
|
||||
displayName: 'Filter Query',
|
||||
|
@ -192,7 +192,6 @@ export const collectionFields: INodeProperties[] = [
|
|||
],
|
||||
},
|
||||
},
|
||||
description: 'The entry ID.',
|
||||
},
|
||||
|
||||
// Collection:entry:create
|
||||
|
|
|
@ -133,8 +133,7 @@ export const tableFields: INodeProperties[] = [
|
|||
name: 'keyColumns',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: `Optional column IDs, URLs, or names (fragile and discouraged),
|
||||
specifying columns to be used as upsert keys. If more than one separate by a comma (,)`,
|
||||
description: 'Optional column IDs, URLs, or names (fragile and discouraged), specifying columns to be used as upsert keys. If more than one separate by a comma (,)',
|
||||
},
|
||||
],
|
||||
},
|
||||
|
@ -202,11 +201,7 @@ export const tableFields: INodeProperties[] = [
|
|||
],
|
||||
},
|
||||
},
|
||||
description: `ID or name of the row. Names are discouraged because
|
||||
they're easily prone to being changed by users. If you're
|
||||
using a name, be sure to URI-encode it. If there are
|
||||
multiple rows with the same value in the identifying column,
|
||||
an arbitrary one will be selected`,
|
||||
description: 'ID or name of the row. Names are discouraged because they\'re easily prone to being changed by users. If you\'re using a name, be sure to URI-encode it. If there are multiple rows with the same value in the identifying column, an arbitrary one will be selected',
|
||||
},
|
||||
{
|
||||
displayName: 'Options',
|
||||
|
@ -569,11 +564,7 @@ export const tableFields: INodeProperties[] = [
|
|||
],
|
||||
},
|
||||
},
|
||||
description: `ID or name of the row. Names are discouraged because
|
||||
they're easily prone to being changed by users. If you're
|
||||
using a name, be sure to URI-encode it. If there are multiple
|
||||
rows with the same value in the identifying column, an arbitrary
|
||||
one will be selected`,
|
||||
description: 'ID or name of the row. Names are discouraged because they\'re easily prone to being changed by users. If you\'re using a name, be sure to URI-encode it. If there are multiple rows with the same value in the identifying column, an arbitrary one will be selected',
|
||||
},
|
||||
{
|
||||
displayName: 'Column',
|
||||
|
|
|
@ -111,7 +111,6 @@ export const coinFields: INodeProperties[] = [
|
|||
},
|
||||
default: '',
|
||||
placeholder: 'bitcoin',
|
||||
description: 'Coin ID',
|
||||
},
|
||||
{
|
||||
displayName: 'Base Currency',
|
||||
|
@ -178,7 +177,6 @@ export const coinFields: INodeProperties[] = [
|
|||
},
|
||||
default: '',
|
||||
placeholder: 'bitcoin',
|
||||
description: 'Coin ID',
|
||||
},
|
||||
{
|
||||
displayName: 'Base Currencies',
|
||||
|
@ -275,7 +273,7 @@ export const coinFields: INodeProperties[] = [
|
|||
],
|
||||
},
|
||||
},
|
||||
description: 'The contract address of tokens, comma separated.',
|
||||
description: 'The contract address of tokens, comma-separated.',
|
||||
},
|
||||
{
|
||||
displayName: 'Base Currency',
|
||||
|
@ -488,7 +486,7 @@ export const coinFields: INodeProperties[] = [
|
|||
type: 'string',
|
||||
placeholder: 'bitcoin',
|
||||
default: '',
|
||||
description: 'Filter results by comma separated list of coin ID.',
|
||||
description: 'Filter results by comma-separated list of coin ID.',
|
||||
},
|
||||
{
|
||||
displayName: 'Category',
|
||||
|
@ -669,7 +667,6 @@ export const coinFields: INodeProperties[] = [
|
|||
name: 'include_exchange_logo',
|
||||
type: 'boolean',
|
||||
default: false,
|
||||
description: 'Include exchange logo.',
|
||||
},
|
||||
{
|
||||
displayName: 'Order',
|
||||
|
|
|
@ -162,7 +162,7 @@ export class CoinGecko implements INodeType {
|
|||
async execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]> {
|
||||
const items = this.getInputData();
|
||||
const returnData: IDataObject[] = [];
|
||||
const length = (items.length as unknown) as number;
|
||||
const length = items.length;
|
||||
const qs: IDataObject = {};
|
||||
let responseData;
|
||||
const resource = this.getNodeParameter('resource', 0) as string;
|
||||
|
|
|
@ -96,7 +96,7 @@ export class Compression implements INodeType {
|
|||
|
||||
},
|
||||
placeholder: '',
|
||||
description: 'Name of the binary property which contains the data for the file(s) to be compress/decompress. Multiple can be used separated by a comma (,)',
|
||||
description: 'Name of the binary property which contains the data for the file(s) to be compress/decompress. Multiple can be used separated by a comma (,).',
|
||||
},
|
||||
{
|
||||
displayName: 'Output Format',
|
||||
|
@ -199,7 +199,7 @@ export class Compression implements INodeType {
|
|||
|
||||
async execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]> {
|
||||
const items = this.getInputData();
|
||||
const length = items.length as unknown as number;
|
||||
const length = items.length;
|
||||
const returnData: INodeExecutionData[] = [];
|
||||
const operation = this.getNodeParameter('operation', 0) as string;
|
||||
|
||||
|
|
|
@ -159,7 +159,7 @@ export const fields: INodeProperties[] = [
|
|||
type: 'string',
|
||||
placeholder: 'fields.title',
|
||||
default: '',
|
||||
description: 'The select operator allows you to choose what fields to return from an entity. You can choose multiple values by combining comma separated operators.',
|
||||
description: 'The select operator allows you to choose what fields to return from an entity. You can choose multiple values by combining comma-separated operators.',
|
||||
},
|
||||
{
|
||||
displayName: 'Include',
|
||||
|
|
|
@ -149,7 +149,7 @@ export const fields: INodeProperties[] = [
|
|||
type: 'string',
|
||||
placeholder: 'fields.title',
|
||||
default: '',
|
||||
description: 'The select operator allows you to choose what fields to return from an entity. You can choose multiple values by combining comma separated operators.',
|
||||
description: 'The select operator allows you to choose what fields to return from an entity. You can choose multiple values by combining comma-separated operators.',
|
||||
},
|
||||
{
|
||||
displayName: 'Include',
|
||||
|
|
|
@ -57,7 +57,6 @@ export const formFields: INodeProperties[] = [
|
|||
},
|
||||
},
|
||||
default: '',
|
||||
description: 'Form ID.',
|
||||
},
|
||||
{
|
||||
displayName: 'Email',
|
||||
|
|
|
@ -57,7 +57,6 @@ export const sequenceFields: INodeProperties[] = [
|
|||
},
|
||||
},
|
||||
default: '',
|
||||
description: 'Sequence ID.',
|
||||
},
|
||||
{
|
||||
displayName: 'Email',
|
||||
|
|
|
@ -195,7 +195,7 @@ export class Cortex implements INodeType {
|
|||
async execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]> {
|
||||
const items = this.getInputData();
|
||||
const returnData: IDataObject[] = [];
|
||||
const length = (items.length as unknown) as number;
|
||||
const length = items.length;
|
||||
const qs: IDataObject = {};
|
||||
let responseData;
|
||||
const resource = this.getNodeParameter('resource', 0) as string;
|
||||
|
|
|
@ -146,7 +146,7 @@ export const responderFields: INodeProperties[] = [
|
|||
value: 3,
|
||||
},
|
||||
],
|
||||
description: 'Severity of the case. Default=Medium',
|
||||
description: 'Severity of the case. Default=Medium.',
|
||||
},
|
||||
{
|
||||
displayName: 'Start Date',
|
||||
|
@ -192,7 +192,7 @@ export const responderFields: INodeProperties[] = [
|
|||
value: TLP.red,
|
||||
},
|
||||
],
|
||||
description: 'Traffict Light Protocol (TLP). Default=Amber',
|
||||
description: 'Traffict Light Protocol (TLP). Default=Amber.',
|
||||
},
|
||||
{
|
||||
displayName: 'Tags',
|
||||
|
@ -277,7 +277,7 @@ export const responderFields: INodeProperties[] = [
|
|||
value: 3,
|
||||
},
|
||||
],
|
||||
description: 'Severity of the case. Default=Medium',
|
||||
description: 'Severity of the case. Default=Medium.',
|
||||
},
|
||||
{
|
||||
displayName: 'Date',
|
||||
|
@ -315,7 +315,7 @@ export const responderFields: INodeProperties[] = [
|
|||
value: TLP.red,
|
||||
},
|
||||
],
|
||||
description: 'Traffict Light Protocol (TLP). Default=Amber',
|
||||
description: 'Traffict Light Protocol (TLP). Default=Amber.',
|
||||
},
|
||||
{
|
||||
displayName: 'Status',
|
||||
|
@ -340,7 +340,7 @@ export const responderFields: INodeProperties[] = [
|
|||
value: 'Imported',
|
||||
},
|
||||
],
|
||||
description: 'Status of the alert. Default=New',
|
||||
description: 'Status of the alert. Default=New.',
|
||||
},
|
||||
{
|
||||
displayName: 'Type',
|
||||
|
@ -448,7 +448,6 @@ export const responderFields: INodeProperties[] = [
|
|||
value: 'user-agent',
|
||||
},
|
||||
],
|
||||
description: '',
|
||||
},
|
||||
{
|
||||
displayName: 'Data',
|
||||
|
@ -462,7 +461,6 @@ export const responderFields: INodeProperties[] = [
|
|||
},
|
||||
},
|
||||
default: '',
|
||||
description: '',
|
||||
},
|
||||
{
|
||||
displayName: 'Binary Property',
|
||||
|
@ -476,21 +474,18 @@ export const responderFields: INodeProperties[] = [
|
|||
},
|
||||
},
|
||||
default: 'data',
|
||||
description: '',
|
||||
},
|
||||
{
|
||||
displayName: 'Message',
|
||||
name: 'message',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: '',
|
||||
},
|
||||
{
|
||||
displayName: 'Tags',
|
||||
name: 'tags',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: '',
|
||||
},
|
||||
],
|
||||
},
|
||||
|
@ -668,7 +663,7 @@ export const responderFields: INodeProperties[] = [
|
|||
value: TLP.red,
|
||||
},
|
||||
],
|
||||
description: 'Traffict Light Protocol (TLP). Default=Amber',
|
||||
description: 'Traffict Light Protocol (TLP). Default=Amber.',
|
||||
},
|
||||
{
|
||||
displayName: 'IOC',
|
||||
|
|
|
@ -124,8 +124,7 @@ export class CrateDb implements INodeType {
|
|||
},
|
||||
default: '',
|
||||
placeholder: 'id,name,description',
|
||||
description:
|
||||
'Comma separated list of the properties which should used as columns for the new rows.',
|
||||
description: 'Comma-separated list of the properties which should used as columns for the new rows.',
|
||||
},
|
||||
|
||||
// ----------------------------------
|
||||
|
@ -168,8 +167,7 @@ export class CrateDb implements INodeType {
|
|||
},
|
||||
default: 'id',
|
||||
required: true,
|
||||
description:
|
||||
'Comma separated list of the properties which decides which rows in the database should be updated. Normally that would be "id".',
|
||||
description: `Comma-separated list of the properties which decides which rows in the database should be updated. Normally that would be "id".`,
|
||||
},
|
||||
{
|
||||
displayName: 'Columns',
|
||||
|
@ -182,8 +180,7 @@ export class CrateDb implements INodeType {
|
|||
},
|
||||
default: '',
|
||||
placeholder: 'name,description',
|
||||
description:
|
||||
'Comma separated list of the properties which should used as columns for rows to update.',
|
||||
description: `Comma-separated list of the properties which should used as columns for rows to update.`,
|
||||
},
|
||||
|
||||
// ----------------------------------
|
||||
|
@ -199,7 +196,7 @@ export class CrateDb implements INodeType {
|
|||
},
|
||||
},
|
||||
default: '*',
|
||||
description: 'Comma separated list of the fields that the operation will return',
|
||||
description: 'Comma-separated list of the fields that the operation will return',
|
||||
},
|
||||
// ----------------------------------
|
||||
// additional fields
|
||||
|
@ -243,7 +240,7 @@ export class CrateDb implements INodeType {
|
|||
},
|
||||
default: '',
|
||||
placeholder: 'quantity,price',
|
||||
description: 'Comma separated list of properties which should be used as query parameters.',
|
||||
description: 'Comma-separated list of properties which should be used as query parameters.',
|
||||
},
|
||||
],
|
||||
},
|
||||
|
|
|
@ -31,6 +31,7 @@ export class Cron implements INodeType {
|
|||
name: 'Cron',
|
||||
color: '#00FF00',
|
||||
},
|
||||
// eslint-disable-next-line n8n-nodes-base/node-class-description-inputs-wrong-regular-node
|
||||
inputs: [],
|
||||
outputs: ['main'],
|
||||
properties: [
|
||||
|
@ -202,7 +203,7 @@ export class Cron implements INodeType {
|
|||
},
|
||||
},
|
||||
default: '* * * * * *',
|
||||
description: 'Use custom cron expression. Values and ranges as follows:<ul><li>Seconds: 0-59</li><li>Minutes: 0 - 59</li><li>Hours: 0 - 23</li><li>Day of Month: 1 - 31</li><li>Months: 0 - 11 (Jan - Dec)</li><li>Day of Week: 0 - 6 (Sun - Sat)</li></ul>',
|
||||
description: 'Use custom cron expression. Values and ranges as follows:<ul><li>Seconds: 0-59</li><li>Minutes: 0 - 59</li><li>Hours: 0 - 23</li><li>Day of Month: 1 - 31</li><li>Months: 0 - 11 (Jan - Dec)</li><li>Day of Week: 0 - 6 (Sun - Sat)</li></ul>.',
|
||||
},
|
||||
{
|
||||
displayName: 'Value',
|
||||
|
|
|
@ -441,7 +441,7 @@ export class Crypto implements INodeType {
|
|||
const items = this.getInputData();
|
||||
|
||||
const returnData: INodeExecutionData[] = [];
|
||||
const length = items.length as unknown as number;
|
||||
const length = items.length;
|
||||
const action = this.getNodeParameter('action', 0) as string;
|
||||
|
||||
let item: INodeExecutionData;
|
||||
|
|
|
@ -114,7 +114,6 @@ export const campaignFields: INodeProperties[] = [
|
|||
name: 'jsonParameters',
|
||||
type: 'boolean',
|
||||
default: false,
|
||||
description: '',
|
||||
displayOptions: {
|
||||
show: {
|
||||
resource: [
|
||||
|
|
|
@ -79,7 +79,6 @@ export const customerFields: INodeProperties[] = [
|
|||
name: 'jsonParameters',
|
||||
type: 'boolean',
|
||||
default: false,
|
||||
description: '',
|
||||
displayOptions: {
|
||||
show: {
|
||||
resource: [
|
||||
|
@ -139,7 +138,6 @@ export const customerFields: INodeProperties[] = [
|
|||
name: 'customProperties',
|
||||
type: 'fixedCollection',
|
||||
default: {},
|
||||
description: 'Custom Properties',
|
||||
typeOptions: {
|
||||
multipleValues: true,
|
||||
},
|
||||
|
|
|
@ -74,7 +74,6 @@ export const eventFields: INodeProperties[] = [
|
|||
name: 'jsonParameters',
|
||||
type: 'boolean',
|
||||
default: false,
|
||||
description: '',
|
||||
displayOptions: {
|
||||
show: {
|
||||
resource: [
|
||||
|
@ -201,7 +200,6 @@ export const eventFields: INodeProperties[] = [
|
|||
name: 'jsonParameters',
|
||||
type: 'boolean',
|
||||
default: false,
|
||||
description: '',
|
||||
displayOptions: {
|
||||
show: {
|
||||
resource: [
|
||||
|
|
|
@ -386,7 +386,7 @@ export class DateTime implements INodeType {
|
|||
|
||||
async execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]> {
|
||||
const items = this.getInputData();
|
||||
const length = items.length as unknown as number;
|
||||
const length = items.length;
|
||||
const returnData: INodeExecutionData[] = [];
|
||||
|
||||
const workflowTimezone = this.getTimezone();
|
||||
|
|
|
@ -131,7 +131,7 @@ export class Demio implements INodeType {
|
|||
async execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]> {
|
||||
const items = this.getInputData();
|
||||
const returnData: IDataObject[] = [];
|
||||
const length = items.length as unknown as number;
|
||||
const length = items.length;
|
||||
const qs: IDataObject = {};
|
||||
let responseData;
|
||||
const resource = this.getNodeParameter('resource', 0) as string;
|
||||
|
|
|
@ -131,7 +131,6 @@ export const eventFields: INodeProperties[] = [
|
|||
type: 'string',
|
||||
default: '',
|
||||
required: true,
|
||||
description: 'Event ID',
|
||||
displayOptions: {
|
||||
show: {
|
||||
resource: [
|
||||
|
@ -198,7 +197,6 @@ export const eventFields: INodeProperties[] = [
|
|||
},
|
||||
},
|
||||
default: '',
|
||||
description: 'Event ID',
|
||||
},
|
||||
{
|
||||
displayName: 'First Name',
|
||||
|
|
|
@ -47,7 +47,6 @@ export const reportFields: INodeProperties[] = [
|
|||
},
|
||||
},
|
||||
default: '',
|
||||
description: 'Event ID',
|
||||
},
|
||||
{
|
||||
displayName: 'Session ID',
|
||||
|
|
|
@ -149,7 +149,7 @@ export class Discourse implements INodeType {
|
|||
async execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]> {
|
||||
const items = this.getInputData();
|
||||
const returnData: IDataObject[] = [];
|
||||
const length = (items.length as unknown) as number;
|
||||
const length = items.length;
|
||||
const qs: IDataObject = {};
|
||||
let responseData;
|
||||
const resource = this.getNodeParameter('resource', 0) as string;
|
||||
|
|
|
@ -52,7 +52,7 @@ export const userGroupFields: INodeProperties[] = [
|
|||
},
|
||||
},
|
||||
default: '',
|
||||
description: 'Usernames to add to group. Multiples can be defined separated by comma',
|
||||
description: 'Usernames to add to group. Multiples can be defined separated by comma.',
|
||||
},
|
||||
{
|
||||
displayName: 'Group ID',
|
||||
|
|
|
@ -95,7 +95,7 @@ export class Drift implements INodeType {
|
|||
async execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]> {
|
||||
const items = this.getInputData();
|
||||
const returnData: IDataObject[] = [];
|
||||
const length = items.length as unknown as number;
|
||||
const length = items.length;
|
||||
let responseData;
|
||||
const qs: IDataObject = {};
|
||||
const resource = this.getNodeParameter('resource', 0) as string;
|
||||
|
|
|
@ -617,7 +617,7 @@ export class Dropbox implements INodeType {
|
|||
name: 'file_extensions',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: 'Multiple file extensions can be set separated by comma. Example: jpg,pdf',
|
||||
description: 'Multiple file extensions can be set separated by comma. Example: jpg,pdf.',
|
||||
},
|
||||
{
|
||||
displayName: 'Folder',
|
||||
|
|
|
@ -121,6 +121,7 @@ export class Dropcontact implements INodeType {
|
|||
],
|
||||
},
|
||||
},
|
||||
// eslint-disable-next-line n8n-nodes-base/node-param-default-wrong-for-simplify
|
||||
default: false,
|
||||
description: 'When off, waits for the contact data before completing. Waiting time can be adjusted with Extend Wait Time option. When on, returns a request_id that can be used later in the Fetch Request operation.',
|
||||
},
|
||||
|
@ -235,14 +236,14 @@ export class Dropcontact implements INodeType {
|
|||
},
|
||||
},
|
||||
default: 45,
|
||||
description: 'When not simplifying the response, data will be fetched in two steps. This parameter controls how long to wait (in seconds) before trying the second step',
|
||||
description: 'When not simplifying the response, data will be fetched in two steps. This parameter controls how long to wait (in seconds) before trying the second step.',
|
||||
},
|
||||
{
|
||||
displayName: 'French Company Enrich',
|
||||
name: 'siren',
|
||||
type: 'boolean',
|
||||
default: false,
|
||||
description: `Whether you want the <a href="https://en.wikipedia.org/wiki/SIREN_code" target="_blank">SIREN number</a>, NAF code, TVA number, company address and informations about the company leader. Only applies to french companies`,
|
||||
description: 'Whether you want the <a href="https://en.wikipedia.org/wiki/SIREN_code" target="_blank">SIREN number</a>, NAF code, TVA number, company address and informations about the company leader. Only applies to french companies.',
|
||||
},
|
||||
{
|
||||
displayName: 'Language',
|
||||
|
|
|
@ -135,7 +135,7 @@ export const documentFields: INodeProperties[] = [
|
|||
'docType',
|
||||
],
|
||||
},
|
||||
default: '',
|
||||
default: [],
|
||||
description: 'Comma-separated list of fields to return.',
|
||||
placeholder: 'name,country',
|
||||
},
|
||||
|
|
|
@ -1089,7 +1089,7 @@ export class EditImage implements INodeType {
|
|||
const items = this.getInputData();
|
||||
|
||||
const returnData: INodeExecutionData[] = [];
|
||||
const length = items.length as unknown as number;
|
||||
const length = items.length;
|
||||
let item: INodeExecutionData;
|
||||
|
||||
for (let itemIndex = 0; itemIndex < length; itemIndex++) {
|
||||
|
|
|
@ -588,7 +588,7 @@ export class Egoi implements INodeType {
|
|||
let responseData;
|
||||
const returnData: IDataObject[] = [];
|
||||
const items = this.getInputData();
|
||||
const length = items.length as unknown as number;
|
||||
const length = items.length;
|
||||
const operation = this.getNodeParameter('operation', 0) as string;
|
||||
const resource = this.getNodeParameter('resource', 0) as string;
|
||||
for (let i = 0; i < length; i++) {
|
||||
|
|
|
@ -179,7 +179,7 @@ export const documentFields: INodeProperties[] = [
|
|||
{
|
||||
displayName: 'Stored Fields',
|
||||
name: 'stored_fields',
|
||||
description: 'If true, retrieve the document fields stored in the index rather than the document <code>_source</code>. Defaults to false',
|
||||
description: 'If true, retrieve the document fields stored in the index rather than the document <code>_source</code>. Defaults to false.',
|
||||
type: 'boolean',
|
||||
default: false,
|
||||
},
|
||||
|
@ -284,21 +284,21 @@ export const documentFields: INodeProperties[] = [
|
|||
{
|
||||
displayName: 'Allow No Indices',
|
||||
name: 'allow_no_indices',
|
||||
description: 'If false, return an error if any of the following targets only missing/closed indices: wildcard expression, index alias, or <code>_all</code> value. Defaults to true',
|
||||
description: 'If false, return an error if any of the following targets only missing/closed indices: wildcard expression, index alias, or <code>_all</code> value. Defaults to true.',
|
||||
type: 'boolean',
|
||||
default: true,
|
||||
},
|
||||
{
|
||||
displayName: 'Allow Partial Search Results',
|
||||
name: 'allow_partial_search_results',
|
||||
description: '<p>If true, return partial results if there are shard request timeouts or shard failures.</p><p>If false, returns an error with no partial results. Defaults to true.</p>',
|
||||
description: '<p>If true, return partial results if there are shard request timeouts or shard failures.</p><p>If false, returns an error with no partial results. Defaults to true.</p>.',
|
||||
type: 'boolean',
|
||||
default: true,
|
||||
},
|
||||
{
|
||||
displayName: 'Batched Reduce Size',
|
||||
name: 'batched_reduce_size',
|
||||
description: 'Number of shard results that should be reduced at once on the coordinating node. Defaults to 512',
|
||||
description: 'Number of shard results that should be reduced at once on the coordinating node. Defaults to 512.',
|
||||
type: 'number',
|
||||
typeOptions: {
|
||||
minValue: 2,
|
||||
|
@ -308,7 +308,7 @@ export const documentFields: INodeProperties[] = [
|
|||
{
|
||||
displayName: 'CCS Minimize Roundtrips',
|
||||
name: 'ccs_minimize_roundtrips',
|
||||
description: 'If true, network round-trips between the coordinating node and the remote clusters are minimized when executing cross-cluster search (CCS) requests. Defaults to true',
|
||||
description: 'If true, network round-trips between the coordinating node and the remote clusters are minimized when executing cross-cluster search (CCS) requests. Defaults to true.',
|
||||
type: 'boolean',
|
||||
default: true,
|
||||
},
|
||||
|
@ -351,35 +351,35 @@ export const documentFields: INodeProperties[] = [
|
|||
{
|
||||
displayName: 'Explain',
|
||||
name: 'explain',
|
||||
description: 'If true, return detailed information about score computation as part of a hit. Defaults to false',
|
||||
description: 'If true, return detailed information about score computation as part of a hit. Defaults to false.',
|
||||
type: 'boolean',
|
||||
default: false,
|
||||
},
|
||||
{
|
||||
displayName: 'Ignore Throttled',
|
||||
name: 'ignore_throttled',
|
||||
description: 'If true, concrete, expanded or aliased indices are ignored when frozen. Defaults to true',
|
||||
description: 'If true, concrete, expanded or aliased indices are ignored when frozen. Defaults to true.',
|
||||
type: 'boolean',
|
||||
default: true,
|
||||
},
|
||||
{
|
||||
displayName: 'Ignore Unavailable',
|
||||
name: 'ignore_unavailable',
|
||||
description: 'If true, missing or closed indices are not included in the response. Defaults to false',
|
||||
description: 'If true, missing or closed indices are not included in the response. Defaults to false.',
|
||||
type: 'boolean',
|
||||
default: false,
|
||||
},
|
||||
{
|
||||
displayName: 'Max Concurrent Shard Requests',
|
||||
name: 'max_concurrent_shard_requests',
|
||||
description: 'Define the number of shard requests per node this search executes concurrently. Defaults to 5',
|
||||
description: 'Define the number of shard requests per node this search executes concurrently. Defaults to 5.',
|
||||
type: 'number',
|
||||
default: 5,
|
||||
},
|
||||
{
|
||||
displayName: 'Pre-Filter Shard Size',
|
||||
name: 'pre_filter_shard_size',
|
||||
description: 'Define a threshold that enforces a pre-filter roundtrip to prefilter search shards based on query rewriting. Only used if the number of shards the search request expands to exceeds the threshold',
|
||||
description: 'Define a threshold that enforces a pre-filter roundtrip to prefilter search shards based on query rewriting. Only used if the number of shards the search request expands to exceeds the threshold.',
|
||||
type: 'number',
|
||||
typeOptions: {
|
||||
minValue: 1,
|
||||
|
@ -400,7 +400,7 @@ export const documentFields: INodeProperties[] = [
|
|||
{
|
||||
displayName: 'Request Cache',
|
||||
name: 'request_cache',
|
||||
description: 'If true, the caching of search results is enabled for requests where size is 0. See <a href="https://www.elastic.co/guide/en/elasticsearch/reference/current/shard-request-cache.html">Elasticsearch shard request cache settings</a>',
|
||||
description: 'If true, the caching of search results is enabled for requests where size is 0. See <a href="https://www.elastic.co/guide/en/elasticsearch/reference/current/shard-request-cache.html">Elasticsearch shard request cache settings</a>.',
|
||||
type: 'boolean',
|
||||
default: false,
|
||||
},
|
||||
|
@ -414,7 +414,7 @@ export const documentFields: INodeProperties[] = [
|
|||
{
|
||||
displayName: 'Search Type',
|
||||
name: 'search_type',
|
||||
description: 'How distributed term frequencies are calculated for relevance scoring. Defaults to Query then Fetch',
|
||||
description: 'How distributed term frequencies are calculated for relevance scoring. Defaults to Query then Fetch.',
|
||||
type: 'options',
|
||||
options: [
|
||||
{
|
||||
|
@ -431,7 +431,7 @@ export const documentFields: INodeProperties[] = [
|
|||
{
|
||||
displayName: 'Sequence Number and Primary Term',
|
||||
name: 'seq_no_primary_term',
|
||||
description: 'If true, return the sequence number and primary term of the last modification of each hit. See <a href="https://www.elastic.co/guide/en/elasticsearch/reference/current/optimistic-concurrency-control.html">Optimistic concurrency control</a>',
|
||||
description: 'If true, return the sequence number and primary term of the last modification of each hit. See <a href="https://www.elastic.co/guide/en/elasticsearch/reference/current/optimistic-concurrency-control.html">Optimistic concurrency control</a>.',
|
||||
type: 'boolean',
|
||||
default: false,
|
||||
},
|
||||
|
@ -452,7 +452,7 @@ export const documentFields: INodeProperties[] = [
|
|||
{
|
||||
displayName: 'Stored Fields',
|
||||
name: 'stored_fields',
|
||||
description: 'If true, retrieve the document fields stored in the index rather than the document <code>_source</code>. Defaults to false',
|
||||
description: 'If true, retrieve the document fields stored in the index rather than the document <code>_source</code>. Defaults to false.',
|
||||
type: 'boolean',
|
||||
default: false,
|
||||
},
|
||||
|
@ -473,21 +473,21 @@ export const documentFields: INodeProperties[] = [
|
|||
{
|
||||
displayName: 'Track Scores',
|
||||
name: 'track_scores',
|
||||
description: 'If true, calculate and return document scores, even if the scores are not used for sorting. Defaults to false',
|
||||
description: 'If true, calculate and return document scores, even if the scores are not used for sorting. Defaults to false.',
|
||||
type: 'boolean',
|
||||
default: false,
|
||||
},
|
||||
{
|
||||
displayName: 'Track Total Hits',
|
||||
name: 'track_total_hits',
|
||||
description: 'Number of hits matching the query to count accurately. Defaults to 10000',
|
||||
description: 'Number of hits matching the query to count accurately. Defaults to 10000.',
|
||||
type: 'number',
|
||||
default: 10000,
|
||||
},
|
||||
{
|
||||
displayName: 'Version',
|
||||
name: 'version',
|
||||
description: 'If true, return document version as part of a hit. Defaults to false',
|
||||
description: 'If true, return document version as part of a hit. Defaults to false.',
|
||||
type: 'boolean',
|
||||
default: false,
|
||||
},
|
||||
|
@ -563,7 +563,7 @@ export const documentFields: INodeProperties[] = [
|
|||
},
|
||||
default: '',
|
||||
required: false,
|
||||
description: 'List of input properties to avoid sending, separated by commas. Leave empty to send all properties',
|
||||
description: 'List of input properties to avoid sending, separated by commas. Leave empty to send all properties.',
|
||||
placeholder: 'Enter properties...',
|
||||
},
|
||||
{
|
||||
|
@ -738,7 +738,7 @@ export const documentFields: INodeProperties[] = [
|
|||
},
|
||||
default: '',
|
||||
required: false,
|
||||
description: 'List of input properties to avoid sending, separated by commas. Leave empty to send all properties',
|
||||
description: 'List of input properties to avoid sending, separated by commas. Leave empty to send all properties.',
|
||||
placeholder: 'Enter properties...',
|
||||
},
|
||||
{
|
||||
|
|
|
@ -92,7 +92,7 @@ export const indexFields: INodeProperties[] = [
|
|||
{
|
||||
displayName: 'Include Type Name',
|
||||
name: 'include_type_name',
|
||||
description: 'If true, a mapping type is expected in the body of mappings. Defaults to false',
|
||||
description: 'If true, a mapping type is expected in the body of mappings. Defaults to false.',
|
||||
type: 'boolean',
|
||||
default: false,
|
||||
},
|
||||
|
@ -205,7 +205,7 @@ export const indexFields: INodeProperties[] = [
|
|||
{
|
||||
displayName: 'Allow No Indices',
|
||||
name: 'allow_no_indices',
|
||||
description: 'If false, return an error if any of the following targets only missing/closed indices: wildcard expression, index alias, or <code>_all</code> value. Defaults to true',
|
||||
description: 'If false, return an error if any of the following targets only missing/closed indices: wildcard expression, index alias, or <code>_all</code> value. Defaults to true.',
|
||||
type: 'boolean',
|
||||
default: true,
|
||||
},
|
||||
|
@ -241,28 +241,28 @@ export const indexFields: INodeProperties[] = [
|
|||
{
|
||||
displayName: 'Flat Settings',
|
||||
name: 'flat_settings',
|
||||
description: 'If true, return settings in flat format. Defaults to false',
|
||||
description: 'If true, return settings in flat format. Defaults to false.',
|
||||
type: 'boolean',
|
||||
default: false,
|
||||
},
|
||||
{
|
||||
displayName: 'Ignore Unavailable',
|
||||
name: 'ignore_unavailable',
|
||||
description: 'If false, requests that target a missing index return an error. Defaults to false',
|
||||
description: 'If false, requests that target a missing index return an error. Defaults to false.',
|
||||
type: 'boolean',
|
||||
default: false,
|
||||
},
|
||||
{
|
||||
displayName: 'Include Defaults',
|
||||
name: 'include_defaults',
|
||||
description: 'If true, return all default settings in the response. Defaults to false',
|
||||
description: 'If true, return all default settings in the response. Defaults to false.',
|
||||
type: 'boolean',
|
||||
default: false,
|
||||
},
|
||||
{
|
||||
displayName: 'Local',
|
||||
name: 'local',
|
||||
description: 'If true, retrieve information from the local node only. Defaults to false',
|
||||
description: 'If true, retrieve information from the local node only. Defaults to false.',
|
||||
type: 'boolean',
|
||||
default: false,
|
||||
},
|
||||
|
|
|
@ -153,7 +153,7 @@ export class EmailReadImap implements INodeType {
|
|||
name: 'customEmailConfig',
|
||||
type: 'string',
|
||||
default: '["UNSEEN"]',
|
||||
description: 'Custom email fetching rules. See <a href="https://github.com/mscdex/node-imap">node-imap</a>\'s search function for more details',
|
||||
description: 'Custom email fetching rules. See <a href="https://github.com/mscdex/node-imap">node-imap</a>\'s search function for more details.',
|
||||
},
|
||||
{
|
||||
displayName: 'Ignore SSL Issues',
|
||||
|
|
|
@ -100,7 +100,7 @@ export class EmailSend implements INodeType {
|
|||
name: 'attachments',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: 'Name of the binary properties that contain data to add to email as attachment. Multiple ones can be comma separated.',
|
||||
description: 'Name of the binary properties that contain data to add to email as attachment. Multiple ones can be comma-separated.',
|
||||
},
|
||||
{
|
||||
displayName: 'Options',
|
||||
|
@ -126,7 +126,7 @@ export class EmailSend implements INodeType {
|
|||
const items = this.getInputData();
|
||||
|
||||
const returnData: INodeExecutionData[] = [];
|
||||
const length = items.length as unknown as number;
|
||||
const length = items.length;
|
||||
let item: INodeExecutionData;
|
||||
|
||||
for (let itemIndex = 0; itemIndex < length; itemIndex++) {
|
||||
|
|
|
@ -181,7 +181,7 @@ export class EventbriteTrigger implements INodeType {
|
|||
name: 'resolveData',
|
||||
type: 'boolean',
|
||||
default: true,
|
||||
description: 'By default does the webhook-data only contain the URL to receive the object data manually. If this option gets activated, it will resolve the data automatically',
|
||||
description: 'By default does the webhook-data only contain the URL to receive the object data manually. If this option gets activated, it will resolve the data automatically.',
|
||||
},
|
||||
],
|
||||
};
|
||||
|
|
|
@ -166,7 +166,7 @@ export class FacebookGraphApi implements INodeType {
|
|||
name: 'allowUnauthorizedCerts',
|
||||
type: 'boolean',
|
||||
default: false,
|
||||
description: 'Still download the response even if SSL certificate validation is not possible. (Not recommended)',
|
||||
description: 'Still download the response even if SSL certificate validation is not possible. (Not recommended).',
|
||||
},
|
||||
{
|
||||
displayName: 'Send Binary Data',
|
||||
|
|
|
@ -57,7 +57,7 @@ export class FigmaTrigger implements INodeType {
|
|||
type: 'string',
|
||||
required: true,
|
||||
default: '',
|
||||
description: 'Trigger will monitor this Figma Team for changes. Team ID can be found in the URL of a Figma Team page when viewed in a web browser: figma.com/files/team/{TEAM-ID}/',
|
||||
description: 'Trigger will monitor this Figma Team for changes. Team ID can be found in the URL of a Figma Team page when viewed in a web browser: figma.com/files/team/{TEAM-ID}/.',
|
||||
},
|
||||
{
|
||||
displayName: 'Trigger On',
|
||||
|
@ -72,12 +72,12 @@ export class FigmaTrigger implements INodeType {
|
|||
{
|
||||
name: 'File Deleted',
|
||||
value: 'fileDelete',
|
||||
description: 'Triggers whenever a file has been deleted. Does not trigger on all files within a folder, if the folder is deleted',
|
||||
description: 'Triggers whenever a file has been deleted. Does not trigger on all files within a folder, if the folder is deleted.',
|
||||
},
|
||||
{
|
||||
name: 'File Updated',
|
||||
value: 'fileUpdate',
|
||||
description: 'Triggers whenever a file saves or is deleted. This occurs whenever a file is closed or within 30 seconds after changes have been made',
|
||||
description: 'Triggers whenever a file saves or is deleted. This occurs whenever a file is closed or within 30 seconds after changes have been made.',
|
||||
},
|
||||
{
|
||||
name: 'File Version Updated',
|
||||
|
|
|
@ -50,7 +50,7 @@ export class Flow implements INodeType {
|
|||
{
|
||||
name: 'Task',
|
||||
value: 'task',
|
||||
description: `Tasks are units of work that can be private or assigned to a list. Through this endpoint, you can manipulate your tasks in Flow, including creating new ones`,
|
||||
description: 'Tasks are units of work that can be private or assigned to a list. Through this endpoint, you can manipulate your tasks in Flow, including creating new ones.',
|
||||
},
|
||||
],
|
||||
default: 'task',
|
||||
|
@ -66,7 +66,7 @@ export class Flow implements INodeType {
|
|||
|
||||
const items = this.getInputData();
|
||||
const returnData: IDataObject[] = [];
|
||||
const length = items.length as unknown as number;
|
||||
const length = items.length;
|
||||
let responseData;
|
||||
const qs: IDataObject = {};
|
||||
const resource = this.getNodeParameter('resource', 0) as string;
|
||||
|
|
|
@ -265,7 +265,6 @@ export const taskFields: INodeProperties[] = [
|
|||
],
|
||||
},
|
||||
},
|
||||
description: '',
|
||||
},
|
||||
{
|
||||
displayName: 'Update Fields',
|
||||
|
@ -435,7 +434,6 @@ export const taskFields: INodeProperties[] = [
|
|||
],
|
||||
},
|
||||
},
|
||||
description: '',
|
||||
},
|
||||
{
|
||||
displayName: 'Filters',
|
||||
|
|
|
@ -53,7 +53,7 @@ export class FormIoTrigger implements INodeType {
|
|||
},
|
||||
required: true,
|
||||
default: '',
|
||||
description: `Choose from the list or specify an ID. You can also specify the ID using an <a href="https://docs.n8n.io/nodes/expressions.html#expressions" target="_blank" >expression</a>`,
|
||||
description: 'Choose from the list or specify an ID. You can also specify the ID using an <a href="https://docs.n8n.io/nodes/expressions.html#expressions" target="_blank" >expression</a>',
|
||||
},
|
||||
{
|
||||
displayName: 'Form Name/ID',
|
||||
|
@ -67,7 +67,7 @@ export class FormIoTrigger implements INodeType {
|
|||
},
|
||||
required: true,
|
||||
default: '',
|
||||
description: `Choose from the list or specify an ID. You can also specify the ID using an <a href="https://docs.n8n.io/nodes/expressions.html#expressions" target="_blank" >expression</a>`,
|
||||
description: 'Choose from the list or specify an ID. You can also specify the ID using an <a href="https://docs.n8n.io/nodes/expressions.html#expressions" target="_blank" >expression</a>',
|
||||
},
|
||||
{
|
||||
displayName: 'Trigger Events',
|
||||
|
@ -84,7 +84,7 @@ export class FormIoTrigger implements INodeType {
|
|||
},
|
||||
],
|
||||
required: true,
|
||||
default: '',
|
||||
default: [],
|
||||
},
|
||||
{
|
||||
displayName: 'Simplify Response',
|
||||
|
|
|
@ -80,7 +80,6 @@ export class FormstackTrigger implements INodeType {
|
|||
},
|
||||
],
|
||||
default: 'accessToken',
|
||||
description: '',
|
||||
},
|
||||
{
|
||||
displayName: 'Form Name/ID',
|
||||
|
|
|
@ -207,7 +207,6 @@ export class Freshdesk implements INodeType {
|
|||
},
|
||||
],
|
||||
default: 'requesterId',
|
||||
description: 'Requester Identification',
|
||||
},
|
||||
{
|
||||
displayName: 'Value',
|
||||
|
@ -261,7 +260,6 @@ export class Freshdesk implements INodeType {
|
|||
},
|
||||
],
|
||||
default: 'pending',
|
||||
description: 'Status',
|
||||
},
|
||||
{
|
||||
displayName: 'Priority',
|
||||
|
@ -297,7 +295,6 @@ export class Freshdesk implements INodeType {
|
|||
},
|
||||
],
|
||||
default: 'low',
|
||||
description: 'Priority',
|
||||
},
|
||||
{
|
||||
displayName: 'Source',
|
||||
|
@ -407,7 +404,7 @@ export class Freshdesk implements INodeType {
|
|||
typeOptions: {
|
||||
loadOptionsMethod: 'getCompanies',
|
||||
},
|
||||
description: `Company ID of the requester. This attribute can only be set if the Multiple Companies feature is enabled (Estate plan and above)`,
|
||||
description: 'Company ID of the requester. This attribute can only be set if the Multiple Companies feature is enabled (Estate plan and above).',
|
||||
},
|
||||
{
|
||||
displayName: 'Description',
|
||||
|
@ -432,8 +429,7 @@ export class Freshdesk implements INodeType {
|
|||
name: 'emailConfigId',
|
||||
type: 'number',
|
||||
default: '',
|
||||
description: `ID of email config which is used for this ticket. (i.e., support@yourcompany.com/sales@yourcompany.com)
|
||||
If product_id is given and email_config_id is not given, product's primary email_config_id will be set`,
|
||||
description: 'ID of email config which is used for this ticket. (i.e., support@yourcompany.com/sales@yourcompany.com) If product_id is given and email_config_id is not given, product\'s primary email_config_id will be set',
|
||||
},
|
||||
{
|
||||
displayName: 'FR Due By',
|
||||
|
@ -450,7 +446,7 @@ export class Freshdesk implements INodeType {
|
|||
typeOptions: {
|
||||
loadOptionsMethod: 'getGroups',
|
||||
},
|
||||
description: `ID of the group to which the ticket has been assigned. The default value is the ID of the group that is associated with the given email_config_id`,
|
||||
description: 'ID of the group to which the ticket has been assigned. The default value is the ID of the group that is associated with the given email_config_id.',
|
||||
},
|
||||
{
|
||||
displayName: 'Name',
|
||||
|
@ -468,8 +464,7 @@ export class Freshdesk implements INodeType {
|
|||
typeOptions: {
|
||||
loadOptionsMethod: 'getProducts',
|
||||
},
|
||||
description: `ID of the product to which the ticket is associated.
|
||||
It will be ignored if the email_config_id attribute is set in the request.`,
|
||||
description: 'ID of the product to which the ticket is associated. It will be ignored if the email_config_id attribute is set in the request.',
|
||||
},
|
||||
{
|
||||
displayName: 'Subject',
|
||||
|
@ -607,7 +602,6 @@ export class Freshdesk implements INodeType {
|
|||
},
|
||||
},
|
||||
default: '',
|
||||
description: 'Ticket ID',
|
||||
},
|
||||
{
|
||||
displayName: 'Update Fields',
|
||||
|
@ -651,7 +645,7 @@ export class Freshdesk implements INodeType {
|
|||
typeOptions: {
|
||||
loadOptionsMethod: 'getCompanies',
|
||||
},
|
||||
description: `Company ID of the requester. This attribute can only be set if the Multiple Companies feature is enabled (Estate plan and above)`,
|
||||
description: 'Company ID of the requester. This attribute can only be set if the Multiple Companies feature is enabled (Estate plan and above).',
|
||||
},
|
||||
{
|
||||
displayName: 'Due By',
|
||||
|
@ -665,8 +659,7 @@ export class Freshdesk implements INodeType {
|
|||
name: 'emailConfigId',
|
||||
type: 'number',
|
||||
default: '',
|
||||
description: `ID of email config which is used for this ticket. (i.e., support@yourcompany.com/sales@yourcompany.com)
|
||||
If product_id is given and email_config_id is not given, product's primary email_config_id will be set`,
|
||||
description: 'ID of email config which is used for this ticket. (i.e., support@yourcompany.com/sales@yourcompany.com) If product_id is given and email_config_id is not given, product\'s primary email_config_id will be set',
|
||||
},
|
||||
{
|
||||
displayName: 'FR Due By',
|
||||
|
@ -683,7 +676,7 @@ export class Freshdesk implements INodeType {
|
|||
typeOptions: {
|
||||
loadOptionsMethod: 'getGroups',
|
||||
},
|
||||
description: `ID of the group to which the ticket has been assigned. The default value is the ID of the group that is associated with the given email_config_id`,
|
||||
description: 'ID of the group to which the ticket has been assigned. The default value is the ID of the group that is associated with the given email_config_id.',
|
||||
},
|
||||
{
|
||||
displayName: 'Name',
|
||||
|
@ -701,8 +694,7 @@ export class Freshdesk implements INodeType {
|
|||
typeOptions: {
|
||||
loadOptionsMethod: 'getProducts',
|
||||
},
|
||||
description: `ID of the product to which the ticket is associated.
|
||||
It will be ignored if the email_config_id attribute is set in the request.`,
|
||||
description: 'ID of the product to which the ticket is associated. It will be ignored if the email_config_id attribute is set in the request.',
|
||||
},
|
||||
{
|
||||
displayName: 'Priority',
|
||||
|
@ -728,7 +720,6 @@ export class Freshdesk implements INodeType {
|
|||
},
|
||||
],
|
||||
default: 'low',
|
||||
description: 'Priority',
|
||||
},
|
||||
{
|
||||
displayName: 'Requester Identification',
|
||||
|
@ -767,7 +758,6 @@ export class Freshdesk implements INodeType {
|
|||
},
|
||||
],
|
||||
default: 'requesterId',
|
||||
description: 'Requester Identification',
|
||||
},
|
||||
{
|
||||
displayName: 'Requester Value',
|
||||
|
@ -800,7 +790,6 @@ export class Freshdesk implements INodeType {
|
|||
},
|
||||
],
|
||||
default: 'pending',
|
||||
description: 'Status',
|
||||
},
|
||||
{
|
||||
displayName: 'Source',
|
||||
|
@ -895,7 +884,6 @@ export class Freshdesk implements INodeType {
|
|||
},
|
||||
},
|
||||
default: '',
|
||||
description: 'Ticket ID',
|
||||
},
|
||||
{
|
||||
displayName: 'Return All',
|
||||
|
@ -1059,7 +1047,6 @@ export class Freshdesk implements INodeType {
|
|||
},
|
||||
},
|
||||
default: '',
|
||||
description: 'Ticket ID',
|
||||
},
|
||||
// CONTACTS
|
||||
...contactOperations,
|
||||
|
|
|
@ -374,7 +374,7 @@ export const appointmentFields: INodeProperties[] = [
|
|||
displayName: 'Filters',
|
||||
name: 'filters',
|
||||
type: 'collection',
|
||||
default: '',
|
||||
default: {},
|
||||
placeholder: 'Add Filter',
|
||||
displayOptions: {
|
||||
show: {
|
||||
|
|
|
@ -294,7 +294,7 @@ export const taskFields: INodeProperties[] = [
|
|||
displayName: 'Filters',
|
||||
name: 'filters',
|
||||
type: 'collection',
|
||||
default: false,
|
||||
default: {},
|
||||
placeholder: 'Add Filter',
|
||||
displayOptions: {
|
||||
show: {
|
||||
|
|
|
@ -238,7 +238,6 @@ export class Ftp implements INodeType {
|
|||
name: 'oldPath',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: 'The old path',
|
||||
required: true,
|
||||
},
|
||||
{
|
||||
|
@ -253,7 +252,6 @@ export class Ftp implements INodeType {
|
|||
name: 'newPath',
|
||||
type: 'string',
|
||||
default: '',
|
||||
description: 'The new path',
|
||||
required: true,
|
||||
},
|
||||
{
|
||||
|
|
|
@ -56,7 +56,7 @@ return item;`,
|
|||
const items = this.getInputData();
|
||||
|
||||
const returnData: INodeExecutionData[] = [];
|
||||
const length = items.length as unknown as number;
|
||||
const length = items.length;
|
||||
let item: INodeExecutionData;
|
||||
|
||||
const cleanupData = (inputData: IDataObject): IDataObject => {
|
||||
|
|
|
@ -65,7 +65,6 @@ export const contactFields: INodeProperties[] = [
|
|||
},
|
||||
},
|
||||
default: '',
|
||||
description: '',
|
||||
},
|
||||
{
|
||||
displayName: 'Campaign ID',
|
||||
|
@ -108,7 +107,7 @@ export const contactFields: INodeProperties[] = [
|
|||
displayName: 'Custom Fields',
|
||||
name: 'customFieldsUi',
|
||||
type: 'fixedCollection',
|
||||
default: '',
|
||||
default: {},
|
||||
placeholder: 'Add Custom Field',
|
||||
typeOptions: {
|
||||
multipleValues: true,
|
||||
|
@ -182,7 +181,7 @@ export const contactFields: INodeProperties[] = [
|
|||
typeOptions: {
|
||||
loadOptionsMethod: 'getTags',
|
||||
},
|
||||
default: '',
|
||||
default: [],
|
||||
},
|
||||
],
|
||||
},
|
||||
|
@ -557,7 +556,7 @@ export const contactFields: INodeProperties[] = [
|
|||
displayName: 'Custom Fields',
|
||||
name: 'customFieldsUi',
|
||||
type: 'fixedCollection',
|
||||
default: '',
|
||||
default: {},
|
||||
placeholder: 'Add Custom Field',
|
||||
typeOptions: {
|
||||
multipleValues: true,
|
||||
|
@ -637,7 +636,7 @@ export const contactFields: INodeProperties[] = [
|
|||
typeOptions: {
|
||||
loadOptionsMethod: 'getTags',
|
||||
},
|
||||
default: '',
|
||||
default: [],
|
||||
},
|
||||
],
|
||||
},
|
||||
|
|
|
@ -162,7 +162,7 @@ export class GetResponse implements INodeType {
|
|||
async execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]> {
|
||||
const items = this.getInputData();
|
||||
const returnData: IDataObject[] = [];
|
||||
const length = (items.length as unknown) as number;
|
||||
const length = items.length;
|
||||
const qs: IDataObject = {};
|
||||
let responseData;
|
||||
const resource = this.getNodeParameter('resource', 0) as string;
|
||||
|
|
|
@ -148,7 +148,7 @@ export class Ghost implements INodeType {
|
|||
async execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]> {
|
||||
const items = this.getInputData();
|
||||
const returnData: IDataObject[] = [];
|
||||
const length = (items.length as unknown) as number;
|
||||
const length = items.length;
|
||||
const timezone = this.getTimezone();
|
||||
const qs: IDataObject = {};
|
||||
let responseData;
|
||||
|
|
|
@ -181,7 +181,7 @@ export const postFields: INodeProperties[] = [
|
|||
},
|
||||
|
||||
default: '',
|
||||
description: 'Mobiledoc is the raw JSON format that Ghost uses to store post contents. <a href="https://ghost.org/docs/concepts/posts/#document-storage">Info</a>',
|
||||
description: 'Mobiledoc is the raw JSON format that Ghost uses to store post contents. <a href="https://ghost.org/docs/concepts/posts/#document-storage">Info</a>.',
|
||||
},
|
||||
{
|
||||
displayName: 'Additional Fields',
|
||||
|
@ -820,7 +820,7 @@ export const postFields: INodeProperties[] = [
|
|||
},
|
||||
},
|
||||
default: '',
|
||||
description: 'Mobiledoc is the raw JSON format that Ghost uses to store post contents. <a href="https://ghost.org/docs/concepts/posts/#document-storage">Info.</a>',
|
||||
description: 'Mobiledoc is the raw JSON format that Ghost uses to store post contents. <a href="https://ghost.org/docs/concepts/posts/#document-storage">Info.</a>.',
|
||||
},
|
||||
{
|
||||
displayName: 'Featured',
|
||||
|
|
|
@ -16,7 +16,7 @@ export const addFields: INodeProperties[] = [
|
|||
},
|
||||
default: '',
|
||||
placeholder: 'README.md',
|
||||
description: 'Comma separated list of paths (absolute or relative to Repository Path) of files or folders to add.',
|
||||
description: 'Comma-separated list of paths (absolute or relative to Repository Path) of files or folders to add.',
|
||||
required: true,
|
||||
},
|
||||
];
|
||||
|
|
|
@ -37,7 +37,7 @@ export const commitFields: INodeProperties[] = [
|
|||
type: 'string',
|
||||
default: '',
|
||||
placeholder: '/data/file1.json',
|
||||
description: `Comma separated list of paths (absolute or relative to Repository Path) of files or folders to commit. If not set will all "added" files and folders be committed.`,
|
||||
description: 'Comma-separated list of paths (absolute or relative to Repository Path) of files or folders to commit. If not set will all "added" files and folders be committed.',
|
||||
},
|
||||
],
|
||||
},
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue