n8n/packages/nodes-base/nodes/Coda/ViewDescription.ts
Iván Ovejero 88dea330b9
refactor: Apply more eslint-plugin-n8n-nodes-base rules (#3534)
*  Update `lintfix` script

*  Run baseline `lintfix`

* 🔥 Remove unneeded exceptions (#3538)

* 🔥 Remove exceptions for `node-param-default-wrong-for-simplify`

* 🔥 Remove exceptions for `node-param-placeholder-miscased-id`

*  Update version

* 👕 Apply `node-param-placeholder-missing` (#3542)

* 👕 Apply `filesystem-wrong-cred-filename` (#3543)

* 👕 Apply `node-param-description-missing-from-dynamic-options` (#3545)

Co-authored-by: Iván Ovejero <ivov.src@gmail.com>

* 👕 Apply `node-class-description-empty-string` (#3546)

* 👕 Apply `node-class-description-icon-not-svg` (#3548)

* 👕 Apply `filesystem-wrong-node-filename` (#3549)

Co-authored-by: Iván Ovejero <ivov.src@gmail.com>

* 👕 Expand lintings to credentials (#3550)

* 👕 Apply `node-param-multi-options-type-unsorted-items` (#3552)

*  fix

*  Minor fixes

Co-authored-by: Michael Kret <michael.k@radency.com>

* 👕 Apply `node-param-description-wrong-for-dynamic-multi-options` (#3541)

*  Add new lint rule, node-param-description-wrong-for-dynamic-multi-options

*  Fix with updated linting rules

*  Minor fixes

Co-authored-by: Iván Ovejero <ivov.src@gmail.com>

* 👕 Apply `node-param-description-boolean-without-whether` (#3553)

*  fix

* Update packages/nodes-base/nodes/Clockify/ProjectDescription.ts

Co-authored-by: Iván Ovejero <ivov.src@gmail.com>

* 👕 Apply node-param-display-name-wrong-for-dynamic-multi-options (#3537)

* 👕 Add exceptions

* 👕 Add exception

* ✏️ Alphabetize rules

*  Restore `lintfix` command

Co-authored-by: agobrech <45268029+agobrech@users.noreply.github.com>
Co-authored-by: Omar Ajoue <krynble@gmail.com>
Co-authored-by: Michael Kret <michael.k@radency.com>
Co-authored-by: brianinoa <54530642+brianinoa@users.noreply.github.com>
Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com>
2022-06-20 07:54:01 -07:00

710 lines
15 KiB
TypeScript

import { INodeProperties } from 'n8n-workflow';
export const viewOperations: INodeProperties[] = [
{
displayName: 'Operation',
name: 'operation',
type: 'options',
noDataExpression: true,
displayOptions: {
show: {
resource: [
'view',
],
},
},
options: [
{
name: 'Delete Row',
value: 'deleteViewRow',
description: 'Delete view row',
},
{
name: 'Get',
value: 'get',
description: 'Get a view',
},
{
name: 'Get All',
value: 'getAll',
description: 'Get all views',
},
{
name: 'Get Columns',
value: 'getAllViewColumns',
description: 'Get all views columns',
},
{
name: 'Get Rows',
value: 'getAllViewRows',
description: 'Get all views rows',
},
{
name: 'Push Button',
value: 'pushViewButton',
description: 'Push view button',
},
{
name: 'Update Row',
value: 'updateViewRow',
},
],
default: 'get',
},
];
export const viewFields: INodeProperties[] = [
/* -------------------------------------------------------------------------- */
/* view:get */
/* -------------------------------------------------------------------------- */
{
displayName: 'Doc Name or ID',
name: 'docId',
type: 'options',
required: true,
typeOptions: {
loadOptionsMethod: 'getDocs',
},
default: '',
displayOptions: {
show: {
resource: [
'view',
],
operation: [
'get',
],
},
},
description: 'ID of the doc. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/nodes/expressions.html#expressions">expression</a>.',
},
{
displayName: 'View ID',
name: 'viewId',
type: 'string',
required: true,
default: '',
displayOptions: {
show: {
resource: [
'view',
],
operation: [
'get',
],
},
},
description: 'The view to get the row from',
},
/* -------------------------------------------------------------------------- */
/* view:getAll */
/* -------------------------------------------------------------------------- */
{
displayName: 'Doc Name or ID',
name: 'docId',
type: 'options',
required: true,
typeOptions: {
loadOptionsMethod: 'getDocs',
},
default: '',
displayOptions: {
show: {
resource: [
'view',
],
operation: [
'getAll',
],
},
},
description: 'ID of the doc. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/nodes/expressions.html#expressions">expression</a>.',
},
{
displayName: 'Return All',
name: 'returnAll',
type: 'boolean',
displayOptions: {
show: {
resource: [
'view',
],
operation: [
'getAll',
],
},
},
default: false,
description: 'Whether to return all results or only up to a given limit',
},
{
displayName: 'Limit',
name: 'limit',
type: 'number',
displayOptions: {
show: {
resource: [
'view',
],
operation: [
'getAll',
],
returnAll: [
false,
],
},
},
typeOptions: {
minValue: 1,
maxValue: 100,
},
default: 50,
description: 'Max number of results to return',
},
/* -------------------------------------------------------------------------- */
/* view:getAllViewRows */
/* -------------------------------------------------------------------------- */
{
displayName: 'Doc Name or ID',
name: 'docId',
type: 'options',
required: true,
typeOptions: {
loadOptionsMethod: 'getDocs',
},
default: '',
displayOptions: {
show: {
resource: [
'view',
],
operation: [
'getAllViewRows',
],
},
},
description: 'ID of the doc. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/nodes/expressions.html#expressions">expression</a>.',
},
{
displayName: 'View Name or ID',
name: 'viewId',
type: 'options',
typeOptions: {
loadOptionsDependsOn: [
'docId',
],
loadOptionsMethod: 'getViews',
},
required: true,
default: '',
displayOptions: {
show: {
resource: [
'view',
],
operation: [
'getAllViewRows',
],
},
},
description: 'The table to get the rows from. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/nodes/expressions.html#expressions">expression</a>.',
},
{
displayName: 'Return All',
name: 'returnAll',
type: 'boolean',
displayOptions: {
show: {
resource: [
'view',
],
operation: [
'getAllViewRows',
],
},
},
default: false,
description: 'Whether to return all results or only up to a given limit',
},
{
displayName: 'Limit',
name: 'limit',
type: 'number',
displayOptions: {
show: {
resource: [
'view',
],
operation: [
'getAllViewRows',
],
returnAll: [
false,
],
},
},
typeOptions: {
minValue: 1,
maxValue: 100,
},
default: 50,
description: 'Max number of results to return',
},
{
displayName: 'Options',
name: 'options',
type: 'collection',
placeholder: 'Add Option',
default: {},
displayOptions: {
show: {
resource: [
'view',
],
operation: [
'getAllViewRows',
],
},
},
options: [
{
displayName: 'Query',
name: 'query',
type: 'string',
typeOptions: {
alwaysOpenEditWindow: true,
},
default: '',
description: 'Query used to filter returned rows, specified as &lt;column_id_or_name&gt;:&lt;value&gt;. If you\'d like to use a column name instead of an ID, you must quote it (e.g., "My Column":123). Also note that value is a JSON value; if you\'d like to use a string, you must surround it in quotes (e.g., "groceries").',
},
{
displayName: 'Use Column Names',
name: 'useColumnNames',
type: 'boolean',
default: false,
description: 'Whether to use column names instead of column IDs in the returned output. This is generally discouraged as it is fragile. If columns are renamed, code using original names may throw errors.',
},
{
displayName: 'ValueFormat',
name: 'valueFormat',
type: 'options',
default: '',
options: [
{
name: 'Simple',
value: 'simple',
},
{
name: 'Simple With Arrays',
value: 'simpleWithArrays',
},
{
name: 'Rich',
value: 'rich',
},
],
description: 'The format that cell values are returned as',
},
{
displayName: 'RAW Data',
name: 'rawData',
type: 'boolean',
default: false,
description: 'Whether to return the data exactly in the way it got received from the API',
},
{
displayName: 'Sort By',
name: 'sortBy',
type: 'options',
default: '',
options: [
{
name: 'Created At',
value: 'createdAt',
},
{
name: 'Natural',
value: 'natural',
},
],
description: 'Specifies the sort order of the rows returned. If left unspecified, rows are returned by creation time ascending.',
},
],
},
/* -------------------------------------------------------------------------- */
/* view:getAllViewColumns */
/* -------------------------------------------------------------------------- */
{
displayName: 'Doc Name or ID',
name: 'docId',
type: 'options',
required: true,
typeOptions: {
loadOptionsMethod: 'getDocs',
},
default: '',
displayOptions: {
show: {
resource: [
'view',
],
operation: [
'getAllViewColumns',
],
},
},
description: 'ID of the doc. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/nodes/expressions.html#expressions">expression</a>.',
},
{
displayName: 'View Name or ID',
name: 'viewId',
type: 'options',
typeOptions: {
loadOptionsDependsOn: [
'docId',
],
loadOptionsMethod: 'getViews',
},
required: true,
default: '',
displayOptions: {
show: {
resource: [
'view',
],
operation: [
'getAllViewColumns',
],
},
},
description: 'The table to get the rows from. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/nodes/expressions.html#expressions">expression</a>.',
},
{
displayName: 'Return All',
name: 'returnAll',
type: 'boolean',
displayOptions: {
show: {
resource: [
'view',
],
operation: [
'getAllViewColumns',
],
},
},
default: false,
description: 'Whether to return all results or only up to a given limit',
},
{
displayName: 'Limit',
name: 'limit',
type: 'number',
displayOptions: {
show: {
resource: [
'view',
],
operation: [
'getAllViewColumns',
],
returnAll: [
false,
],
},
},
typeOptions: {
minValue: 1,
maxValue: 100,
},
default: 50,
description: 'Max number of results to return',
},
/* -------------------------------------------------------------------------- */
/* view:deleteViewRow */
/* -------------------------------------------------------------------------- */
{
displayName: 'Doc Name or ID',
name: 'docId',
type: 'options',
required: true,
typeOptions: {
loadOptionsMethod: 'getDocs',
},
default: '',
displayOptions: {
show: {
resource: [
'view',
],
operation: [
'deleteViewRow',
],
},
},
description: 'ID of the doc. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/nodes/expressions.html#expressions">expression</a>.',
},
{
displayName: 'View Name or ID',
name: 'viewId',
type: 'options',
required: true,
default: '',
typeOptions: {
loadOptionsMethod: 'getViews',
loadOptionsDependsOn: [
'docId',
],
},
displayOptions: {
show: {
resource: [
'view',
],
operation: [
'deleteViewRow',
],
},
},
description: 'The view to get the row from. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/nodes/expressions.html#expressions">expression</a>.',
},
{
displayName: 'Row Name or ID',
name: 'rowId',
type: 'options',
required: true,
default: '',
typeOptions: {
loadOptionsMethod: 'getViewRows',
loadOptionsDependsOn: [
'viewId',
],
},
displayOptions: {
show: {
resource: [
'view',
],
operation: [
'deleteViewRow',
],
},
},
description: 'The view to get the row from. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/nodes/expressions.html#expressions">expression</a>.',
},
/* -------------------------------------------------------------------------- */
/* view:pushViewButton */
/* -------------------------------------------------------------------------- */
{
displayName: 'Doc Name or ID',
name: 'docId',
type: 'options',
required: true,
typeOptions: {
loadOptionsMethod: 'getDocs',
},
default: '',
displayOptions: {
show: {
resource: [
'view',
],
operation: [
'pushViewButton',
],
},
},
description: 'ID of the doc. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/nodes/expressions.html#expressions">expression</a>.',
},
{
displayName: 'View Name or ID',
name: 'viewId',
type: 'options',
required: true,
default: '',
typeOptions: {
loadOptionsMethod: 'getViews',
loadOptionsDependsOn: [
'docId',
],
},
displayOptions: {
show: {
resource: [
'view',
],
operation: [
'pushViewButton',
],
},
},
description: 'The view to get the row from. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/nodes/expressions.html#expressions">expression</a>.',
},
{
displayName: 'Row Name or ID',
name: 'rowId',
type: 'options',
required: true,
default: '',
typeOptions: {
loadOptionsMethod: 'getViewRows',
loadOptionsDependsOn: [
'viewId',
],
},
displayOptions: {
show: {
resource: [
'view',
],
operation: [
'pushViewButton',
],
},
},
description: 'The view to get the row from. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/nodes/expressions.html#expressions">expression</a>.',
},
{
displayName: 'Column Name or ID',
name: 'columnId',
type: 'options',
description: 'Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/nodes/expressions.html#expressions">expression</a>',
required: true,
typeOptions: {
loadOptionsMethod: 'getViewColumns',
loadOptionsDependsOn: [
'docId',
'viewId',
],
},
default: '',
displayOptions: {
show: {
resource: [
'view',
],
operation: [
'pushViewButton',
],
},
},
},
/* -------------------------------------------------------------------------- */
/* view:updateViewRow */
/* -------------------------------------------------------------------------- */
{
displayName: 'Doc Name or ID',
name: 'docId',
type: 'options',
required: true,
typeOptions: {
loadOptionsMethod: 'getDocs',
},
default: '',
displayOptions: {
show: {
resource: [
'view',
],
operation: [
'updateViewRow',
],
},
},
description: 'ID of the doc. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/nodes/expressions.html#expressions">expression</a>.',
},
{
displayName: 'View Name or ID',
name: 'viewId',
type: 'options',
required: true,
default: '',
typeOptions: {
loadOptionsMethod: 'getViews',
loadOptionsDependsOn: [
'docId',
],
},
displayOptions: {
show: {
resource: [
'view',
],
operation: [
'updateViewRow',
],
},
},
description: 'The view to get the row from. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/nodes/expressions.html#expressions">expression</a>.',
},
{
displayName: 'Row Name or ID',
name: 'rowId',
type: 'options',
required: true,
default: '',
typeOptions: {
loadOptionsMethod: 'getViewRows',
loadOptionsDependsOn: [
'viewId',
],
},
displayOptions: {
show: {
resource: [
'view',
],
operation: [
'updateViewRow',
],
},
},
description: 'The view to get the row from. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/nodes/expressions.html#expressions">expression</a>.',
},
{
displayName: 'Key Name',
name: 'keyName',
type: 'string',
required: true,
default: 'columns',
displayOptions: {
show: {
resource: [
'view',
],
operation: [
'updateViewRow',
],
},
},
description: 'The view to get the row from',
},
{
displayName: 'Options',
name: 'options',
type: 'collection',
placeholder: 'Add Option',
default: {},
displayOptions: {
show: {
resource: [
'view',
],
operation: [
'updateViewRow',
],
},
},
options: [
{
displayName: 'Disable Parsing',
name: 'disableParsing',
type: 'boolean',
default: false,
description: 'Whether the API will not attempt to parse the data in any way',
},
],
},
];