UNPKG

@tuanltntu/n8n-nodes-bitrix24

Version:

Comprehensive n8n community node for Bitrix24 API integration with CRM, Tasks, Chat, Telephony, and more

258 lines 7.8 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.duplicateFields = exports.duplicateOperations = void 0; /** * Duplicate Description - CLEAN VERSION without circular dependencies */ // Operation field const operationField = { displayName: "Operation", name: "operation", type: "options", noDataExpression: true, required: true, default: "findDuplicates", displayOptions: { show: { resource: ["duplicate"], }, }, options: [ { name: "Find Duplicates", value: "findDuplicates", description: "Find duplicate entities by communication (crm.duplicate.findbycomm)", action: "Find duplicate entities", }, { name: "Find By Communication", value: "findByCommunication", description: "Find entities by communication value (crm.duplicate.findbycomm)", action: "Find entities by communication", }, { name: "Get Duplicate Criteria", value: "getDuplicateCriteria", description: "Get duplicate search criteria (crm.duplicate.list)", action: "Get duplicate search criteria", }, { name: "Enable Duplicate Control", value: "enableDuplicateControl", description: "Enable automatic duplicate control (crm.duplicate.enableautomerge)", action: "Enable duplicate control", }, { name: "Disable Duplicate Control", value: "disableDuplicateControl", description: "Disable automatic duplicate control (crm.duplicate.disableautomerge)", action: "Disable duplicate control", }, { name: "Merge Duplicates", value: "mergeDuplicates", description: "Merge duplicate entities (crm.duplicate.merge)", action: "Merge duplicate entities", }, ], }; // Entity Type Field const entityTypeField = { displayName: "Entity Type", name: "entityType", type: "options", options: [ { name: "Lead", value: "LEAD" }, { name: "Deal", value: "DEAL" }, { name: "Contact", value: "CONTACT" }, { name: "Company", value: "COMPANY" }, ], default: "LEAD", required: true, description: "Type of entity to search for duplicates", displayOptions: { show: { resource: ["duplicate"], operation: ["findDuplicates", "mergeDuplicates"], }, }, }; // Entity ID Field const entityIdField = { displayName: "Entity ID", name: "entityId", type: "string", required: true, default: "", description: "ID of the entity", displayOptions: { show: { resource: ["duplicate"], operation: ["findDuplicates", "mergeDuplicates"], }, }, }; // Target Entity ID Field const targetEntityIdField = { displayName: "Target Entity ID", name: "targetEntityId", type: "string", required: true, default: "", description: "ID of the target entity to merge into", displayOptions: { show: { resource: ["duplicate"], operation: ["mergeDuplicates"], }, }, }; // Find Duplicates operation fields const findDuplicatesFields = [ entityTypeField, entityIdField, { displayName: "Options", name: "searchOptions", type: "collection", placeholder: "Add Option", default: {}, displayOptions: { show: { resource: ["duplicate"], operation: ["findDuplicates"], }, }, options: [ { displayName: "Match Type", name: "matchType", type: "options", options: [ { name: "Exact", value: "EXACT" }, { name: "Similar", value: "SIMILAR" }, { name: "Fuzzy", value: "FUZZY" }, ], default: "SIMILAR", description: "Type of duplicate matching", }, { displayName: "Access Token", name: "accessToken", type: "string", default: "", description: "Access token for authentication", }, ], }, ]; // Find By Communication operation fields const findByCommunicationFields = [ entityTypeField, { displayName: "Communication Type", name: "commType", type: "options", options: [ { name: "Phone", value: "PHONE" }, { name: "Email", value: "EMAIL" }, ], default: "EMAIL", required: true, description: "Type of communication to search by", displayOptions: { show: { resource: ["duplicate"], operation: ["findByCommunication"], }, }, }, { displayName: "Communication Value", name: "commValue", type: "string", required: true, default: "", description: "Value to search for (phone number or email)", displayOptions: { show: { resource: ["duplicate"], operation: ["findByCommunication"], }, }, }, { displayName: "Options", name: "options", type: "collection", placeholder: "Add Option", default: {}, displayOptions: { show: { resource: ["duplicate"], operation: ["findByCommunication"], }, }, options: [ { displayName: "Entity ID", name: "entityId", type: "string", default: "", description: "Specific entity ID to exclude from search", }, { displayName: "Access Token", name: "accessToken", type: "string", default: "", description: "Access token for authentication", }, ], }, ]; // Export all Duplicate operations and fields exports.duplicateOperations = [ { name: "Find Duplicates", value: "findDuplicates", description: "Find duplicate entities by communication (crm.duplicate.findbycomm)", action: "Find duplicate entities", }, { name: "Get Duplicate Criteria", value: "getDuplicateCriteria", description: "Get duplicate search criteria (crm.duplicate.list)", action: "Get duplicate search criteria", }, { name: "Enable Duplicate Control", value: "enableDuplicateControl", description: "Enable automatic duplicate control (crm.duplicate.enableautomerge)", action: "Enable duplicate control", }, { name: "Disable Duplicate Control", value: "disableDuplicateControl", description: "Disable automatic duplicate control (crm.duplicate.disableautomerge)", action: "Disable duplicate control", }, { name: "Merge Duplicates", value: "mergeDuplicates", description: "Merge duplicate entities (crm.duplicate.merge)", action: "Merge duplicate entities", }, { name: "Get Merge Status", value: "getMergeStatus", description: "Get duplicate merge status (crm.duplicate.getstatus)", action: "Get merge status", }, ]; exports.duplicateFields = [ operationField, ...findDuplicatesFields, ...findByCommunicationFields, ]; //# sourceMappingURL=DuplicateDescription.js.map