mirror of
https://github.com/Abdulazizzn/n8n-enterprise-unlocked.git
synced 2025-12-21 20:00:02 +00:00
feat(KoBoToolbox Node): Add KoBoToolbox Regular and Trigger Node (#2765)
* First version * Added hooks * Added Credentials test * Add support for downloading attachments * Slight restructure of downloaded binaries * Added Trigger node * Some linting * Reverting package-lock changes * Minor GeoJSON parsing fixes * KoboToolbox: improve GeoJSON format * Kobo: Support for get/set validation status * Remove some logs * [kobo] Fix default attachment options * Proper debug logging * Support for hook log status filter * Kobo: Review fixes * [kobo]: Add Get All Forms + lookup Form ID * [kobo] Lookup Form ID in Trigger node * [kobo] Update branded spelling * [kobo] Support pagination * ⚡ fix linting issue * ⚡ Improvements to #2510 * ⚡ Download files using n8n helper * ⚡ Improvements * ⚡ Improvements * 🐛 Fix filenames * ⚡ Fix some issues Co-authored-by: Yann Jouanique <yann.jouanique@oneacrefund.org> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
This commit is contained in:
184
packages/nodes-base/nodes/KoBoToolbox/HookDescription.ts
Normal file
184
packages/nodes-base/nodes/KoBoToolbox/HookDescription.ts
Normal file
@@ -0,0 +1,184 @@
|
||||
import {
|
||||
INodeProperties,
|
||||
} from 'n8n-workflow';
|
||||
|
||||
export const hookOperations: INodeProperties[] = [
|
||||
{
|
||||
displayName: 'Operation',
|
||||
name: 'operation',
|
||||
type: 'options',
|
||||
displayOptions: {
|
||||
show: {
|
||||
resource: [
|
||||
'hook',
|
||||
],
|
||||
},
|
||||
},
|
||||
options: [
|
||||
{
|
||||
name: 'Get',
|
||||
value: 'get',
|
||||
description: 'Get a single hook definition',
|
||||
},
|
||||
{
|
||||
name: 'Get All',
|
||||
value: 'getAll',
|
||||
description: 'List all hooks on a form',
|
||||
},
|
||||
{
|
||||
name: 'Logs',
|
||||
value: 'getLogs',
|
||||
description: 'Get hook logs',
|
||||
},
|
||||
{
|
||||
name: 'Retry All',
|
||||
value: 'retryAll',
|
||||
description: 'Retry all failed attempts for a given hook',
|
||||
},
|
||||
{
|
||||
name: 'Retry One',
|
||||
value: 'retryOne',
|
||||
description: 'Retry a specific hook',
|
||||
},
|
||||
],
|
||||
default: 'getAll',
|
||||
},
|
||||
];
|
||||
|
||||
export const hookFields: INodeProperties[] = [
|
||||
|
||||
/* -------------------------------------------------------------------------- */
|
||||
/* hook:get */
|
||||
/* -------------------------------------------------------------------------- */
|
||||
{
|
||||
displayName: 'Form ID',
|
||||
name: 'formId',
|
||||
type: 'options',
|
||||
typeOptions: {
|
||||
loadOptionsMethod: 'loadForms',
|
||||
},
|
||||
required: true,
|
||||
default: '',
|
||||
displayOptions: {
|
||||
show: {
|
||||
resource: [
|
||||
'hook',
|
||||
],
|
||||
operation: [
|
||||
'get',
|
||||
'retryOne',
|
||||
'retryAll',
|
||||
'getLogs',
|
||||
],
|
||||
},
|
||||
},
|
||||
description: 'Form ID (e.g. aSAvYreNzVEkrWg5Gdcvg)',
|
||||
},
|
||||
{
|
||||
displayName: 'Hook ID',
|
||||
name: 'hookId',
|
||||
type: 'string',
|
||||
required: true,
|
||||
displayOptions: {
|
||||
show: {
|
||||
resource: [
|
||||
'hook',
|
||||
],
|
||||
operation: [
|
||||
'get',
|
||||
'retryOne',
|
||||
'retryAll',
|
||||
'getLogs',
|
||||
],
|
||||
},
|
||||
},
|
||||
default: '',
|
||||
description: 'Hook ID (starts with h, e.g. hVehywQ2oXPYGHJHKtqth4)',
|
||||
},
|
||||
/* -------------------------------------------------------------------------- */
|
||||
/* hook:getAll */
|
||||
/* -------------------------------------------------------------------------- */
|
||||
{
|
||||
displayName: 'Form ID',
|
||||
name: 'formId',
|
||||
type: 'options',
|
||||
typeOptions: {
|
||||
loadOptionsMethod: 'loadForms',
|
||||
},
|
||||
required: true,
|
||||
default: '',
|
||||
displayOptions: {
|
||||
show: {
|
||||
resource: [
|
||||
'hook',
|
||||
],
|
||||
operation: [
|
||||
'getAll',
|
||||
],
|
||||
},
|
||||
},
|
||||
description: 'Form ID (e.g. aSAvYreNzVEkrWg5Gdcvg)',
|
||||
},
|
||||
{
|
||||
displayName: 'Hook Log ID',
|
||||
name: 'logId',
|
||||
type: 'string',
|
||||
required: true,
|
||||
displayOptions: {
|
||||
show: {
|
||||
resource: [
|
||||
'hook',
|
||||
],
|
||||
operation: [
|
||||
'retryOne',
|
||||
],
|
||||
},
|
||||
},
|
||||
default: '',
|
||||
description: 'Hook log ID (starts with hl, e.g. hlSbGKaUKzTVNoWEVMYbLHe)',
|
||||
},
|
||||
{
|
||||
displayName: 'Return All',
|
||||
name: 'returnAll',
|
||||
type: 'boolean',
|
||||
required: true,
|
||||
default: false,
|
||||
displayOptions: {
|
||||
show: {
|
||||
resource: [
|
||||
'hook',
|
||||
],
|
||||
operation: [
|
||||
'getAll',
|
||||
'getLogs',
|
||||
],
|
||||
},
|
||||
},
|
||||
description: 'Whether to return all results',
|
||||
},
|
||||
{
|
||||
displayName: 'Limit',
|
||||
name: 'limit',
|
||||
type: 'number',
|
||||
required: false,
|
||||
typeOptions: {
|
||||
maxValue: 3000,
|
||||
},
|
||||
displayOptions: {
|
||||
show: {
|
||||
resource: [
|
||||
'hook',
|
||||
],
|
||||
operation: [
|
||||
'getAll',
|
||||
'getLogs',
|
||||
],
|
||||
returnAll: [
|
||||
false,
|
||||
],
|
||||
},
|
||||
},
|
||||
default: 1000,
|
||||
description: 'The number of results to return',
|
||||
},
|
||||
];
|
||||
Reference in New Issue
Block a user