mirror of
https://github.com/n8n-io/n8n.git
synced 2024-12-26 05:04:05 -08:00
88dea330b9
* ⚡ Update `lintfix` script * ⚡ Run baseline `lintfix` * 🔥 Remove unneeded exceptions (#3538) * 🔥 Remove exceptions for `node-param-default-wrong-for-simplify` * 🔥 Remove exceptions for `node-param-placeholder-miscased-id` * ⚡ Update version * 👕 Apply `node-param-placeholder-missing` (#3542) * 👕 Apply `filesystem-wrong-cred-filename` (#3543) * 👕 Apply `node-param-description-missing-from-dynamic-options` (#3545) Co-authored-by: Iván Ovejero <ivov.src@gmail.com> * 👕 Apply `node-class-description-empty-string` (#3546) * 👕 Apply `node-class-description-icon-not-svg` (#3548) * 👕 Apply `filesystem-wrong-node-filename` (#3549) Co-authored-by: Iván Ovejero <ivov.src@gmail.com> * 👕 Expand lintings to credentials (#3550) * 👕 Apply `node-param-multi-options-type-unsorted-items` (#3552) * ⚡ fix * ⚡ Minor fixes Co-authored-by: Michael Kret <michael.k@radency.com> * 👕 Apply `node-param-description-wrong-for-dynamic-multi-options` (#3541) * ⚡ Add new lint rule, node-param-description-wrong-for-dynamic-multi-options * ⚡ Fix with updated linting rules * ⚡ Minor fixes Co-authored-by: Iván Ovejero <ivov.src@gmail.com> * 👕 Apply `node-param-description-boolean-without-whether` (#3553) * ⚡ fix * Update packages/nodes-base/nodes/Clockify/ProjectDescription.ts Co-authored-by: Iván Ovejero <ivov.src@gmail.com> * 👕 Apply node-param-display-name-wrong-for-dynamic-multi-options (#3537) * 👕 Add exceptions * 👕 Add exception * ✏️ Alphabetize rules * ⚡ Restore `lintfix` command Co-authored-by: agobrech <45268029+agobrech@users.noreply.github.com> Co-authored-by: Omar Ajoue <krynble@gmail.com> Co-authored-by: Michael Kret <michael.k@radency.com> Co-authored-by: brianinoa <54530642+brianinoa@users.noreply.github.com> Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com>
274 lines
5.6 KiB
TypeScript
274 lines
5.6 KiB
TypeScript
import {
|
|
ICredentialType,
|
|
INodeProperties,
|
|
} from 'n8n-workflow';
|
|
|
|
export const regions = [
|
|
{
|
|
name: 'af-south-1',
|
|
displayName: 'Africa',
|
|
location: 'Cape Town',
|
|
},
|
|
{
|
|
name: 'ap-east-1',
|
|
displayName: 'Asia Pacific',
|
|
location: 'Hong Kong',
|
|
},
|
|
{
|
|
name: 'ap-south-1',
|
|
displayName: 'Asia Pacific',
|
|
location: 'Mumbai',
|
|
},
|
|
{
|
|
name: 'ap-southeast-1',
|
|
displayName: 'Asia Pacific',
|
|
location: 'Singapore',
|
|
},
|
|
{
|
|
name: 'ap-southeast-2',
|
|
displayName: 'Asia Pacific',
|
|
location: 'Sydney',
|
|
},
|
|
{
|
|
name: 'ap-southeast-3',
|
|
displayName: 'Asia Pacific',
|
|
location: 'Jakarta',
|
|
},
|
|
{
|
|
name: 'ap-northeast-1',
|
|
displayName: 'Asia Pacific',
|
|
location: 'Tokyo',
|
|
},
|
|
{
|
|
name: 'ap-northeast-2',
|
|
displayName: 'Asia Pacific',
|
|
location: 'Seoul',
|
|
},
|
|
{
|
|
name: 'ap-northeast-3',
|
|
displayName: 'Asia Pacific',
|
|
location: 'Osaka',
|
|
},
|
|
{
|
|
name: 'ca-central-1',
|
|
displayName: 'Canada',
|
|
location: 'Central',
|
|
},
|
|
{
|
|
name: 'eu-central-1',
|
|
displayName: 'Europe',
|
|
location: 'Frankfurt',
|
|
},
|
|
{
|
|
name: 'eu-north-1',
|
|
displayName: 'Europe',
|
|
location: 'Stockholm',
|
|
},
|
|
{
|
|
name: 'eu-south-1',
|
|
displayName: 'Europe',
|
|
location: 'Milan',
|
|
},
|
|
{
|
|
name: 'eu-west-1',
|
|
displayName: 'Europe',
|
|
location: 'Ireland',
|
|
},
|
|
{
|
|
name: 'eu-west-2',
|
|
displayName: 'Europe',
|
|
location: 'London',
|
|
},
|
|
{
|
|
name: 'eu-west-3',
|
|
displayName: 'Europe',
|
|
location: 'Paris',
|
|
},
|
|
{
|
|
name: 'me-south-1',
|
|
displayName: 'Middle East',
|
|
location: 'Bahrain',
|
|
},
|
|
{
|
|
name: 'sa-east-1',
|
|
displayName: 'South America',
|
|
location: 'São Paulo',
|
|
},
|
|
{
|
|
name: 'us-east-1',
|
|
displayName: 'US East',
|
|
location: 'N. Virginia',
|
|
},
|
|
{
|
|
name: 'us-east-2',
|
|
displayName: 'US East',
|
|
location: 'Ohio',
|
|
},
|
|
{
|
|
name: 'us-west-1',
|
|
displayName: 'US West',
|
|
location: 'N. California',
|
|
},
|
|
{
|
|
name: 'us-west-2',
|
|
displayName: 'US West',
|
|
location: 'Oregon',
|
|
},
|
|
] as const;
|
|
|
|
export type AWSRegion = typeof regions[number]['name'];
|
|
|
|
export class Aws implements ICredentialType {
|
|
name = 'aws';
|
|
displayName = 'AWS';
|
|
documentationUrl = 'aws';
|
|
icon = 'file:AWS.svg';
|
|
properties: INodeProperties[] = [
|
|
{
|
|
displayName: 'Region',
|
|
name: 'region',
|
|
type: 'options',
|
|
options: regions.map(r => ({
|
|
name: `${r.displayName} (${r.location}) - ${r.name}`,
|
|
value: r.name,
|
|
})),
|
|
default: 'us-east-1',
|
|
},
|
|
{
|
|
displayName: 'Access Key ID',
|
|
name: 'accessKeyId',
|
|
type: 'string',
|
|
default: '',
|
|
},
|
|
{
|
|
displayName: 'Secret Access Key',
|
|
name: 'secretAccessKey',
|
|
type: 'string',
|
|
default: '',
|
|
typeOptions: {
|
|
password: true,
|
|
},
|
|
},
|
|
{
|
|
displayName: 'Temporary Security Credentials',
|
|
name: 'temporaryCredentials',
|
|
// eslint-disable-next-line n8n-nodes-base/node-param-description-boolean-without-whether
|
|
description: 'Support for temporary credentials from AWS STS',
|
|
type: 'boolean',
|
|
default: false,
|
|
},
|
|
{
|
|
displayName: 'Session Token',
|
|
name: 'sessionToken',
|
|
type: 'string',
|
|
displayOptions: {
|
|
show: {
|
|
temporaryCredentials: [
|
|
true,
|
|
],
|
|
},
|
|
},
|
|
default: '',
|
|
typeOptions: {
|
|
password: true,
|
|
},
|
|
},
|
|
{
|
|
displayName: 'Custom Endpoints',
|
|
name: 'customEndpoints',
|
|
type: 'boolean',
|
|
default: false,
|
|
},
|
|
{
|
|
displayName: 'Rekognition Endpoint',
|
|
name: 'rekognitionEndpoint',
|
|
description: 'If you use Amazon VPC to host n8n, you can establish a connection between your VPC and Rekognition using a VPC endpoint. Leave blank to use the default endpoint.',
|
|
type: 'string',
|
|
displayOptions: {
|
|
show: {
|
|
customEndpoints: [
|
|
true,
|
|
],
|
|
},
|
|
},
|
|
default: '',
|
|
placeholder: 'https://rekognition.{region}.amazonaws.com',
|
|
},
|
|
{
|
|
displayName: 'Lambda Endpoint',
|
|
name: 'lambdaEndpoint',
|
|
description: 'If you use Amazon VPC to host n8n, you can establish a connection between your VPC and Lambda using a VPC endpoint. Leave blank to use the default endpoint.',
|
|
type: 'string',
|
|
displayOptions: {
|
|
show: {
|
|
customEndpoints: [
|
|
true,
|
|
],
|
|
},
|
|
},
|
|
default: '',
|
|
placeholder: 'https://lambda.{region}.amazonaws.com',
|
|
},
|
|
{
|
|
displayName: 'SNS Endpoint',
|
|
name: 'snsEndpoint',
|
|
description: 'If you use Amazon VPC to host n8n, you can establish a connection between your VPC and SNS using a VPC endpoint. Leave blank to use the default endpoint.',
|
|
type: 'string',
|
|
displayOptions: {
|
|
show: {
|
|
customEndpoints: [
|
|
true,
|
|
],
|
|
},
|
|
},
|
|
default: '',
|
|
placeholder: 'https://sns.{region}.amazonaws.com',
|
|
},
|
|
{
|
|
displayName: 'SES Endpoint',
|
|
name: 'sesEndpoint',
|
|
description: 'If you use Amazon VPC to host n8n, you can establish a connection between your VPC and SES using a VPC endpoint. Leave blank to use the default endpoint.',
|
|
type: 'string',
|
|
displayOptions: {
|
|
show: {
|
|
customEndpoints: [
|
|
true,
|
|
],
|
|
},
|
|
},
|
|
default: '',
|
|
placeholder: 'https://email.{region}.amazonaws.com',
|
|
},
|
|
{
|
|
displayName: 'SQS Endpoint',
|
|
name: 'sqsEndpoint',
|
|
description: 'If you use Amazon VPC to host n8n, you can establish a connection between your VPC and SQS using a VPC endpoint. Leave blank to use the default endpoint.',
|
|
type: 'string',
|
|
displayOptions: {
|
|
show: {
|
|
customEndpoints: [
|
|
true,
|
|
],
|
|
},
|
|
},
|
|
default: '',
|
|
placeholder: 'https://sqs.{region}.amazonaws.com',
|
|
},
|
|
{
|
|
displayName: 'S3 Endpoint',
|
|
name: 's3Endpoint',
|
|
description: 'If you use Amazon VPC to host n8n, you can establish a connection between your VPC and S3 using a VPC endpoint. Leave blank to use the default endpoint.',
|
|
type: 'string',
|
|
displayOptions: {
|
|
show: {
|
|
customEndpoints: [
|
|
true,
|
|
],
|
|
},
|
|
},
|
|
default: '',
|
|
placeholder: 'https://s3.{region}.amazonaws.com',
|
|
},
|
|
];
|
|
}
|