nodes/YouTrack/resources/project/list.ts (98 lines of code) (raw):

import type { INodeProperties } from 'n8n-workflow'; const DEFAULT_FIELDS = 'id,name,shortName,description,archived'; export const projectListDescription: INodeProperties[] = [ // Return All toggle { displayName: 'Return All', name: 'returnAll', type: 'boolean', displayOptions: { show: { resource: ['project'], operation: ['list'], }, }, default: false, description: 'Whether to return all results or only up to a given limit', }, // Additional Options { displayName: 'Additional Options', name: 'additionalOptions', type: 'collection', placeholder: 'Add Option', default: { fields: DEFAULT_FIELDS, }, displayOptions: { show: { resource: ['project'], operation: ['list'], }, }, options: [ { displayName: 'Fields', name: 'fields', type: 'string', default: DEFAULT_FIELDS, description: 'Comma-separated list of fields to return. If not specified, only entityID is returned.', routing: { send: { type: 'query', property: 'fields', }, }, }, { displayName: 'Query', name: 'query', type: 'string', default: '', placeholder: 'e.g. Sample Project', description: 'Filter projects by name or short name', routing: { send: { type: 'query', property: 'query', }, }, }, { displayName: 'Limit', name: 'limit', type: 'number', displayOptions: { show: { '/returnAll': [false], }, }, typeOptions: { minValue: 1, }, default: 50, description: 'Max number of results to return', routing: { send: { type: 'query', property: '$top', }, }, }, { displayName: 'Skip', name: 'skip', type: 'number', typeOptions: { minValue: 0, }, default: 0, description: 'Number of projects to skip before returning results', routing: { send: { type: 'query', property: '$skip', }, }, }, ], }, ]