2021-09-05 10:24:56 -07:00
import {
INodeProperties ,
} from 'n8n-workflow' ;
import { LANGUAGES } from '../constants' ;
2021-12-03 00:44:16 -08:00
export const requesterOperations : INodeProperties [ ] = [
2021-09-05 10:24:56 -07:00
{
displayName : 'Operation' ,
name : 'operation' ,
type : 'options' ,
displayOptions : {
show : {
resource : [
'requester' ,
] ,
} ,
} ,
options : [
{
name : 'Create' ,
value : 'create' ,
description : 'Create a requester' ,
} ,
{
name : 'Delete' ,
value : 'delete' ,
description : 'Delete a requester' ,
} ,
{
name : 'Get' ,
value : 'get' ,
description : 'Retrieve a requester' ,
} ,
{
name : 'Get All' ,
value : 'getAll' ,
description : 'Retrieve all requesters' ,
} ,
{
name : 'Update' ,
value : 'update' ,
description : 'Update a requester' ,
} ,
] ,
default : 'create' ,
} ,
2021-12-03 00:44:16 -08:00
] ;
2021-09-05 10:24:56 -07:00
2021-12-03 00:44:16 -08:00
export const requesterFields : INodeProperties [ ] = [
2021-09-05 10:24:56 -07:00
// ----------------------------------------
// requester: create
// ----------------------------------------
{
displayName : 'First Name' ,
name : 'firstName' ,
type : 'string' ,
required : true ,
default : '' ,
displayOptions : {
show : {
resource : [
'requester' ,
] ,
operation : [
'create' ,
] ,
} ,
} ,
} ,
{
displayName : 'Primary Email' ,
name : 'primaryEmail' ,
type : 'string' ,
default : '' ,
displayOptions : {
show : {
resource : [
'requester' ,
] ,
operation : [
'create' ,
] ,
} ,
} ,
} ,
{
displayName : 'Additional Fields' ,
name : 'additionalFields' ,
type : 'collection' ,
placeholder : 'Add Field' ,
default : { } ,
displayOptions : {
show : {
resource : [
'requester' ,
] ,
operation : [
'create' ,
] ,
} ,
} ,
options : [
{
displayName : 'Address' ,
name : 'address' ,
type : 'string' ,
default : '' ,
} ,
{
displayName : 'Background Information' ,
name : 'background_information' ,
type : 'string' ,
default : '' ,
} ,
{
displayName : 'Department Names/IDs' ,
name : 'department_ids' ,
type : 'multiOptions' ,
default : [ ] ,
description : 'Comma-separated IDs of the departments associated with the requester. Choose from the list or specify an ID using an <a href="https://docs.n8n.io/nodes/expressions.html#expressions">expression</a>.' ,
typeOptions : {
2021-12-03 00:44:16 -08:00
loadOptionsMethod : 'getDepartments' ,
2021-09-05 10:24:56 -07:00
} ,
} ,
{
displayName : 'Job Title' ,
name : 'job_title' ,
type : 'string' ,
default : '' ,
} ,
{
displayName : 'Language' ,
name : 'language' ,
type : 'options' ,
default : '' ,
options : LANGUAGES ,
} ,
{
displayName : 'Last Name' ,
name : 'last_name' ,
type : 'string' ,
default : '' ,
} ,
{
displayName : 'Location ID' ,
name : 'location_id' ,
description : 'Choose from the list or specify an ID. You can also specify the ID using an <a href="https://docs.n8n.io/nodes/expressions.html#expressions">expression</a>.' ,
type : 'options' ,
default : '' ,
typeOptions : {
2021-12-03 00:44:16 -08:00
loadOptionsMethod : 'getLocations' ,
2021-09-05 10:24:56 -07:00
} ,
} ,
{
displayName : 'Mobile Phone' ,
name : 'mobile_phone_number' ,
type : 'string' ,
default : '' ,
} ,
{
displayName : 'Secondary Emails' ,
name : 'secondary_emails' ,
type : 'string' ,
default : '' ,
description : 'Comma-separated secondary emails associated with the requester' ,
} ,
{
displayName : 'Time Format' ,
name : 'time_format' ,
type : 'options' ,
default : '12h' ,
options : [
{
name : '12-Hour Format' ,
value : '12h' ,
} ,
{
name : '24-Hour Format' ,
value : '24h' ,
} ,
] ,
} ,
{
displayName : 'Work Phone' ,
name : 'work_phone_number' ,
type : 'string' ,
default : '' ,
} ,
] ,
} ,
// ----------------------------------------
// requester: delete
// ----------------------------------------
{
displayName : 'Requester ID' ,
name : 'requesterId' ,
description : 'ID of the requester to delete' ,
type : 'string' ,
required : true ,
default : '' ,
displayOptions : {
show : {
resource : [
'requester' ,
] ,
operation : [
'delete' ,
] ,
} ,
} ,
} ,
// ----------------------------------------
// requester: get
// ----------------------------------------
{
displayName : 'Requester ID' ,
name : 'requesterId' ,
description : 'ID of the requester to retrieve' ,
type : 'string' ,
required : true ,
default : '' ,
displayOptions : {
show : {
resource : [
'requester' ,
] ,
operation : [
'get' ,
] ,
} ,
} ,
} ,
// ----------------------------------------
// requester: getAll
// ----------------------------------------
{
displayName : 'Return All' ,
name : 'returnAll' ,
type : 'boolean' ,
default : false ,
description : 'Whether to return all results or only up to a given limit' ,
displayOptions : {
show : {
resource : [
'requester' ,
] ,
operation : [
'getAll' ,
] ,
} ,
} ,
} ,
{
displayName : 'Limit' ,
name : 'limit' ,
type : 'number' ,
default : 50 ,
2022-05-06 14:01:25 -07:00
description : 'Max number of results to return' ,
2021-09-05 10:24:56 -07:00
typeOptions : {
minValue : 1 ,
} ,
displayOptions : {
show : {
resource : [
'requester' ,
] ,
operation : [
'getAll' ,
] ,
returnAll : [
false ,
] ,
} ,
} ,
} ,
{
displayName : 'Filters' ,
name : 'filters' ,
type : 'collection' ,
placeholder : 'Add Filter' ,
default : { } ,
displayOptions : {
show : {
resource : [
'requester' ,
] ,
operation : [
'getAll' ,
] ,
} ,
} ,
options : [
{
displayName : 'Department Name/ID' ,
name : 'department_id' ,
description : 'Choose from the list or specify an ID. You can also specify the ID using an <a href="https://docs.n8n.io/nodes/expressions.html#expressions">expression</a>.' ,
type : 'options' ,
default : '' ,
typeOptions : {
2021-12-03 00:44:16 -08:00
loadOptionsMethod : 'getDepartments' ,
2021-09-05 10:24:56 -07:00
} ,
} ,
{
displayName : 'First Name' ,
name : 'first_name' ,
type : 'string' ,
default : '' ,
} ,
{
displayName : 'Job Title' ,
name : 'job_title' ,
type : 'string' ,
default : '' ,
} ,
{
displayName : 'Language' ,
name : 'language' ,
type : 'options' ,
default : '' ,
options : LANGUAGES ,
} ,
{
displayName : 'Last Name' ,
name : 'last_name' ,
type : 'string' ,
default : '' ,
} ,
{
displayName : 'Location Name/ID' ,
name : 'location_id' ,
type : 'options' ,
description : 'Choose from the list or specify an ID. You can also specify the ID using an <a href="https://docs.n8n.io/nodes/expressions.html#expressions">expression</a>.' ,
default : '' ,
typeOptions : {
2021-12-03 00:44:16 -08:00
loadOptionsMethod : 'getLocations' ,
2021-09-05 10:24:56 -07:00
} ,
} ,
{
displayName : 'Mobile Phone Number' ,
name : 'mobile_phone_number' ,
type : 'string' ,
default : '' ,
} ,
{
displayName : 'Primary Email' ,
name : 'primary_email' ,
type : 'string' ,
default : '' ,
} ,
{
displayName : 'Work Phone Number' ,
name : 'work_phone_number' ,
type : 'string' ,
default : '' ,
} ,
] ,
} ,
// ----------------------------------------
// requester: update
// ----------------------------------------
{
displayName : 'Requester ID' ,
name : 'requesterId' ,
description : 'ID of the requester to update' ,
type : 'string' ,
required : true ,
default : '' ,
displayOptions : {
show : {
resource : [
'requester' ,
] ,
operation : [
'update' ,
] ,
} ,
} ,
} ,
{
displayName : 'Update Fields' ,
name : 'updateFields' ,
type : 'collection' ,
placeholder : 'Add Field' ,
default : { } ,
displayOptions : {
show : {
resource : [
'requester' ,
] ,
operation : [
'update' ,
] ,
} ,
} ,
options : [
{
displayName : 'Address' ,
name : 'address' ,
type : 'string' ,
default : '' ,
} ,
{
displayName : 'Background Information' ,
name : 'background_information' ,
type : 'string' ,
default : '' ,
} ,
{
displayName : 'Department Names/IDs' ,
name : 'department_ids' ,
type : 'multiOptions' ,
default : [ ] ,
description : 'Comma-separated IDs of the departments associated with the requester. Choose from the list or specify an ID using an <a href="https://docs.n8n.io/nodes/expressions.html#expressions">expression</a>.' ,
typeOptions : {
2021-12-03 00:44:16 -08:00
loadOptionsMethod : 'getDepartments' ,
2021-09-05 10:24:56 -07:00
} ,
} ,
{
displayName : 'First Name' ,
name : 'first_name' ,
type : 'string' ,
default : '' ,
} ,
{
displayName : 'Job Title' ,
name : 'job_title' ,
type : 'string' ,
default : '' ,
} ,
{
displayName : 'Language' ,
name : 'language' ,
type : 'options' ,
default : '' ,
options : LANGUAGES ,
} ,
{
displayName : 'Last Name' ,
name : 'last_name' ,
type : 'string' ,
default : '' ,
} ,
{
displayName : 'Location Name/ID' ,
name : 'location_id' ,
type : 'options' ,
default : '' ,
description : 'Choose from the list or specify an ID. You can also specify the ID using an <a href="https://docs.n8n.io/nodes/expressions.html#expressions">expression</a>.' ,
typeOptions : {
2021-12-03 00:44:16 -08:00
loadOptionsMethod : 'getLocations' ,
2021-09-05 10:24:56 -07:00
} ,
} ,
{
displayName : 'Mobile Phone' ,
name : 'mobile_phone_number' ,
type : 'string' ,
default : '' ,
} ,
{
displayName : 'Primary Email' ,
name : 'primary_email' ,
type : 'string' ,
default : '' ,
} ,
{
displayName : 'Secondary Emails' ,
name : 'secondary_emails' ,
type : 'string' ,
default : '' ,
description : 'Comma-separated secondary emails associated with the requester' ,
} ,
{
displayName : 'Time Format' ,
name : 'time_format' ,
type : 'options' ,
default : '12h' ,
options : [
{
name : '12-Hour Format' ,
value : '12h' ,
} ,
{
name : '24-Hour Format' ,
value : '24h' ,
} ,
] ,
} ,
{
displayName : 'Work Phone' ,
name : 'work_phone_number' ,
type : 'string' ,
default : '' ,
} ,
] ,
} ,
2021-12-03 00:44:16 -08:00
] ;