mirror of
https://github.com/n8n-io/n8n.git
synced 2024-11-10 14:44:05 -08:00
208 lines
4.6 KiB
TypeScript
208 lines
4.6 KiB
TypeScript
import {
|
|
INodeProperties,
|
|
INodePropertyOptions,
|
|
} from 'n8n-workflow';
|
|
import { type } from 'os';
|
|
import { notEqual } from 'assert';
|
|
import { exists } from 'fs';
|
|
|
|
export const resource = {
|
|
name: 'Entry',
|
|
value: 'entry',
|
|
} as INodePropertyOptions;
|
|
|
|
export const operations = [
|
|
{
|
|
displayName: 'Operation',
|
|
name: 'operation',
|
|
type: 'options',
|
|
displayOptions: {
|
|
show: {
|
|
resource: [
|
|
resource.value,
|
|
],
|
|
},
|
|
},
|
|
options: [
|
|
{
|
|
name: 'Get',
|
|
value: 'get',
|
|
},
|
|
{
|
|
name: 'Get All',
|
|
value: 'getAll',
|
|
},
|
|
],
|
|
default: 'get',
|
|
description: 'The operation to perform.'
|
|
}
|
|
] as INodeProperties[];
|
|
|
|
export const fields = [
|
|
{
|
|
displayName: 'Environment ID',
|
|
name: 'environmentId',
|
|
type: 'string',
|
|
displayOptions: {
|
|
show: {
|
|
resource: [
|
|
resource.value,
|
|
],
|
|
operation: [
|
|
'get',
|
|
'getAll',
|
|
],
|
|
},
|
|
},
|
|
default: 'master',
|
|
description: 'The id for the Contentful environment (e.g. master, staging, etc.). Depending on your plan, you might not have environments. In that case use "master".'
|
|
},
|
|
{
|
|
displayName: 'Return All',
|
|
name: 'returnAll',
|
|
type: 'boolean',
|
|
displayOptions: {
|
|
show: {
|
|
operation: [
|
|
'getAll',
|
|
],
|
|
resource: [
|
|
resource.value,
|
|
],
|
|
},
|
|
},
|
|
default: false,
|
|
description: 'If all results should be returned or only up to a given limit.',
|
|
},
|
|
{
|
|
displayName: 'Limit',
|
|
name: 'limit',
|
|
type: 'number',
|
|
displayOptions: {
|
|
show: {
|
|
operation: [
|
|
'getAll',
|
|
],
|
|
resource: [
|
|
resource.value,
|
|
],
|
|
returnAll: [
|
|
false,
|
|
],
|
|
},
|
|
},
|
|
typeOptions: {
|
|
minValue: 1,
|
|
maxValue: 500,
|
|
},
|
|
default: 100,
|
|
description: 'How many results to return.',
|
|
},
|
|
{
|
|
displayName: 'Additional Fields',
|
|
name: 'additionalFields',
|
|
type: 'collection',
|
|
placeholder: 'Add Field',
|
|
default: {},
|
|
displayOptions: {
|
|
show: {
|
|
resource: [
|
|
resource.value,
|
|
],
|
|
operation: [
|
|
'getAll',
|
|
],
|
|
},
|
|
},
|
|
options: [
|
|
{
|
|
displayName: 'Content Type ID',
|
|
name: 'content_type',
|
|
type: 'string',
|
|
default: '',
|
|
description: 'To search for entries with a specific content type',
|
|
},
|
|
{
|
|
displayName: 'Equal',
|
|
name: 'equal',
|
|
type: 'string',
|
|
default: '',
|
|
placeholder: 'fields.title=n8n',
|
|
description: 'Search for all data that matches the condition: {attribute}={value}. Attribute can use dot notation.',
|
|
},
|
|
{
|
|
displayName: 'Exclude',
|
|
name: 'exclude',
|
|
type: 'string',
|
|
default: '',
|
|
placeholder: 'fields.tags[nin]=accessories,flowers',
|
|
description: 'Search for all data that matches the condition: {attribute}[nin]={value}. Attribute can use dot notation.',
|
|
},
|
|
{
|
|
displayName: 'Exist',
|
|
name: 'exist',
|
|
type: 'string',
|
|
default: '',
|
|
placeholder: 'fields.tags[exists]=true',
|
|
description: 'Search for all data that matches the condition: {attribute}[exists]={value}. Attribute can use dot notation.',
|
|
},
|
|
{
|
|
displayName: 'Fields',
|
|
name: 'select',
|
|
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.',
|
|
},
|
|
{
|
|
displayName: 'Include',
|
|
name: 'include',
|
|
type: 'string',
|
|
default: '',
|
|
placeholder: 'fields.tags[in]=accessories,flowers',
|
|
description: 'Search for all data that matches the condition: {attribute}[in]={value}. Attribute can use dot notation.',
|
|
},
|
|
{
|
|
displayName: 'Not Equal',
|
|
name: 'notEqual',
|
|
type: 'string',
|
|
default: '',
|
|
placeholder: 'fields.title[ne]=n8n',
|
|
description: 'Search for all data that matches the condition: {attribute}[ne]={value}. Attribute can use dot notation.',
|
|
},
|
|
{
|
|
displayName: 'Order',
|
|
name: 'order',
|
|
type: 'string',
|
|
default: '',
|
|
placeholder: 'sys.createdAt',
|
|
description: 'You can order items in the response by specifying the order search parameter. You can use sys properties (such as sys.createdAt) or field values (such as fields.myCustomDateField) for ordering.',
|
|
},
|
|
{
|
|
displayName: 'Query',
|
|
name: 'query',
|
|
type: 'string',
|
|
default: '',
|
|
description: ' Full-text search is case insensitive and might return more results than expected. A query will only take values with more than 1 character.',
|
|
},
|
|
],
|
|
},
|
|
{
|
|
displayName: 'Entry ID',
|
|
name: 'entryId',
|
|
type: 'string',
|
|
default: '',
|
|
required: true,
|
|
displayOptions: {
|
|
show: {
|
|
resource: [
|
|
resource.value,
|
|
],
|
|
operation: [
|
|
'get',
|
|
],
|
|
},
|
|
},
|
|
}
|
|
] as INodeProperties[];
|