n8n/packages/nodes-base/nodes/Zoho/descriptions/AccountDescription.ts
Iván Ovejero 6dcdb30bf4
refactor: Apply more nodelinting rules (#3324)
* ✏️ Alphabetize lint rules

* 🔥 Remove duplicates

*  Update `lintfix` script

* 👕 Apply `node-param-operation-without-no-data-expression` (#3329)

* 👕 Apply `node-param-operation-without-no-data-expression`

* 👕 Add exceptions

* 👕 Apply `node-param-description-weak` (#3328)

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

* 👕 Apply `node-param-option-value-duplicate` (#3331)

* 👕 Apply `node-param-description-miscased-json` (#3337)

* 👕 Apply `node-param-display-name-excess-inner-whitespace` (#3335)

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

* 👕 Apply `node-param-type-options-missing-from-limit` (#3336)

* Rule workig as intended

* ✏️ Uncomment rules

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

* 👕 Apply `node-param-option-name-duplicate` (#3338)

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

* 👕 Apply `node-param-description-wrong-for-simplify` (#3334)

*  fix

*  exceptions

*  changed rule ignoring from file to line

* 👕 Apply `node-param-resource-without-no-data-expression` (#3339)

* 👕 Apply `node-param-display-name-untrimmed` (#3341)

* 👕 Apply `node-param-display-name-miscased-id` (#3340)

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

* 👕 Apply `node-param-resource-with-plural-option` (#3342)

* 👕 Apply `node-param-description-wrong-for-upsert` (#3333)

*  fix

*  replaced record with contact in description

*  fix

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

* 👕 Apply `node-param-option-description-identical-to-name` (#3343)

* 👕 Apply `node-param-option-name-containing-star` (#3347)

* 👕 Apply `node-param-display-name-wrong-for-update-fields` (#3348)

* 👕 Apply `node-param-option-name-wrong-for-get-all` (#3345)

*  fix

*  exceptions

* 👕 Apply node-param-display-name-wrong-for-simplify (#3344)

* Rule working as intended

* Uncomented other rules

* 👕 Undo and add exceptions

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

*  Alphabetize lint rules

*  Restore `lintfix` script

Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com>
Co-authored-by: agobrech <45268029+agobrech@users.noreply.github.com>
2022-05-20 23:47:24 +02:00

416 lines
7.9 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import {
INodeProperties,
} from 'n8n-workflow';
import {
billingAddress,
currencies,
makeCustomFieldsFixedCollection,
makeGetAllFields,
shippingAddress,
} from './SharedFields';
export const accountOperations: INodeProperties[] = [
{
displayName: 'Operation',
name: 'operation',
type: 'options',
noDataExpression: true,
displayOptions: {
show: {
resource: [
'account',
],
},
},
options: [
{
name: 'Create',
value: 'create',
description: 'Create an account',
},
{
name: 'Create or Update',
value: 'upsert',
description: 'Create a new record, or update the current one if it already exists (upsert)',
},
{
name: 'Delete',
value: 'delete',
description: 'Delete an account',
},
{
name: 'Get',
value: 'get',
description: 'Get an account',
},
{
name: 'Get All',
value: 'getAll',
description: 'Get all accounts',
},
{
name: 'Update',
value: 'update',
description: 'Update an account',
},
],
default: 'create',
},
];
export const accountFields: INodeProperties[] = [
// ----------------------------------------
// account: create
// ----------------------------------------
{
displayName: 'Account Name',
name: 'accountName',
type: 'string',
required: true,
default: '',
displayOptions: {
show: {
resource: [
'account',
],
operation: [
'create',
],
},
},
},
// ----------------------------------------
// account: upsert
// ----------------------------------------
{
displayName: 'Account Name',
name: 'accountName',
description: 'Name of the account. If a record with this account name exists it will be updated, otherwise a new one will be created.',
type: 'string',
required: true,
default: '',
displayOptions: {
show: {
resource: [
'account',
],
operation: [
'upsert',
],
},
},
},
// ----------------------------------------
// account: create + upsert
// ----------------------------------------
{
displayName: 'Additional Fields',
name: 'additionalFields',
type: 'collection',
placeholder: 'Add Field',
default: {},
displayOptions: {
show: {
resource: [
'account',
],
operation: [
'create',
'upsert',
],
},
},
options: [
{
displayName: 'Account Number',
name: 'Account_Number',
type: 'string',
default: '',
},
{
displayName: 'Account Site',
name: 'Account_Site',
type: 'string',
default: '',
description: 'Name of the accounts location, e.g. Headquarters or London',
},
{
displayName: 'Account Type',
name: 'Account_Type',
type: 'options',
typeOptions: {
loadOptionsMethod: 'getAccountType',
},
default: [],
},
{
displayName: 'Annual Revenue',
name: 'Annual_Revenue',
type: 'number',
default: '',
},
billingAddress,
{
displayName: 'Contact Details',
name: 'Contact_Details',
type: 'string',
default: '',
},
{
displayName: 'Currency',
name: 'Currency',
type: 'options',
default: 'USD',
description: 'Symbol of the currency in which revenue is generated',
options: currencies,
},
makeCustomFieldsFixedCollection('account'),
{
displayName: 'Description',
name: 'Description',
type: 'string',
default: '',
},
{
displayName: 'Employees',
name: 'Employees',
type: 'number',
default: '',
description: 'Number of employees in the accounts company',
},
{
displayName: 'Exchange Rate',
name: 'Exchange_Rate',
type: 'number',
default: '',
description: 'Exchange rate of the default currency to the home currency',
},
{
displayName: 'Fax',
name: 'Fax',
type: 'string',
default: '',
},
{
displayName: 'Industry',
name: 'Industry',
type: 'string',
default: '',
},
{
displayName: 'Phone',
name: 'Phone',
type: 'string',
default: '',
},
shippingAddress,
{
displayName: 'Ticker Symbol',
name: 'Ticker_Symbol',
type: 'string',
default: '',
},
{
displayName: 'Website',
name: 'Website',
type: 'string',
default: '',
},
],
},
// ----------------------------------------
// account: delete
// ----------------------------------------
{
displayName: 'Account ID',
name: 'accountId',
description: 'ID of the account to delete. Can be found at the end of the URL.',
type: 'string',
required: true,
default: '',
displayOptions: {
show: {
resource: [
'account',
],
operation: [
'delete',
],
},
},
},
// ----------------------------------------
// account: get
// ----------------------------------------
{
displayName: 'Account ID',
name: 'accountId',
description: 'ID of the account to retrieve. Can be found at the end of the URL.',
type: 'string',
required: true,
default: '',
displayOptions: {
show: {
resource: [
'account',
],
operation: [
'get',
],
},
},
},
// ----------------------------------------
// account: getAll
// ----------------------------------------
...makeGetAllFields('account'),
// ----------------------------------------
// account: update
// ----------------------------------------
{
displayName: 'Account ID',
name: 'accountId',
description: 'ID of the account to update. Can be found at the end of the URL.',
type: 'string',
required: true,
default: '',
displayOptions: {
show: {
resource: [
'account',
],
operation: [
'update',
],
},
},
},
{
displayName: 'Update Fields',
name: 'updateFields',
type: 'collection',
placeholder: 'Add Field',
default: {},
displayOptions: {
show: {
resource: [
'account',
],
operation: [
'update',
],
},
},
options: [
{
displayName: 'Account Name',
name: 'Account_Name',
type: 'string',
default: '',
},
{
displayName: 'Account Number',
name: 'Account_Number',
type: 'string',
default: '',
},
{
displayName: 'Account Site',
name: 'Account_Site',
type: 'string',
default: '',
description: 'Name of the accounts location, e.g. Headquarters or London',
},
{
displayName: 'Account Type',
name: 'Account_Type',
type: 'options',
typeOptions: {
loadOptionsMethod: 'getAccountType',
},
default: [],
},
{
displayName: 'Annual Revenue',
name: 'Annual_Revenue',
type: 'number',
default: '',
},
billingAddress,
{
displayName: 'Contact Details',
name: 'Contact_Details',
type: 'string',
default: '',
},
{
displayName: 'Currency',
name: 'Currency',
type: 'options',
default: 'USD',
description: 'Symbol of the currency in which revenue is generated',
options: currencies,
},
makeCustomFieldsFixedCollection('account'),
{
displayName: 'Description',
name: 'Description',
type: 'string',
default: '',
},
{
displayName: 'Employees',
name: 'Employees',
type: 'number',
default: '',
description: 'Number of employees in the accounts company',
},
{
displayName: 'Exchange Rate',
name: 'Exchange_Rate',
type: 'number',
default: '',
description: 'Exchange rate of the default currency to the home currency',
},
{
displayName: 'Fax',
name: 'Fax',
type: 'string',
default: '',
},
{
displayName: 'Industry',
name: 'Industry',
type: 'string',
default: '',
},
{
displayName: 'Phone',
name: 'Phone',
type: 'string',
default: '',
},
shippingAddress,
{
displayName: 'Ticker Symbol',
name: 'Ticker_Symbol',
type: 'string',
default: '',
},
{
displayName: 'Website',
name: 'Website',
type: 'string',
default: '',
},
],
},
];