n8n/packages/nodes-base/nodes/Tapfiliate/ProgramAffiliateDescription.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

365 lines
8.1 KiB
TypeScript

import {
INodeProperties,
} from 'n8n-workflow';
export const programAffiliateOperations: INodeProperties[] = [
{
displayName: 'Operation',
name: 'operation',
type: 'options',
noDataExpression: true,
displayOptions: {
show: {
resource: [
'programAffiliate',
],
},
},
options: [
{
name: 'Add',
value: 'add',
description: 'Add affiliate to program',
},
{
name: 'Approve',
value: 'approve',
description: 'Approve an affiliate for a program',
},
{
name: 'Disapprove',
value: 'disapprove',
description: 'Disapprove an affiliate',
},
{
name: 'Get',
value: 'get',
description: 'Get an affiliate in a program',
},
{
name: 'Get All',
value: 'getAll',
description: 'Get all affiliates in program',
},
],
default: 'add',
},
];
export const programAffiliateFields: INodeProperties[] = [
/* -------------------------------------------------------------------------- */
/* programAffiliate:add */
/* -------------------------------------------------------------------------- */
{
displayName: 'Program Name or ID',
name: 'programId',
type: 'options',
required: true,
typeOptions: {
loadOptionsMethod: 'getPrograms',
},
default: '',
displayOptions: {
show: {
operation: [
'add',
],
resource: [
'programAffiliate',
],
},
},
description: 'The ID of the Program to add the affiliate to. This ID can be found as part of the URL when viewing the program on the platform. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/nodes/expressions.html#expressions">expression</a>.',
},
{
displayName: 'Affiliate ID',
name: 'affiliateId',
type: 'string',
default: '',
required: true,
displayOptions: {
show: {
resource: [
'programAffiliate',
],
operation: [
'add',
],
},
},
description: 'The ID of the affiliate',
},
{
displayName: 'Additional Fields',
name: 'additionalFields',
type: 'collection',
placeholder: 'Add Field',
default: {},
displayOptions: {
show: {
resource: [
'programAffiliate',
],
operation: [
'add',
],
},
},
options: [
{
displayName: 'Approved',
name: 'approved',
type: 'boolean',
default: true,
// eslint-disable-next-line n8n-nodes-base/node-param-description-boolean-without-whether
description: 'An optional approval status',
},
{
displayName: 'Coupon',
name: 'coupon',
type: 'string',
default: '',
description: 'An optional coupon for this affiliate',
},
],
},
/* -------------------------------------------------------------------------- */
/* programAffiliate:approve */
/* -------------------------------------------------------------------------- */
{
displayName: 'Program Name or ID',
name: 'programId',
type: 'options',
typeOptions: {
loadOptionsMethod: 'getPrograms',
},
default: '',
displayOptions: {
show: {
operation: [
'approve',
],
resource: [
'programAffiliate',
],
},
},
description: 'The ID of the Program to add the affiliate to. This ID can be found as part of the URL when viewing the program on the platform. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/nodes/expressions.html#expressions">expression</a>.',
},
{
displayName: 'Affiliate ID',
name: 'affiliateId',
type: 'string',
default: '',
displayOptions: {
show: {
resource: [
'programAffiliate',
],
operation: [
'approve',
],
},
},
description: 'The ID of the affiliate',
},
/* -------------------------------------------------------------------------- */
/* programAffiliate:disapprove */
/* -------------------------------------------------------------------------- */
{
displayName: 'Program Name or ID',
name: 'programId',
type: 'options',
typeOptions: {
loadOptionsMethod: 'getPrograms',
},
default: '',
displayOptions: {
show: {
operation: [
'disapprove',
],
resource: [
'programAffiliate',
],
},
},
description: 'The ID of the Program to add the affiliate to. This ID can be found as part of the URL when viewing the program on the platform. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/nodes/expressions.html#expressions">expression</a>.',
},
{
displayName: 'Affiliate ID',
name: 'affiliateId',
type: 'string',
default: '',
displayOptions: {
show: {
resource: [
'programAffiliate',
],
operation: [
'disapprove',
],
},
},
description: 'The ID of the affiliate',
},
/* -------------------------------------------------------------------------- */
/* affiliate:get */
/* -------------------------------------------------------------------------- */
{
displayName: 'Program Name or ID',
name: 'programId',
type: 'options',
required: true,
typeOptions: {
loadOptionsMethod: 'getPrograms',
},
default: '',
displayOptions: {
show: {
operation: [
'get',
],
resource: [
'programAffiliate',
],
},
},
description: 'The ID of the Program to add the affiliate to. This ID can be found as part of the URL when viewing the program on the platform. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/nodes/expressions.html#expressions">expression</a>.',
},
{
displayName: 'Affiliate ID',
name: 'affiliateId',
type: 'string',
required: true,
default: '',
displayOptions: {
show: {
resource: [
'programAffiliate',
],
operation: [
'get',
],
},
},
description: 'The ID of the affiliate',
},
/* -------------------------------------------------------------------------- */
/* programAffiliate:getAll */
/* -------------------------------------------------------------------------- */
{
displayName: 'Program Name or ID',
name: 'programId',
type: 'options',
typeOptions: {
loadOptionsMethod: 'getPrograms',
},
required: true,
default: '',
displayOptions: {
show: {
operation: [
'getAll',
],
resource: [
'programAffiliate',
],
},
},
description: 'The ID of the Program to add the affiliate to. This ID can be found as part of the URL when viewing the program on the platform. 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: [
'programAffiliate',
],
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: [
'programAffiliate',
],
operation: [
'getAll',
],
returnAll: [
false,
],
},
},
typeOptions: {
minValue: 1,
maxValue: 1000,
},
default: 100,
description: 'Max number of results to return',
},
{
displayName: 'Filters',
name: 'filters',
type: 'collection',
placeholder: 'Add Field',
default: {},
displayOptions: {
show: {
resource: [
'programAffiliate',
],
operation: [
'getAll',
],
},
},
options: [
{
displayName: 'Affiliate Group ID',
name: 'affiliate_group_id',
type: 'string',
default: '',
description: 'Retrieves affiliates for a certain affiliate group',
},
{
displayName: 'Email',
name: 'email',
type: 'string',
placeholder: 'name@email.com',
default: '',
description: 'An email address',
},
{
displayName: 'Parent ID',
name: 'parentId',
type: 'string',
default: '',
description: 'Retrieves children for a certain parent affiliate',
},
{
displayName: 'Source ID',
name: 'source_id',
type: 'string',
default: '',
},
],
},
];