n8n-nodes-everest-tms
Version:
Everest TMS n8n integration
786 lines • 25 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.missionFields = exports.missionOperations = void 0;
exports.missionOperations = [
{
displayName: 'Operation',
name: 'operation',
type: 'options',
noDataExpression: true,
displayOptions: {
show: {
resource: ['mission'],
},
},
options: [
{
name: 'Create',
value: 'create',
description: 'Create a new mission',
action: 'Create a mission',
},
{
name: 'Delete',
value: 'delete',
description: 'Delete a mission',
action: 'Delete a mission',
},
{
name: 'Get',
value: 'get',
description: 'Get a mission by reference',
action: 'Get a mission',
},
{
name: 'Get Many',
value: 'getMany',
description: 'Get multiple missions',
action: 'Get many missions',
},
{
name: 'Get Many by References',
value: 'getManyByRefs',
description: 'Get multiple missions by their references',
action: 'Get many missions by refs',
},
{
name: 'Update',
value: 'update',
description: 'Update a mission',
action: 'Update a mission',
},
{
name: 'Estimate',
value: 'estimate',
description: 'Get pricing estimate for a mission',
action: 'Estimate mission cost',
},
{
name: 'Cancel',
value: 'cancel',
description: 'Cancel a mission',
action: 'Cancel a mission',
},
{
name: 'Accept',
value: 'accept',
description: 'Accept a mission (for agents)',
action: 'Accept a mission',
},
{
name: 'Set Status',
value: 'setStatus',
description: 'Update mission status',
action: 'Set mission status',
},
{
name: 'Mark as Seen',
value: 'markSeen',
description: 'Mark mission as seen by agent',
action: 'Mark mission as seen',
},
],
default: 'get',
},
];
exports.missionFields = [
// Get operation
{
displayName: 'Mission Reference',
name: 'ref',
type: 'string',
required: false, // Changed from true to false
displayOptions: {
show: {
resource: ['mission'],
operation: ['get', 'delete', 'cancel', 'markSeen'],
},
},
default: '',
description: 'The reference of the mission to retrieve',
},
// Get Many by References operation
{
displayName: 'Mission References',
name: 'refs',
type: 'string',
required: true,
displayOptions: {
show: {
resource: ['mission'],
operation: ['getManyByRefs'],
},
},
default: '',
description: 'Mission references (comma-separated)',
placeholder: 'XXXXXXXX,XXXXXXXX,XXXXXXXX',
},
// Update operation
{
displayName: 'Mission Reference',
name: 'ref',
type: 'string',
required: false, // Changed from true to false
displayOptions: {
show: {
resource: ['mission'],
operation: ['update'],
},
},
default: '',
description: 'The reference of the mission to update',
},
// Create and Update operations - Required fields
{
displayName: 'Service',
name: 'service_id',
type: 'options',
typeOptions: {
loadOptionsMethod: 'getServices',
},
required: true,
displayOptions: {
show: {
resource: ['mission'],
operation: ['create', 'estimate'],
},
},
default: '',
description: 'Service for this mission',
},
{
displayName: 'Start Address',
name: 'address_start',
type: 'string',
required: false, // Changed from true to false - now optional for all operations
displayOptions: {
show: {
resource: ['mission'],
operation: ['create', 'update', 'estimate'],
},
},
default: '',
description: 'Starting address for the mission',
placeholder: '42 fake street, 75001 Paris',
},
{
displayName: 'End Address',
name: 'address_end',
type: 'string',
required: false, // Changed from true to false - now optional for all operations
displayOptions: {
show: {
resource: ['mission'],
operation: ['create', 'update', 'estimate'],
},
},
default: '',
description: 'Destination address for the mission',
placeholder: '42 fake street, 75001 Paris',
},
// Additional fields
{
displayName: 'Additional Fields',
name: 'additionalFields',
type: 'collection',
placeholder: 'Add Field',
default: {},
displayOptions: {
show: {
resource: ['mission'],
operation: ['create', 'update'],
},
},
options: [
{
displayName: 'Start Date',
name: 'start_date',
type: 'dateTime',
default: '',
description: 'Scheduled start date and time for the mission',
},
{
displayName: 'Client',
name: 'client_id',
type: 'options',
typeOptions: {
loadOptionsMethod: 'getClients',
},
default: '',
description: 'Client who created the mission',
},
{
displayName: 'Agent',
name: 'agent_id',
type: 'options',
typeOptions: {
loadOptionsMethod: 'getAgents',
},
default: '',
description: 'Agent assigned to the mission',
},
{
displayName: 'Client Reference',
name: 'client_ref',
type: 'string',
default: '',
description: 'Client\'s internal reference for this mission',
},
{
displayName: 'Comment',
name: 'comment',
type: 'string',
default: '',
description: 'Additional comments for the mission',
},
{
displayName: 'Weight (kg)',
name: 'weight',
type: 'number',
default: 0,
description: 'Weight of the shipment in kilograms',
},
{
displayName: 'Volume (m³)',
name: 'volume',
type: 'number',
default: 0,
description: 'Volume of the shipment in cubic meters',
},
{
displayName: 'Price Excluding Tax',
name: 'price_excl',
type: 'number',
default: 0,
description: 'Price of the mission excluding taxes',
},
{
displayName: 'Agent Price Excluding Tax',
name: 'agent_price_excl',
type: 'number',
default: 0,
description: 'Price paid to the agent excluding taxes',
},
{
displayName: 'Status',
name: 'status',
type: 'options',
typeOptions: {
loadOptionsMethod: 'getStatuses',
},
default: '',
description: 'Status of the mission',
},
{
displayName: 'Check Date',
name: 'check_date',
type: 'boolean',
default: false,
description: 'Whether to validate the scheduled date',
},
{
displayName: 'Check Addresses',
name: 'check_addresses',
type: 'boolean',
default: false,
description: 'Whether to validate the addresses',
},
{
displayName: 'Establishment',
name: 'establishment_id',
type: 'options',
typeOptions: {
loadOptionsMethod: 'getEstablishments',
},
default: '',
description: 'Establishment for this mission',
},
],
},
// Start Address Details
{
displayName: 'Start Address Details',
name: 'startAddressDetails',
type: 'collection',
placeholder: 'Add Detail',
default: {},
displayOptions: {
show: {
resource: ['mission'],
operation: ['create', 'update'],
},
},
options: [
{
displayName: 'Contact Name',
name: 'address_start_name',
type: 'string',
default: '',
description: 'Name of the contact person at start address',
},
{
displayName: 'Company',
name: 'address_start_company',
type: 'string',
default: '',
description: 'Company name at start address',
},
{
displayName: 'Email',
name: 'address_start_email',
type: 'string',
default: '',
description: 'Email of the contact at start address',
},
{
displayName: 'Phone',
name: 'address_start_tel',
type: 'string',
default: '',
description: 'Phone number of the contact at start address',
},
{
displayName: 'Comment',
name: 'address_start_comment',
type: 'string',
default: '',
description: 'Special instructions for the start address',
},
],
},
// End Address Details
{
displayName: 'End Address Details',
name: 'endAddressDetails',
type: 'collection',
placeholder: 'Add Detail',
default: {},
displayOptions: {
show: {
resource: ['mission'],
operation: ['create', 'update'],
},
},
options: [
{
displayName: 'Contact Name',
name: 'address_end_name',
type: 'string',
default: '',
description: 'Name of the contact person at end address',
},
{
displayName: 'Company',
name: 'address_end_company',
type: 'string',
default: '',
description: 'Company name at end address',
},
{
displayName: 'Email',
name: 'address_end_email',
type: 'string',
default: '',
description: 'Email of the contact at end address',
},
{
displayName: 'Phone',
name: 'address_end_tel',
type: 'string',
default: '',
description: 'Phone number of the contact at end address',
},
{
displayName: 'Comment',
name: 'address_end_comment',
type: 'string',
default: '',
description: 'Special instructions for the end address',
},
],
},
// Custom Information
{
displayName: 'Custom Information',
name: 'custom_infos',
type: 'fixedCollection',
default: {},
placeholder: 'Add Custom Info',
displayOptions: {
show: {
resource: ['mission'],
operation: ['create', 'update'],
},
},
typeOptions: {
multipleValues: true,
},
options: [
{
name: 'info',
displayName: 'Custom Info',
values: [
{
displayName: 'Name',
name: 'name',
type: 'string',
default: '',
description: 'The name of the custom field',
},
{
displayName: 'Value',
name: 'value',
type: 'string',
default: '',
description: 'The value of the custom field',
},
],
},
],
},
// Packages
{
displayName: 'Packages',
name: 'packages',
type: 'fixedCollection',
default: {},
placeholder: 'Add Package',
displayOptions: {
show: {
resource: ['mission'],
operation: ['create', 'update'],
},
},
typeOptions: {
multipleValues: true,
},
options: [
{
name: 'package',
displayName: 'Package',
values: [
{
displayName: 'Name',
name: 'name',
type: 'string',
default: '',
description: 'Name of the package',
},
{
displayName: 'Weight (kg)',
name: 'weight',
type: 'number',
default: 0,
description: 'Weight of the package in kilograms',
},
{
displayName: 'Volume (m³)',
name: 'volume',
type: 'number',
default: 0,
description: 'Volume of the package in cubic meters',
},
{
displayName: 'Length (cm)',
name: 'length',
type: 'number',
default: 0,
description: 'Length of the package in centimeters',
},
{
displayName: 'Width (cm)',
name: 'width',
type: 'number',
default: 0,
description: 'Width of the package in centimeters',
},
{
displayName: 'Depth (cm)',
name: 'depth',
type: 'number',
default: 0,
description: 'Depth of the package in centimeters',
},
{
displayName: 'Reference',
name: 'ref',
type: 'string',
default: '',
description: 'Reference number of the package',
},
{
displayName: 'Quantity',
name: 'quantity',
type: 'number',
default: 1,
description: 'Quantity of this package',
},
{
displayName: 'Is Scannable',
name: 'is_scannable',
type: 'boolean',
default: false,
description: 'Whether this package has a scannable code',
},
],
},
],
},
// Get Many - Options
{
displayName: 'Options',
name: 'options',
type: 'collection',
placeholder: 'Add Option',
default: {},
displayOptions: {
show: {
resource: ['mission'],
operation: ['getMany'],
},
},
options: [
{
displayName: 'Limit',
name: 'limit',
type: 'number',
default: 50,
description: 'Max number of results to return',
},
{
displayName: 'Limit Start',
name: 'limit_start',
type: 'number',
default: 0,
description: 'Starting offset for pagination (0-based index)',
},
{
displayName: 'Client',
name: 'client',
type: 'options',
typeOptions: {
loadOptionsMethod: 'getClients',
},
default: '',
description: 'Filter by client',
},
{
displayName: 'Agent',
name: 'agent',
type: 'options',
typeOptions: {
loadOptionsMethod: 'getAgents',
},
default: '',
description: 'Filter by agent',
},
{
displayName: 'Service',
name: 'service',
type: 'options',
typeOptions: {
loadOptionsMethod: 'getServices',
},
default: '',
description: 'Filter by service',
},
{
displayName: 'Search',
name: 'search',
type: 'string',
default: '',
description: 'Search term to filter missions',
},
{
displayName: 'Hide Finished Missions',
name: 'hide_finished',
type: 'boolean',
default: false,
description: 'Whether to hide finished missions and only return ongoing ones',
},
{
displayName: 'Statuses',
name: 'statuses',
type: 'string',
default: '',
description: 'Filter by specific statuses (comma-separated status slugs)',
placeholder: 'delivery-ok,pickup,cancelled',
},
{
displayName: 'Start Date From',
name: 'date_between_start',
type: 'dateTime',
default: '',
description: 'Filter missions with start date from this date/time (Europe/Paris timezone)',
placeholder: '2025-06-26 09:40',
},
{
displayName: 'Start Date To',
name: 'date_between_end',
type: 'dateTime',
default: '',
description: 'Filter missions with start date until this date/time (Europe/Paris timezone)',
placeholder: '2025-06-26 18:00',
},
{
displayName: 'Order By',
name: 'order_by',
type: 'options',
options: [
{
name: 'Date Created',
value: 'date_created',
},
{
name: 'Date Modified',
value: 'date_modified',
},
{
name: 'Last Status Date',
value: 'last_status_date',
},
{
name: 'Start Date',
value: 'start_date',
},
{
name: 'Distance',
value: 'distance',
},
{
name: 'Duration',
value: 'duration',
},
],
default: 'start_date',
description: 'Field to order results by',
},
{
displayName: 'Order Direction',
name: 'order_by_order',
type: 'options',
options: [
{
name: 'Ascending',
value: 'ASC',
},
{
name: 'Descending',
value: 'DESC',
},
],
default: 'DESC',
description: 'Order direction',
},
],
},
// Accept operation
{
displayName: 'Mission Reference',
name: 'ref',
type: 'string',
required: false, // Changed from true to false
displayOptions: {
show: {
resource: ['mission'],
operation: ['accept'],
},
},
default: '',
description: 'The reference of the mission to accept',
},
{
displayName: 'Agent',
name: 'agent_id',
type: 'options',
typeOptions: {
loadOptionsMethod: 'getAgents',
},
required: false, // Changed from true to false
displayOptions: {
show: {
resource: ['mission'],
operation: ['accept'],
},
},
default: '',
description: 'Agent accepting the mission',
},
// Set Status operation
{
displayName: 'Mission References',
name: 'refs',
type: 'string',
required: false, // Changed from true to false
displayOptions: {
show: {
resource: ['mission'],
operation: ['setStatus'],
},
},
default: '',
description: 'Mission references (comma-separated for multiple)',
placeholder: 'ABC123XXX,DEF456YYY,GHI789ZZZ',
},
{
displayName: 'Status',
name: 'status',
type: 'options',
typeOptions: {
loadOptionsMethod: 'getStatuses',
},
required: false, // Changed from true to false
displayOptions: {
show: {
resource: ['mission'],
operation: ['setStatus'],
},
},
default: '',
description: 'New status for the mission(s)',
},
{
displayName: 'Status Details',
name: 'statusDetails',
type: 'collection',
placeholder: 'Add Detail',
default: {},
displayOptions: {
show: {
resource: ['mission'],
operation: ['setStatus'],
},
},
options: [
{
displayName: 'Comment',
name: 'comment',
type: 'string',
default: '',
description: 'Comment for the status change',
},
{
displayName: 'Signature (Base64)',
name: 'signature',
type: 'string',
default: '',
description: 'Base64 encoded signature image',
},
{
displayName: 'Latitude',
name: 'lat',
type: 'string',
default: '',
description: 'GPS latitude of the status update',
},
{
displayName: 'Longitude',
name: 'lng',
type: 'string',
default: '',
description: 'GPS longitude of the status update',
},
],
},
];
//# sourceMappingURL=MissionDescription.js.map