n8n/packages/nodes-base/credentials/OdooApi.credentials.ts

42 lines
898 B
TypeScript
Raw Normal View History

:sparkles: Add Odoo Node (#2601) * added odoo scaffolding * update getting data from odoo instance * added scaffolding for main loop and request functions * added functions for CRUD opperations * improoved error handling for odooJSONRPCRequest * updated odoo node and fixing nodelinter issues * fixed alpabetical order * fixed types in odoo node * fixing linter errors * fixing linter errors * fixed data shape returned from man loop * updated node input types, added fields list to models * update when custom resource is selected options for fields list will be populated dynamicly * minor fixes * :hammer: fixed credential test, updating CRUD methods * :hammer: added additional fields to crm resource * :hammer: added descriptions, fixed credentials test bug * :hammer: standardize node and descriptions design * :hammer: removed comments * :hammer: added pagination to getAll operation * :zap: removed leftover function from previous implementation, removed required from optional fields * :zap: fixed id field, added indication of type and if required to field description, replaced string input in filters to fetched list of fields * :hammer: fetching list of models from odoo, added selection of fields to be returned to predefined models, fixes accordingly to review * :zap: Small improvements * :hammer: extracted adress fields into collection, changed fields to include in descriptions, minor tweaks * :zap: Improvements * :hammer: working on review * :hammer: fixed linter errors * :hammer: review wip * :hammer: review wip * :hammer: review wip * :zap: updated display name for URL in credentials * :hammer: added checks for valid id to delete and update * :zap: Minor improvements Co-authored-by: ricardo <ricardoespinoza105@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2022-03-05 11:33:42 -08:00
import { ICredentialType, INodeProperties, NodePropertyTypes } from 'n8n-workflow';
export class OdooApi implements ICredentialType {
name = 'odooApi';
displayName = 'Odoo API';
documentationUrl = 'odoo';
properties: INodeProperties[] = [
{
displayName: 'Site URL',
name: 'url',
type: 'string' as NodePropertyTypes,
default: '',
placeholder: 'https://my-organization.odoo.com',
required: true,
},
{
displayName: 'Username',
name: 'username',
type: 'string' as NodePropertyTypes,
default: '',
placeholder: 'user@email.com',
required: true,
},
{
displayName: 'Password or API Key',
name: 'password',
type: 'string' as NodePropertyTypes,
default: '',
typeOptions: {
password: true,
},
required: true,
},
{
displayName: 'Database Name',
name: 'db',
type: 'string' as NodePropertyTypes,
default: '',
},
];
}