n8n/packages/nodes-base/nodes/ActionNetwork/descriptions/PetitionDescription.ts
Iván Ovejero 224a26c922
Add Action Network node (#1897)
*  Create Action Network node

* 🔥 Remove comments

* 🔥 Remove status in attendance

* 🔥 Remove loaders per feedback

Loaders removed for person, event, signature and petition

* 🚚 Rename tagging to person tag

* 🔨 Convert address_lines param to string

*  Simplify responses for person resource

*  Add simplify to all operations

* ✏️ Add documentation links

*  Improvements

* ✏️ Fix positioning of doc links

* 🔨 Refactor updateFields in signature:update

*  Address minor comments

*  Improvements

*  Add continue on fail

*  Minor improvements

Co-authored-by: ricardo <ricardoespinoza105@gmail.com>
Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2021-06-27 13:07:25 +02:00

214 lines
3.6 KiB
TypeScript

import {
INodeProperties,
} from 'n8n-workflow';
import {
makeSimpleField,
petitionAdditionalFieldsOptions,
} from './SharedFields';
export const petitionOperations = [
{
displayName: 'Operation',
name: 'operation',
type: 'options',
displayOptions: {
show: {
resource: [
'petition',
],
},
},
options: [
{
name: 'Create',
value: 'create',
},
{
name: 'Get',
value: 'get',
},
{
name: 'Get All',
value: 'getAll',
},
{
name: 'Update',
value: 'update',
},
],
default: 'create',
description: 'Operation to perform',
},
] as INodeProperties[];
export const petitionFields = [
// ----------------------------------------
// petition: create
// ----------------------------------------
{
displayName: 'Origin System',
name: 'originSystem',
description: 'Source where the petition originated.',
type: 'string',
required: true,
default: '',
displayOptions: {
show: {
resource: [
'petition',
],
operation: [
'create',
],
},
},
},
{
displayName: 'Title',
name: 'title',
description: 'Title of the petition to create.',
type: 'string',
required: true,
default: '',
displayOptions: {
show: {
resource: [
'petition',
],
operation: [
'create',
],
},
},
},
makeSimpleField('petition', 'create'),
{
displayName: 'Additional Fields',
name: 'additionalFields',
type: 'collection',
placeholder: 'Add Field',
default: {},
displayOptions: {
show: {
resource: [
'petition',
],
operation: [
'create',
],
},
},
options: petitionAdditionalFieldsOptions,
},
// ----------------------------------------
// petition: get
// ----------------------------------------
{
displayName: 'Petition ID',
name: 'petitionId',
description: 'ID of the petition to retrieve.',
type: 'string',
default: '',
required: true,
displayOptions: {
show: {
resource: [
'petition',
],
operation: [
'get',
],
},
},
},
makeSimpleField('petition', 'get'),
// ----------------------------------------
// petition: getAll
// ----------------------------------------
{
displayName: 'Return All',
name: 'returnAll',
type: 'boolean',
default: false,
description: 'Return all results.',
displayOptions: {
show: {
resource: [
'petition',
],
operation: [
'getAll',
],
},
},
},
{
displayName: 'Limit',
name: 'limit',
type: 'number',
default: 50,
description: 'The number of results to return.',
typeOptions: {
minValue: 1,
},
displayOptions: {
show: {
resource: [
'petition',
],
operation: [
'getAll',
],
returnAll: [
false,
],
},
},
},
makeSimpleField('petition', 'getAll'),
// ----------------------------------------
// petition: update
// ----------------------------------------
{
displayName: 'Petition ID',
name: 'petitionId',
description: 'ID of the petition to update.',
type: 'string',
default: '',
required: true,
displayOptions: {
show: {
resource: [
'petition',
],
operation: [
'update',
],
},
},
},
makeSimpleField('petition', 'update'),
{
displayName: 'Update Fields',
name: 'updateFields',
type: 'collection',
placeholder: 'Add Field',
default: {},
displayOptions: {
show: {
resource: [
'petition',
],
operation: [
'update',
],
},
},
options: petitionAdditionalFieldsOptions,
},
] as INodeProperties[];