2020-11-11 00:44:53 -08:00
import {
INodeProperties ,
} from 'n8n-workflow' ;
export const entryOperations = [
{
displayName : 'Operation' ,
name : 'operation' ,
type : 'options' ,
displayOptions : {
show : {
resource : [
'entry' ,
] ,
} ,
} ,
options : [
{
name : 'Create' ,
value : 'create' ,
description : 'Create an entry' ,
} ,
{
name : 'Delete' ,
value : 'delete' ,
description : 'Delete an entry' ,
} ,
{
name : 'Get' ,
value : 'get' ,
description : 'Get an entry' ,
} ,
{
name : 'Get All' ,
value : 'getAll' ,
description : 'Get all entries' ,
} ,
{
name : 'Update' ,
value : 'update' ,
description : 'Update an entry' ,
} ,
] ,
default : 'get' ,
description : 'The operation to perform.' ,
} ,
] as INodeProperties [ ] ;
export const entryFields = [
/* -------------------------------------------------------------------------- */
/* entry:create */
/* -------------------------------------------------------------------------- */
{
displayName : 'Content Type' ,
name : 'contentType' ,
type : 'string' ,
default : '' ,
required : true ,
displayOptions : {
show : {
resource : [
'entry' ,
] ,
operation : [
'create' ,
] ,
} ,
} ,
2020-11-11 00:45:50 -08:00
description : 'Name of the content type.' ,
2020-11-11 00:44:53 -08:00
} ,
{
displayName : 'Columns' ,
name : 'columns' ,
type : 'string' ,
displayOptions : {
show : {
resource : [
'entry' ,
] ,
operation : [
'create' ,
] ,
} ,
} ,
default : '' ,
placeholder : 'id,name,description' ,
description : 'Comma separated list of the properties which should used as columns for the new rows.' ,
} ,
2020-11-11 00:45:50 -08:00
2020-11-11 00:44:53 -08:00
/* -------------------------------------------------------------------------- */
/* entry:delete */
/* -------------------------------------------------------------------------- */
{
displayName : 'Content Type' ,
name : 'contentType' ,
type : 'string' ,
default : '' ,
required : true ,
displayOptions : {
show : {
resource : [
'entry' ,
] ,
operation : [
'delete' ,
] ,
} ,
} ,
2020-11-11 00:45:50 -08:00
description : 'Name of the content type.' ,
2020-11-11 00:44:53 -08:00
} ,
{
displayName : 'Entry ID' ,
name : 'entryId' ,
type : 'string' ,
default : '' ,
required : true ,
displayOptions : {
show : {
resource : [
'entry' ,
] ,
operation : [
'delete' ,
] ,
} ,
} ,
2020-11-11 00:45:50 -08:00
description : 'The ID of the entry to delete.' ,
2020-11-11 00:44:53 -08:00
} ,
2020-11-11 00:45:50 -08:00
2020-11-11 00:44:53 -08:00
/* -------------------------------------------------------------------------- */
/* entry:get */
/* -------------------------------------------------------------------------- */
{
displayName : 'Content Type' ,
name : 'contentType' ,
type : 'string' ,
default : '' ,
required : true ,
displayOptions : {
show : {
resource : [
'entry' ,
] ,
operation : [
'get' ,
] ,
} ,
} ,
2020-11-11 00:45:50 -08:00
description : 'Name of the content type.' ,
2020-11-11 00:44:53 -08:00
} ,
{
displayName : 'Entry ID' ,
name : 'entryId' ,
type : 'string' ,
default : '' ,
required : true ,
displayOptions : {
show : {
resource : [
'entry' ,
] ,
operation : [
'get' ,
] ,
} ,
} ,
description : 'The ID of the entry to get.' ,
} ,
2020-11-11 00:45:50 -08:00
2020-11-11 00:44:53 -08:00
/* -------------------------------------------------------------------------- */
/* entry:getAll */
/* -------------------------------------------------------------------------- */
{
displayName : 'Content Type' ,
name : 'contentType' ,
type : 'string' ,
default : '' ,
required : true ,
displayOptions : {
show : {
resource : [
'entry' ,
] ,
operation : [
'getAll' ,
] ,
} ,
} ,
description : 'Name of the content type' ,
} ,
{
displayName : 'Return All' ,
name : 'returnAll' ,
type : 'boolean' ,
displayOptions : {
show : {
resource : [
'entry' ,
] ,
operation : [
'getAll' ,
] ,
} ,
} ,
default : false ,
description : 'Returns a list of your user contacts.' ,
} ,
{
displayName : 'Limit' ,
name : 'limit' ,
type : 'number' ,
displayOptions : {
show : {
resource : [
'entry' ,
] ,
operation : [
'getAll' ,
] ,
returnAll : [
false ,
] ,
} ,
} ,
typeOptions : {
minValue : 1 ,
maxValue : 100 ,
} ,
default : 50 ,
description : 'How many results to return.' ,
} ,
{
displayName : 'Options' ,
name : 'options' ,
type : 'collection' ,
placeholder : 'Add Field' ,
default : { } ,
displayOptions : {
show : {
resource : [
'entry' ,
] ,
operation : [
'getAll' ,
] ,
} ,
} ,
options : [
{
displayName : 'Publication State' ,
name : 'publicationState' ,
type : 'options' ,
options : [
{
name : 'Live' ,
value : 'live' ,
} ,
{
name : 'Preview' ,
value : 'preview' ,
} ,
] ,
default : '' ,
description : 'Only select entries matching the publication state provided.' ,
} ,
{
displayName : 'Sort Fields' ,
name : 'sort' ,
type : 'string' ,
typeOptions : {
multipleValues : true ,
multipleValueButtonText : 'Add Sort Field' ,
} ,
default : '' ,
placeholder : 'name:asc' ,
description : ` Name of the fields to sort the data by. By default will be sorted ascendingly.<br>
To modify that behavior , you have to add the sort direction after the name of sort field preceded by a colon .
For example : name : asc ` ,
} ,
{
displayName : 'Where (JSON)' ,
name : 'where' ,
type : 'string' ,
typeOptions : {
alwaysOpenEditWindow : true ,
} ,
default : '' ,
description : 'JSON query to filter the data.<a href="https://strapi.io/documentation/v3.x/content-api/parameters.html#filters" target="_blank"> Info</a>' ,
} ,
] ,
} ,
2020-11-11 00:45:50 -08:00
2020-11-11 00:44:53 -08:00
/* -------------------------------------------------------------------------- */
/* entry:update */
/* -------------------------------------------------------------------------- */
{
displayName : 'Content Type' ,
name : 'contentType' ,
type : 'string' ,
default : '' ,
required : true ,
displayOptions : {
show : {
resource : [
'entry' ,
] ,
operation : [
'update' ,
] ,
} ,
} ,
2020-11-11 00:45:50 -08:00
description : 'Name of the content type.' ,
2020-11-11 00:44:53 -08:00
} ,
{
displayName : 'Update Key' ,
name : 'updateKey' ,
type : 'string' ,
displayOptions : {
show : {
resource : [
'entry' ,
] ,
operation : [
'update' ,
] ,
} ,
} ,
default : 'id' ,
required : true ,
description : 'Name of the property which decides which rows in the database should be updated. Normally that would be "id".' ,
} ,
{
displayName : 'Columns' ,
name : 'columns' ,
type : 'string' ,
displayOptions : {
show : {
resource : [
'entry' ,
] ,
operation : [
'update' ,
] ,
} ,
} ,
default : '' ,
placeholder : 'id,name,description' ,
description : 'Comma separated list of the properties which should used as columns for the new rows.' ,
} ,
] as INodeProperties [ ] ;