mirror of
https://github.com/n8n-io/n8n.git
synced 2024-12-27 05:29:42 -08:00
61e26804ba
* ⚡ enabled array-type * ⚡ await-thenable on * ⚡ ban-types on * ⚡ default-param-last on * ⚡ dot-notation on * ⚡ member-delimiter-style on * ⚡ no-duplicate-imports on * ⚡ no-empty-interface on * ⚡ no-floating-promises on * ⚡ no-for-in-array on * ⚡ no-invalid-void-type on * ⚡ no-loop-func on * ⚡ no-shadow on * ⚡ ban-ts-comment re enabled * ⚡ @typescript-eslint/lines-between-class-members on * address my own comment * @typescript-eslint/return-await on * @typescript-eslint/promise-function-async on * @typescript-eslint/no-unnecessary-boolean-literal-compare on * @typescript-eslint/no-unnecessary-type-assertion on * prefer-const on * @typescript-eslint/prefer-optional-chain on Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
73 lines
1.3 KiB
TypeScript
73 lines
1.3 KiB
TypeScript
import { ICredentialType, INodeProperties } from 'n8n-workflow';
|
|
|
|
export class Imap implements ICredentialType {
|
|
name = 'imap';
|
|
|
|
displayName = 'IMAP';
|
|
|
|
documentationUrl = 'imap';
|
|
|
|
properties: INodeProperties[] = [
|
|
{
|
|
displayName: 'User',
|
|
name: 'user',
|
|
type: 'string',
|
|
default: '',
|
|
},
|
|
{
|
|
displayName: 'Password',
|
|
name: 'password',
|
|
type: 'string',
|
|
typeOptions: {
|
|
password: true,
|
|
},
|
|
default: '',
|
|
},
|
|
{
|
|
displayName: 'Host',
|
|
name: 'host',
|
|
type: 'string',
|
|
default: '',
|
|
},
|
|
{
|
|
displayName: 'Port',
|
|
name: 'port',
|
|
type: 'number',
|
|
default: 993,
|
|
},
|
|
{
|
|
displayName: 'SSL/TLS',
|
|
name: 'secure',
|
|
type: 'boolean',
|
|
default: true,
|
|
},
|
|
{
|
|
displayName: 'Allow Self-Signed Certificates',
|
|
name: 'allowUnauthorizedCerts',
|
|
type: 'boolean',
|
|
description: 'Whether to connect even if SSL certificate validation is not possible',
|
|
default: false,
|
|
},
|
|
];
|
|
}
|
|
|
|
export interface ICredentialsDataImap {
|
|
host: string;
|
|
port: number;
|
|
user: string;
|
|
password: string;
|
|
secure: boolean;
|
|
allowUnauthorizedCerts: boolean;
|
|
}
|
|
|
|
export function isCredentialsDataImap(candidate: unknown): candidate is ICredentialsDataImap {
|
|
const o = candidate as ICredentialsDataImap;
|
|
return (
|
|
o.host !== undefined &&
|
|
o.password !== undefined &&
|
|
o.port !== undefined &&
|
|
o.secure !== undefined &&
|
|
o.user !== undefined
|
|
);
|
|
}
|