n8n-nodes-base 1.91.1 → 1.92.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (150) hide show
  1. package/dist/credentials/Aws.credentials.js +0 -2
  2. package/dist/credentials/Aws.credentials.js.map +1 -1
  3. package/dist/credentials/JinaAiApi.credentials.js +61 -0
  4. package/dist/credentials/JinaAiApi.credentials.js.map +1 -0
  5. package/dist/credentials/MicrosoftAzureCosmosDbSharedKeyApi.credentials.js +1 -1
  6. package/dist/credentials/MicrosoftAzureCosmosDbSharedKeyApi.credentials.js.map +1 -1
  7. package/dist/known/credentials.json +8 -0
  8. package/dist/known/nodes.json +8 -0
  9. package/dist/nodes/Affinity/__schema__/v1.0.0/listEntry/getAll.json +1 -4
  10. package/dist/nodes/Airtop/__schema__/v1.0.0/extraction/query.json +47 -0
  11. package/dist/nodes/Aws/Cognito/AwsCognito.node.js +102 -0
  12. package/dist/nodes/Aws/Cognito/AwsCognito.node.js.map +1 -0
  13. package/dist/nodes/Aws/Cognito/AwsCognito.node.json +18 -0
  14. package/dist/nodes/Aws/Cognito/cognito.svg +1 -0
  15. package/dist/nodes/Aws/Cognito/descriptions/common.description.js +160 -0
  16. package/dist/nodes/Aws/Cognito/descriptions/common.description.js.map +1 -0
  17. package/dist/nodes/Aws/Cognito/descriptions/group/Group.resource.js +189 -0
  18. package/dist/nodes/Aws/Cognito/descriptions/group/Group.resource.js.map +1 -0
  19. package/dist/nodes/Aws/Cognito/descriptions/group/create.operation.js +126 -0
  20. package/dist/nodes/Aws/Cognito/descriptions/group/create.operation.js.map +1 -0
  21. package/dist/nodes/Aws/Cognito/descriptions/group/delete.operation.js +47 -0
  22. package/dist/nodes/Aws/Cognito/descriptions/group/delete.operation.js.map +1 -0
  23. package/dist/nodes/Aws/Cognito/descriptions/group/get.operation.js +54 -0
  24. package/dist/nodes/Aws/Cognito/descriptions/group/get.operation.js.map +1 -0
  25. package/dist/nodes/Aws/Cognito/descriptions/group/getAll.operation.js +95 -0
  26. package/dist/nodes/Aws/Cognito/descriptions/group/getAll.operation.js.map +1 -0
  27. package/dist/nodes/Aws/Cognito/descriptions/group/update.operation.js +120 -0
  28. package/dist/nodes/Aws/Cognito/descriptions/group/update.operation.js.map +1 -0
  29. package/dist/nodes/Aws/Cognito/descriptions/index.js +45 -0
  30. package/dist/nodes/Aws/Cognito/descriptions/index.js.map +1 -0
  31. package/dist/nodes/Aws/Cognito/descriptions/user/User.resource.js +263 -0
  32. package/dist/nodes/Aws/Cognito/descriptions/user/User.resource.js.map +1 -0
  33. package/dist/nodes/Aws/Cognito/descriptions/user/addToGroup.operation.js +51 -0
  34. package/dist/nodes/Aws/Cognito/descriptions/user/addToGroup.operation.js.map +1 -0
  35. package/dist/nodes/Aws/Cognito/descriptions/user/create.operation.js +299 -0
  36. package/dist/nodes/Aws/Cognito/descriptions/user/create.operation.js.map +1 -0
  37. package/dist/nodes/Aws/Cognito/descriptions/user/delete.operation.js +47 -0
  38. package/dist/nodes/Aws/Cognito/descriptions/user/delete.operation.js.map +1 -0
  39. package/dist/nodes/Aws/Cognito/descriptions/user/get.operation.js +54 -0
  40. package/dist/nodes/Aws/Cognito/descriptions/user/get.operation.js.map +1 -0
  41. package/dist/nodes/Aws/Cognito/descriptions/user/getAll.operation.js +187 -0
  42. package/dist/nodes/Aws/Cognito/descriptions/user/getAll.operation.js.map +1 -0
  43. package/dist/nodes/Aws/Cognito/descriptions/user/removeFromGroup.operation.js +60 -0
  44. package/dist/nodes/Aws/Cognito/descriptions/user/removeFromGroup.operation.js.map +1 -0
  45. package/dist/nodes/Aws/Cognito/descriptions/user/update.operation.js +189 -0
  46. package/dist/nodes/Aws/Cognito/descriptions/user/update.operation.js.map +1 -0
  47. package/dist/nodes/Aws/Cognito/descriptions/userPool/UserPool.resource.js +81 -0
  48. package/dist/nodes/Aws/Cognito/descriptions/userPool/UserPool.resource.js.map +1 -0
  49. package/dist/nodes/Aws/Cognito/descriptions/userPool/get.operation.js +50 -0
  50. package/dist/nodes/Aws/Cognito/descriptions/userPool/get.operation.js.map +1 -0
  51. package/dist/nodes/Aws/Cognito/helpers/constants.js +91 -0
  52. package/dist/nodes/Aws/Cognito/helpers/constants.js.map +1 -0
  53. package/dist/nodes/Aws/Cognito/helpers/errorHandler.js +109 -0
  54. package/dist/nodes/Aws/Cognito/helpers/errorHandler.js.map +1 -0
  55. package/dist/nodes/Aws/Cognito/helpers/interfaces.js +17 -0
  56. package/dist/nodes/Aws/Cognito/helpers/interfaces.js.map +1 -0
  57. package/dist/nodes/Aws/Cognito/helpers/utils.js +318 -0
  58. package/dist/nodes/Aws/Cognito/helpers/utils.js.map +1 -0
  59. package/dist/nodes/Aws/Cognito/methods/index.js +39 -0
  60. package/dist/nodes/Aws/Cognito/methods/index.js.map +1 -0
  61. package/dist/nodes/Aws/Cognito/methods/listSearch.js +157 -0
  62. package/dist/nodes/Aws/Cognito/methods/listSearch.js.map +1 -0
  63. package/dist/nodes/Aws/Cognito/transport/index.js +72 -0
  64. package/dist/nodes/Aws/Cognito/transport/index.js.map +1 -0
  65. package/dist/nodes/Aws/S3/__schema__/v2.0.0/file/getAll.json +1 -7
  66. package/dist/nodes/BambooHr/__schema__/v1.0.0/employee/get.json +10 -1
  67. package/dist/nodes/Dropcontact/__schema__/v1.0.0/contact/enrich.json +7 -15
  68. package/dist/nodes/EmailSend/__schema__/v2.1.0/email/send.json +7 -1
  69. package/dist/nodes/Github/__schema__/v1.1.0/file/list.json +44 -0
  70. package/dist/nodes/Gitlab/__schema__/v1.0.0/file/get.json +1 -4
  71. package/dist/nodes/Google/BusinessProfile/__schema__/v1.0.0/review/getAll.json +1 -12
  72. package/dist/nodes/Google/Calendar/__schema__/v1.3.0/event/getAll.json +4 -7
  73. package/dist/nodes/Google/Contacts/__schema__/v1.0.0/contact/getAll.json +1 -12
  74. package/dist/nodes/Google/Drive/__schema__/v3.0.0/file/download.json +9 -0
  75. package/dist/nodes/Google/Firebase/CloudFirestore/__schema__/v1.1.0/document/query.json +7 -1
  76. package/dist/nodes/Google/Gmail/__schema__/v2.1.0/message/addLabels.json +1 -13
  77. package/dist/nodes/Google/Gmail/__schema__/v2.1.0/message/get.json +7 -1
  78. package/dist/nodes/Google/Gmail/__schema__/v2.1.0/message/getAll.json +29 -113
  79. package/dist/nodes/Google/Gmail/__schema__/v2.1.0/thread/get.json +1 -60
  80. package/dist/nodes/Google/Sheet/GoogleSheets.node.js +3 -2
  81. package/dist/nodes/Google/Sheet/GoogleSheets.node.js.map +1 -1
  82. package/dist/nodes/Google/Sheet/v2/actions/sheet/read.operation.js +2 -1
  83. package/dist/nodes/Google/Sheet/v2/actions/sheet/read.operation.js.map +1 -1
  84. package/dist/nodes/Google/Sheet/v2/actions/versionDescription.js +1 -1
  85. package/dist/nodes/Google/Sheet/v2/actions/versionDescription.js.map +1 -1
  86. package/dist/nodes/Google/Sheet/v2/helpers/GoogleSheet.js +4 -0
  87. package/dist/nodes/Google/Sheet/v2/helpers/GoogleSheet.js.map +1 -1
  88. package/dist/nodes/Google/Task/__schema__/v1.0.0/task/getAll.json +1 -4
  89. package/dist/nodes/Google/YouTube/__schema__/v1.0.0/video/get.json +35 -1
  90. package/dist/nodes/Hubspot/__schema__/v2.1.0/company/getAll.json +4 -1
  91. package/dist/nodes/Hubspot/__schema__/v2.1.0/contact/search.json +1 -4
  92. package/dist/nodes/Hubspot/__schema__/v2.1.0/deal/getAll.json +45 -11
  93. package/dist/nodes/Hubspot/__schema__/v2.1.0/deal/search.json +2 -5
  94. package/dist/nodes/Hubspot/__schema__/v2.1.0/ticket/get.json +4 -4
  95. package/dist/nodes/ItemLists/__schema__/v3.0.0/itemList/limit.json +4 -1
  96. package/dist/nodes/JinaAI/JinaAi.node.js +486 -0
  97. package/dist/nodes/JinaAI/JinaAi.node.js.map +1 -0
  98. package/dist/nodes/JinaAI/JinaAi.node.json +18 -0
  99. package/dist/nodes/JinaAI/jinaAi.dark.svg +6 -0
  100. package/dist/nodes/JinaAI/jinaAi.svg +6 -0
  101. package/dist/nodes/Jira/__schema__/v1.0.0/issue/get.json +259 -1
  102. package/dist/nodes/Jira/__schema__/v1.0.0/issue/getAll.json +57 -37
  103. package/dist/nodes/Linear/__schema__/v1.0.0/issue/getAll.json +1 -12
  104. package/dist/nodes/Microsoft/AzureCosmosDb/AzureCosmosDb.node.json +2 -2
  105. package/dist/nodes/Microsoft/Entra/MicrosoftEntra.node.js +2 -2
  106. package/dist/nodes/Microsoft/Entra/MicrosoftEntra.node.js.map +1 -1
  107. package/dist/nodes/Microsoft/Entra/__schema__/v1.0.0/user/getAll.json +1 -7
  108. package/dist/nodes/Microsoft/Outlook/__schema__/v2.0.0/event/getAll.json +4 -1
  109. package/dist/nodes/Microsoft/Outlook/__schema__/v2.0.0/folderMessage/getAll.json +8 -47
  110. package/dist/nodes/Microsoft/Outlook/__schema__/v2.0.0/message/get.json +124 -1
  111. package/dist/nodes/Microsoft/Outlook/__schema__/v2.0.0/message/getAll.json +40 -20
  112. package/dist/nodes/Microsoft/Outlook/__schema__/v2.0.0/message/sendAndWait.json +12 -11
  113. package/dist/nodes/Microsoft/Outlook/__schema__/v2.0.0/messageAttachment/get.json +13 -1
  114. package/dist/nodes/Microsoft/Storage/__schema__/v1.0.0/blob/getAll.json +44 -0
  115. package/dist/nodes/Microsoft/Teams/__schema__/v2.0.0/channel/getAll.json +1 -4
  116. package/dist/nodes/Microsoft/ToDo/__schema__/v1.0.0/task/getAll.json +21 -5
  117. package/dist/nodes/Notion/__schema__/v2.2.0/database/get.json +149 -2
  118. package/dist/nodes/Odoo/__schema__/v1.0.0/contact/getAll.json +10 -1
  119. package/dist/nodes/Odoo/__schema__/v1.0.0/custom/getAll.json +1 -4
  120. package/dist/nodes/Odoo/__schema__/v1.0.0/opportunity/getAll.json +49 -1
  121. package/dist/nodes/OpenAi/__schema__/v1.1.0/chat/complete.json +1 -29
  122. package/dist/nodes/Pipedrive/__schema__/v1.0.0/organization/search.json +20 -25
  123. package/dist/nodes/Pipedrive/__schema__/v1.0.0/person/search.json +1 -18
  124. package/dist/nodes/Plivo/__schema__/v1.0.0/call/make.json +15 -0
  125. package/dist/nodes/QuickBooks/__schema__/v1.0.0/transaction/getReport.json +1 -4
  126. package/dist/nodes/Salesforce/__schema__/v1.0.0/customObject/getAll.json +2 -2
  127. package/dist/nodes/Salesforce/__schema__/v1.0.0/opportunity/getAll.json +5 -2
  128. package/dist/nodes/Salesforce/__schema__/v1.0.0/task/getAll.json +4 -1
  129. package/dist/nodes/SeaTable/__schema__/v2.0.0/row/list.json +30 -0
  130. package/dist/nodes/ServiceNow/__schema__/v1.0.0/tableRecord/getAll.json +1 -4
  131. package/dist/nodes/Slack/__schema__/v2.3.0/channel/history.json +49 -3
  132. package/dist/nodes/Slack/__schema__/v2.3.0/message/post.json +4 -1
  133. package/dist/nodes/Ssh/__schema__/v1.0.0/command/execute.json +4 -1
  134. package/dist/nodes/Strapi/__schema__/v1.0.0/entry/get.json +32 -0
  135. package/dist/nodes/Strapi/__schema__/v1.0.0/entry/getAll.json +1 -4
  136. package/dist/nodes/Telegram/__schema__/v1.2.0/chat/get.json +27 -1
  137. package/dist/nodes/Telegram/__schema__/v1.2.0/chat/member.json +7 -1
  138. package/dist/nodes/Telegram/__schema__/v1.2.0/message/sendMessage.json +1 -4
  139. package/dist/nodes/Telegram/__schema__/v1.2.0/message/sendPhoto.json +4 -1
  140. package/dist/nodes/Trello/__schema__/v1.0.0/list/getAll.json +7 -1
  141. package/dist/nodes/Trello/__schema__/v1.0.0/list/getCards.json +13 -1
  142. package/dist/nodes/Wordpress/PageDescription.js +0 -17
  143. package/dist/nodes/Wordpress/PageDescription.js.map +1 -1
  144. package/dist/nodes/Wordpress/__schema__/v1.0.0/post/get.json +7 -1
  145. package/dist/nodes/Zoho/__schema__/v1.0.0/contact/getAll.json +15 -16
  146. package/dist/nodes/Zoho/__schema__/v1.0.0/lead/getAll.json +1 -122
  147. package/dist/nodes/Zoom/__schema__/v1.0.0/meeting/getAll.json +1 -4
  148. package/dist/types/credentials.json +3 -2
  149. package/dist/types/nodes.json +9 -7
  150. package/package.json +9 -6
@@ -418,8 +418,6 @@ class Aws {
418
418
  endpointString = credentials.sesEndpoint;
419
419
  } else if (service === "rekognition" && credentials.rekognitionEndpoint) {
420
420
  endpointString = credentials.rekognitionEndpoint;
421
- } else if (service === "sqs" && credentials.sqsEndpoint) {
422
- endpointString = credentials.sqsEndpoint;
423
421
  } else if (service) {
424
422
  endpointString = `https://${service}.${region}.amazonaws.com`;
425
423
  } else if (service === "ssm" && credentials.ssmEndpoint) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../credentials/Aws.credentials.ts"],"sourcesContent":["import type { Request } from 'aws4';\nimport { sign } from 'aws4';\nimport type {\n\tICredentialDataDecryptedObject,\n\tICredentialTestRequest,\n\tICredentialType,\n\tIDataObject,\n\tIHttpRequestOptions,\n\tINodeProperties,\n\tIRequestOptions,\n} from 'n8n-workflow';\nimport { isObjectEmpty } from 'n8n-workflow';\n\nexport const regions = [\n\t{\n\t\tname: 'af-south-1',\n\t\tdisplayName: 'Africa',\n\t\tlocation: 'Cape Town',\n\t},\n\t{\n\t\tname: 'ap-east-1',\n\t\tdisplayName: 'Asia Pacific',\n\t\tlocation: 'Hong Kong',\n\t},\n\t{\n\t\tname: 'ap-south-1',\n\t\tdisplayName: 'Asia Pacific',\n\t\tlocation: 'Mumbai',\n\t},\n\t{\n\t\tname: 'ap-south-2',\n\t\tdisplayName: 'Asia Pacific',\n\t\tlocation: 'Hyderabad',\n\t},\n\t{\n\t\tname: 'ap-southeast-1',\n\t\tdisplayName: 'Asia Pacific',\n\t\tlocation: 'Singapore',\n\t},\n\t{\n\t\tname: 'ap-southeast-2',\n\t\tdisplayName: 'Asia Pacific',\n\t\tlocation: 'Sydney',\n\t},\n\t{\n\t\tname: 'ap-southeast-3',\n\t\tdisplayName: 'Asia Pacific',\n\t\tlocation: 'Jakarta',\n\t},\n\t{\n\t\tname: 'ap-southeast-4',\n\t\tdisplayName: 'Asia Pacific',\n\t\tlocation: 'Melbourne',\n\t},\n\t{\n\t\tname: 'ap-southeast-5',\n\t\tdisplayName: 'Asia Pacific',\n\t\tlocation: 'Malaysia',\n\t},\n\t{\n\t\tname: 'ap-southeast-7',\n\t\tdisplayName: 'Asia Pacific',\n\t\tlocation: 'Thailand',\n\t},\n\t{\n\t\tname: 'ap-northeast-1',\n\t\tdisplayName: 'Asia Pacific',\n\t\tlocation: 'Tokyo',\n\t},\n\t{\n\t\tname: 'ap-northeast-2',\n\t\tdisplayName: 'Asia Pacific',\n\t\tlocation: 'Seoul',\n\t},\n\t{\n\t\tname: 'ap-northeast-3',\n\t\tdisplayName: 'Asia Pacific',\n\t\tlocation: 'Osaka',\n\t},\n\t{\n\t\tname: 'ca-central-1',\n\t\tdisplayName: 'Canada',\n\t\tlocation: 'Central',\n\t},\n\t{\n\t\tname: 'ca-west-1',\n\t\tdisplayName: 'Canada West',\n\t\tlocation: 'Calgary',\n\t},\n\t{\n\t\tname: 'cn-north-1',\n\t\tdisplayName: 'China',\n\t\tlocation: 'Beijing',\n\t},\n\t{\n\t\tname: 'cn-northwest-1',\n\t\tdisplayName: 'China',\n\t\tlocation: 'Ningxia',\n\t},\n\t{\n\t\tname: 'eu-central-1',\n\t\tdisplayName: 'Europe',\n\t\tlocation: 'Frankfurt',\n\t},\n\t{\n\t\tname: 'eu-central-2',\n\t\tdisplayName: 'Europe',\n\t\tlocation: 'Zurich',\n\t},\n\t{\n\t\tname: 'eu-north-1',\n\t\tdisplayName: 'Europe',\n\t\tlocation: 'Stockholm',\n\t},\n\t{\n\t\tname: 'eu-south-1',\n\t\tdisplayName: 'Europe',\n\t\tlocation: 'Milan',\n\t},\n\t{\n\t\tname: 'eu-south-2',\n\t\tdisplayName: 'Europe',\n\t\tlocation: 'Spain',\n\t},\n\t{\n\t\tname: 'eu-west-1',\n\t\tdisplayName: 'Europe',\n\t\tlocation: 'Ireland',\n\t},\n\t{\n\t\tname: 'eu-west-2',\n\t\tdisplayName: 'Europe',\n\t\tlocation: 'London',\n\t},\n\t{\n\t\tname: 'eu-west-3',\n\t\tdisplayName: 'Europe',\n\t\tlocation: 'Paris',\n\t},\n\t{\n\t\tname: 'il-central-1',\n\t\tdisplayName: 'Israel',\n\t\tlocation: 'Tel Aviv',\n\t},\n\t{\n\t\tname: 'me-central-1',\n\t\tdisplayName: 'Middle East',\n\t\tlocation: 'UAE',\n\t},\n\t{\n\t\tname: 'me-south-1',\n\t\tdisplayName: 'Middle East',\n\t\tlocation: 'Bahrain',\n\t},\n\t{\n\t\tname: 'mx-central-1',\n\t\tdisplayName: 'Mexico',\n\t\tlocation: 'Central',\n\t},\n\t{\n\t\tname: 'sa-east-1',\n\t\tdisplayName: 'South America',\n\t\tlocation: 'São Paulo',\n\t},\n\t{\n\t\tname: 'us-east-1',\n\t\tdisplayName: 'US East',\n\t\tlocation: 'N. Virginia',\n\t},\n\t{\n\t\tname: 'us-east-2',\n\t\tdisplayName: 'US East',\n\t\tlocation: 'Ohio',\n\t},\n\t{\n\t\tname: 'us-gov-east-1',\n\t\tdisplayName: 'US East',\n\t\tlocation: 'GovCloud',\n\t},\n\t{\n\t\tname: 'us-west-1',\n\t\tdisplayName: 'US West',\n\t\tlocation: 'N. California',\n\t},\n\t{\n\t\tname: 'us-west-2',\n\t\tdisplayName: 'US West',\n\t\tlocation: 'Oregon',\n\t},\n\t{\n\t\tname: 'us-gov-west-1',\n\t\tdisplayName: 'US West',\n\t\tlocation: 'GovCloud',\n\t},\n] as const;\n\nexport type AWSRegion = (typeof regions)[number]['name'];\nexport type AwsCredentialsType = {\n\tregion: AWSRegion;\n\taccessKeyId: string;\n\tsecretAccessKey: string;\n\ttemporaryCredentials: boolean;\n\tcustomEndpoints: boolean;\n\tsessionToken?: string;\n\trekognitionEndpoint?: string;\n\tlambdaEndpoint?: string;\n\tsnsEndpoint?: string;\n\tsesEndpoint?: string;\n\tsqsEndpoint?: string;\n\ts3Endpoint?: string;\n\tssmEndpoint?: string;\n};\n\n// Some AWS services are global and don't have a region\n// https://docs.aws.amazon.com/general/latest/gr/rande.html#global-endpoints\n// Example: iam.amazonaws.com (global), s3.us-east-1.amazonaws.com (regional)\nfunction parseAwsUrl(url: URL): { region: AWSRegion | null; service: string } {\n\tconst [service, region] = url.hostname.replace('amazonaws.com', '').split('.');\n\treturn { service, region: region as AWSRegion };\n}\n\nexport class Aws implements ICredentialType {\n\tname = 'aws';\n\n\tdisplayName = 'AWS';\n\n\tdocumentationUrl = 'aws';\n\n\ticon = { light: 'file:icons/AWS.svg', dark: 'file:icons/AWS.dark.svg' } as const;\n\n\tproperties: INodeProperties[] = [\n\t\t{\n\t\t\tdisplayName: 'Region',\n\t\t\tname: 'region',\n\t\t\ttype: 'options',\n\t\t\toptions: regions.map((r) => ({\n\t\t\t\tname: `${r.displayName} (${r.location}) - ${r.name}`,\n\t\t\t\tvalue: r.name,\n\t\t\t})),\n\t\t\tdefault: 'us-east-1',\n\t\t},\n\t\t{\n\t\t\tdisplayName: 'Access Key ID',\n\t\t\tname: 'accessKeyId',\n\t\t\ttype: 'string',\n\t\t\tdefault: '',\n\t\t},\n\t\t{\n\t\t\tdisplayName: 'Secret Access Key',\n\t\t\tname: 'secretAccessKey',\n\t\t\ttype: 'string',\n\t\t\tdefault: '',\n\t\t\ttypeOptions: {\n\t\t\t\tpassword: true,\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tdisplayName: 'Temporary Security Credentials',\n\t\t\tname: 'temporaryCredentials',\n\t\t\tdescription: 'Support for temporary credentials from AWS STS',\n\t\t\ttype: 'boolean',\n\t\t\tdefault: false,\n\t\t},\n\t\t{\n\t\t\tdisplayName: 'Session Token',\n\t\t\tname: 'sessionToken',\n\t\t\ttype: 'string',\n\t\t\tdisplayOptions: {\n\t\t\t\tshow: {\n\t\t\t\t\ttemporaryCredentials: [true],\n\t\t\t\t},\n\t\t\t},\n\t\t\tdefault: '',\n\t\t\ttypeOptions: {\n\t\t\t\tpassword: true,\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tdisplayName: 'Custom Endpoints',\n\t\t\tname: 'customEndpoints',\n\t\t\ttype: 'boolean',\n\t\t\tdefault: false,\n\t\t},\n\t\t{\n\t\t\tdisplayName: 'Rekognition Endpoint',\n\t\t\tname: 'rekognitionEndpoint',\n\t\t\tdescription:\n\t\t\t\t'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.',\n\t\t\ttype: 'string',\n\t\t\tdisplayOptions: {\n\t\t\t\tshow: {\n\t\t\t\t\tcustomEndpoints: [true],\n\t\t\t\t},\n\t\t\t},\n\t\t\tdefault: '',\n\t\t\tplaceholder: 'https://rekognition.{region}.amazonaws.com',\n\t\t},\n\t\t{\n\t\t\tdisplayName: 'Lambda Endpoint',\n\t\t\tname: 'lambdaEndpoint',\n\t\t\tdescription:\n\t\t\t\t'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.',\n\t\t\ttype: 'string',\n\t\t\tdisplayOptions: {\n\t\t\t\tshow: {\n\t\t\t\t\tcustomEndpoints: [true],\n\t\t\t\t},\n\t\t\t},\n\t\t\tdefault: '',\n\t\t\tplaceholder: 'https://lambda.{region}.amazonaws.com',\n\t\t},\n\t\t{\n\t\t\tdisplayName: 'SNS Endpoint',\n\t\t\tname: 'snsEndpoint',\n\t\t\tdescription:\n\t\t\t\t'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.',\n\t\t\ttype: 'string',\n\t\t\tdisplayOptions: {\n\t\t\t\tshow: {\n\t\t\t\t\tcustomEndpoints: [true],\n\t\t\t\t},\n\t\t\t},\n\t\t\tdefault: '',\n\t\t\tplaceholder: 'https://sns.{region}.amazonaws.com',\n\t\t},\n\t\t{\n\t\t\tdisplayName: 'SES Endpoint',\n\t\t\tname: 'sesEndpoint',\n\t\t\tdescription:\n\t\t\t\t'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.',\n\t\t\ttype: 'string',\n\t\t\tdisplayOptions: {\n\t\t\t\tshow: {\n\t\t\t\t\tcustomEndpoints: [true],\n\t\t\t\t},\n\t\t\t},\n\t\t\tdefault: '',\n\t\t\tplaceholder: 'https://email.{region}.amazonaws.com',\n\t\t},\n\t\t{\n\t\t\tdisplayName: 'SQS Endpoint',\n\t\t\tname: 'sqsEndpoint',\n\t\t\tdescription:\n\t\t\t\t'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.',\n\t\t\ttype: 'string',\n\t\t\tdisplayOptions: {\n\t\t\t\tshow: {\n\t\t\t\t\tcustomEndpoints: [true],\n\t\t\t\t},\n\t\t\t},\n\t\t\tdefault: '',\n\t\t\tplaceholder: 'https://sqs.{region}.amazonaws.com',\n\t\t},\n\t\t{\n\t\t\tdisplayName: 'S3 Endpoint',\n\t\t\tname: 's3Endpoint',\n\t\t\tdescription:\n\t\t\t\t'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.',\n\t\t\ttype: 'string',\n\t\t\tdisplayOptions: {\n\t\t\t\tshow: {\n\t\t\t\t\tcustomEndpoints: [true],\n\t\t\t\t},\n\t\t\t},\n\t\t\tdefault: '',\n\t\t\tplaceholder: 'https://s3.{region}.amazonaws.com',\n\t\t},\n\t\t{\n\t\t\tdisplayName: 'SSM Endpoint',\n\t\t\tname: 'ssmEndpoint',\n\t\t\tdescription: 'Endpoint for AWS Systems Manager (SSM)',\n\t\t\ttype: 'string',\n\t\t\tdisplayOptions: {\n\t\t\t\tshow: {\n\t\t\t\t\tcustomEndpoints: [true],\n\t\t\t\t},\n\t\t\t},\n\t\t\tdefault: '',\n\t\t\tplaceholder: 'https://ssm.{region}.amazonaws.com',\n\t\t},\n\t];\n\n\tasync authenticate(\n\t\trawCredentials: ICredentialDataDecryptedObject,\n\t\trequestOptions: IHttpRequestOptions,\n\t): Promise<IHttpRequestOptions> {\n\t\tconst credentials = rawCredentials as AwsCredentialsType;\n\t\tlet endpoint: URL;\n\t\tlet service = requestOptions.qs?.service as string;\n\t\tlet path = (requestOptions.qs?.path as string) ?? '';\n\t\tconst method = requestOptions.method;\n\t\tlet body = requestOptions.body;\n\n\t\tlet region = credentials.region;\n\t\tif (requestOptions.qs?._region) {\n\t\t\tregion = requestOptions.qs._region as AWSRegion;\n\t\t\tdelete requestOptions.qs._region;\n\t\t}\n\n\t\tlet query = requestOptions.qs?.query as IDataObject;\n\t\t// ! Workaround as we still use the IRequestOptions interface which uses uri instead of url\n\t\t// ! To change when we replace the interface with IHttpRequestOptions\n\t\tconst requestWithUri = requestOptions as unknown as IRequestOptions;\n\t\tif (requestWithUri.uri) {\n\t\t\trequestOptions.url = requestWithUri.uri;\n\t\t\tendpoint = new URL(requestOptions.url);\n\t\t\tif (service === 'sts') {\n\t\t\t\ttry {\n\t\t\t\t\tif (requestWithUri.qs?.Action !== 'GetCallerIdentity') {\n\t\t\t\t\t\tquery = requestWithUri.qs as IDataObject;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tendpoint.searchParams.set('Action', 'GetCallerIdentity');\n\t\t\t\t\t\tendpoint.searchParams.set('Version', '2011-06-15');\n\t\t\t\t\t}\n\t\t\t\t} catch (err) {\n\t\t\t\t\tconsole.error(err);\n\t\t\t\t}\n\t\t\t}\n\t\t\tconst parsed = parseAwsUrl(endpoint);\n\t\t\tservice = parsed.service;\n\t\t\tif (parsed.region) {\n\t\t\t\tregion = parsed.region;\n\t\t\t}\n\t\t} else {\n\t\t\tif (!requestOptions.baseURL && !requestOptions.url) {\n\t\t\t\tlet endpointString: string;\n\t\t\t\tif (service === 'lambda' && credentials.lambdaEndpoint) {\n\t\t\t\t\tendpointString = credentials.lambdaEndpoint;\n\t\t\t\t} else if (service === 'sns' && credentials.snsEndpoint) {\n\t\t\t\t\tendpointString = credentials.snsEndpoint;\n\t\t\t\t} else if (service === 'sqs' && credentials.sqsEndpoint) {\n\t\t\t\t\tendpointString = credentials.sqsEndpoint;\n\t\t\t\t} else if (service === 's3' && credentials.s3Endpoint) {\n\t\t\t\t\tendpointString = credentials.s3Endpoint;\n\t\t\t\t} else if (service === 'ses' && credentials.sesEndpoint) {\n\t\t\t\t\tendpointString = credentials.sesEndpoint;\n\t\t\t\t} else if (service === 'rekognition' && credentials.rekognitionEndpoint) {\n\t\t\t\t\tendpointString = credentials.rekognitionEndpoint;\n\t\t\t\t} else if (service === 'sqs' && credentials.sqsEndpoint) {\n\t\t\t\t\tendpointString = credentials.sqsEndpoint;\n\t\t\t\t} else if (service) {\n\t\t\t\t\tendpointString = `https://${service}.${region}.amazonaws.com`;\n\t\t\t\t} else if (service === 'ssm' && credentials.ssmEndpoint) {\n\t\t\t\t\tendpointString = credentials.ssmEndpoint;\n\t\t\t\t}\n\t\t\t\tendpoint = new URL(endpointString!.replace('{region}', region) + path);\n\t\t\t} else {\n\t\t\t\t// If no endpoint is set, we try to decompose the path and use the default endpoint\n\t\t\t\tconst customUrl = new URL(`${requestOptions.baseURL!}${requestOptions.url}${path}`);\n\t\t\t\tconst parsed = parseAwsUrl(customUrl);\n\t\t\t\tservice = parsed.service;\n\t\t\t\tif (parsed.region) {\n\t\t\t\t\tregion = parsed.region;\n\t\t\t\t}\n\t\t\t\tif (service === 'sts') {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tcustomUrl.searchParams.set('Action', 'GetCallerIdentity');\n\t\t\t\t\t\tcustomUrl.searchParams.set('Version', '2011-06-15');\n\t\t\t\t\t} catch (err) {\n\t\t\t\t\t\tconsole.error(err);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tendpoint = customUrl;\n\t\t\t}\n\t\t}\n\n\t\tif (query && Object.keys(query).length !== 0) {\n\t\t\tObject.keys(query).forEach((key) => {\n\t\t\t\tendpoint.searchParams.append(key, query[key] as string);\n\t\t\t});\n\t\t}\n\n\t\tif (body && typeof body === 'object' && isObjectEmpty(body)) {\n\t\t\tbody = '';\n\t\t}\n\n\t\tpath = endpoint.pathname + endpoint.search;\n\n\t\t// ! aws4.sign *must* have the body to sign, but we might have .form instead of .body\n\t\tconst requestWithForm = requestOptions as unknown as { form?: Record<string, string> };\n\t\tlet bodyContent = body !== '' ? body : undefined;\n\t\tlet contentTypeHeader: string | undefined = undefined;\n\t\tif (requestWithForm.form) {\n\t\t\tconst params = new URLSearchParams();\n\t\t\tfor (const key in requestWithForm.form) {\n\t\t\t\tparams.append(key, requestWithForm.form[key]);\n\t\t\t}\n\t\t\tbodyContent = params.toString();\n\t\t\tcontentTypeHeader = 'application/x-www-form-urlencoded';\n\t\t}\n\n\t\tconst signOpts = {\n\t\t\t...requestOptions,\n\t\t\theaders: {\n\t\t\t\t...(requestOptions.headers ?? {}),\n\t\t\t\t...(contentTypeHeader && { 'content-type': contentTypeHeader }),\n\t\t\t},\n\t\t\thost: endpoint.host,\n\t\t\tmethod,\n\t\t\tpath,\n\t\t\tbody: bodyContent,\n\t\t\tregion,\n\t\t} as Request;\n\n\t\tconst securityHeaders = {\n\t\t\taccessKeyId: `${credentials.accessKeyId}`.trim(),\n\t\t\tsecretAccessKey: `${credentials.secretAccessKey}`.trim(),\n\t\t\tsessionToken: credentials.temporaryCredentials\n\t\t\t\t? `${credentials.sessionToken}`.trim()\n\t\t\t\t: undefined,\n\t\t};\n\t\ttry {\n\t\t\tsign(signOpts, securityHeaders);\n\t\t} catch (err) {\n\t\t\tconsole.error(err);\n\t\t}\n\t\tconst options: IHttpRequestOptions = {\n\t\t\t...requestOptions,\n\t\t\theaders: signOpts.headers,\n\t\t\tmethod,\n\t\t\turl: endpoint.origin + path,\n\t\t\tbody: signOpts.body,\n\t\t\tqs: undefined, // override since it's already in the url\n\t\t};\n\n\t\treturn options;\n\t}\n\n\ttest: ICredentialTestRequest = {\n\t\trequest: {\n\t\t\tbaseURL: '=https://sts.{{$credentials.region}}.amazonaws.com',\n\t\t\turl: '?Action=GetCallerIdentity&Version=2011-06-15',\n\t\t\tmethod: 'POST',\n\t\t},\n\t};\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,kBAAqB;AAUrB,0BAA8B;AAEvB,MAAM,UAAU;AAAA,EACtB;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,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","names":[]}
1
+ {"version":3,"sources":["../../credentials/Aws.credentials.ts"],"sourcesContent":["import type { Request } from 'aws4';\nimport { sign } from 'aws4';\nimport type {\n\tICredentialDataDecryptedObject,\n\tICredentialTestRequest,\n\tICredentialType,\n\tIDataObject,\n\tIHttpRequestOptions,\n\tINodeProperties,\n\tIRequestOptions,\n} from 'n8n-workflow';\nimport { isObjectEmpty } from 'n8n-workflow';\n\nexport const regions = [\n\t{\n\t\tname: 'af-south-1',\n\t\tdisplayName: 'Africa',\n\t\tlocation: 'Cape Town',\n\t},\n\t{\n\t\tname: 'ap-east-1',\n\t\tdisplayName: 'Asia Pacific',\n\t\tlocation: 'Hong Kong',\n\t},\n\t{\n\t\tname: 'ap-south-1',\n\t\tdisplayName: 'Asia Pacific',\n\t\tlocation: 'Mumbai',\n\t},\n\t{\n\t\tname: 'ap-south-2',\n\t\tdisplayName: 'Asia Pacific',\n\t\tlocation: 'Hyderabad',\n\t},\n\t{\n\t\tname: 'ap-southeast-1',\n\t\tdisplayName: 'Asia Pacific',\n\t\tlocation: 'Singapore',\n\t},\n\t{\n\t\tname: 'ap-southeast-2',\n\t\tdisplayName: 'Asia Pacific',\n\t\tlocation: 'Sydney',\n\t},\n\t{\n\t\tname: 'ap-southeast-3',\n\t\tdisplayName: 'Asia Pacific',\n\t\tlocation: 'Jakarta',\n\t},\n\t{\n\t\tname: 'ap-southeast-4',\n\t\tdisplayName: 'Asia Pacific',\n\t\tlocation: 'Melbourne',\n\t},\n\t{\n\t\tname: 'ap-southeast-5',\n\t\tdisplayName: 'Asia Pacific',\n\t\tlocation: 'Malaysia',\n\t},\n\t{\n\t\tname: 'ap-southeast-7',\n\t\tdisplayName: 'Asia Pacific',\n\t\tlocation: 'Thailand',\n\t},\n\t{\n\t\tname: 'ap-northeast-1',\n\t\tdisplayName: 'Asia Pacific',\n\t\tlocation: 'Tokyo',\n\t},\n\t{\n\t\tname: 'ap-northeast-2',\n\t\tdisplayName: 'Asia Pacific',\n\t\tlocation: 'Seoul',\n\t},\n\t{\n\t\tname: 'ap-northeast-3',\n\t\tdisplayName: 'Asia Pacific',\n\t\tlocation: 'Osaka',\n\t},\n\t{\n\t\tname: 'ca-central-1',\n\t\tdisplayName: 'Canada',\n\t\tlocation: 'Central',\n\t},\n\t{\n\t\tname: 'ca-west-1',\n\t\tdisplayName: 'Canada West',\n\t\tlocation: 'Calgary',\n\t},\n\t{\n\t\tname: 'cn-north-1',\n\t\tdisplayName: 'China',\n\t\tlocation: 'Beijing',\n\t},\n\t{\n\t\tname: 'cn-northwest-1',\n\t\tdisplayName: 'China',\n\t\tlocation: 'Ningxia',\n\t},\n\t{\n\t\tname: 'eu-central-1',\n\t\tdisplayName: 'Europe',\n\t\tlocation: 'Frankfurt',\n\t},\n\t{\n\t\tname: 'eu-central-2',\n\t\tdisplayName: 'Europe',\n\t\tlocation: 'Zurich',\n\t},\n\t{\n\t\tname: 'eu-north-1',\n\t\tdisplayName: 'Europe',\n\t\tlocation: 'Stockholm',\n\t},\n\t{\n\t\tname: 'eu-south-1',\n\t\tdisplayName: 'Europe',\n\t\tlocation: 'Milan',\n\t},\n\t{\n\t\tname: 'eu-south-2',\n\t\tdisplayName: 'Europe',\n\t\tlocation: 'Spain',\n\t},\n\t{\n\t\tname: 'eu-west-1',\n\t\tdisplayName: 'Europe',\n\t\tlocation: 'Ireland',\n\t},\n\t{\n\t\tname: 'eu-west-2',\n\t\tdisplayName: 'Europe',\n\t\tlocation: 'London',\n\t},\n\t{\n\t\tname: 'eu-west-3',\n\t\tdisplayName: 'Europe',\n\t\tlocation: 'Paris',\n\t},\n\t{\n\t\tname: 'il-central-1',\n\t\tdisplayName: 'Israel',\n\t\tlocation: 'Tel Aviv',\n\t},\n\t{\n\t\tname: 'me-central-1',\n\t\tdisplayName: 'Middle East',\n\t\tlocation: 'UAE',\n\t},\n\t{\n\t\tname: 'me-south-1',\n\t\tdisplayName: 'Middle East',\n\t\tlocation: 'Bahrain',\n\t},\n\t{\n\t\tname: 'mx-central-1',\n\t\tdisplayName: 'Mexico',\n\t\tlocation: 'Central',\n\t},\n\t{\n\t\tname: 'sa-east-1',\n\t\tdisplayName: 'South America',\n\t\tlocation: 'São Paulo',\n\t},\n\t{\n\t\tname: 'us-east-1',\n\t\tdisplayName: 'US East',\n\t\tlocation: 'N. Virginia',\n\t},\n\t{\n\t\tname: 'us-east-2',\n\t\tdisplayName: 'US East',\n\t\tlocation: 'Ohio',\n\t},\n\t{\n\t\tname: 'us-gov-east-1',\n\t\tdisplayName: 'US East',\n\t\tlocation: 'GovCloud',\n\t},\n\t{\n\t\tname: 'us-west-1',\n\t\tdisplayName: 'US West',\n\t\tlocation: 'N. California',\n\t},\n\t{\n\t\tname: 'us-west-2',\n\t\tdisplayName: 'US West',\n\t\tlocation: 'Oregon',\n\t},\n\t{\n\t\tname: 'us-gov-west-1',\n\t\tdisplayName: 'US West',\n\t\tlocation: 'GovCloud',\n\t},\n] as const;\n\nexport type AWSRegion = (typeof regions)[number]['name'];\nexport type AwsCredentialsType = {\n\tregion: AWSRegion;\n\taccessKeyId: string;\n\tsecretAccessKey: string;\n\ttemporaryCredentials: boolean;\n\tcustomEndpoints: boolean;\n\tsessionToken?: string;\n\trekognitionEndpoint?: string;\n\tlambdaEndpoint?: string;\n\tsnsEndpoint?: string;\n\tsesEndpoint?: string;\n\tsqsEndpoint?: string;\n\ts3Endpoint?: string;\n\tssmEndpoint?: string;\n};\n\n// Some AWS services are global and don't have a region\n// https://docs.aws.amazon.com/general/latest/gr/rande.html#global-endpoints\n// Example: iam.amazonaws.com (global), s3.us-east-1.amazonaws.com (regional)\nfunction parseAwsUrl(url: URL): { region: AWSRegion | null; service: string } {\n\tconst [service, region] = url.hostname.replace('amazonaws.com', '').split('.');\n\treturn { service, region: region as AWSRegion };\n}\n\nexport class Aws implements ICredentialType {\n\tname = 'aws';\n\n\tdisplayName = 'AWS';\n\n\tdocumentationUrl = 'aws';\n\n\ticon = { light: 'file:icons/AWS.svg', dark: 'file:icons/AWS.dark.svg' } as const;\n\n\tproperties: INodeProperties[] = [\n\t\t{\n\t\t\tdisplayName: 'Region',\n\t\t\tname: 'region',\n\t\t\ttype: 'options',\n\t\t\toptions: regions.map((r) => ({\n\t\t\t\tname: `${r.displayName} (${r.location}) - ${r.name}`,\n\t\t\t\tvalue: r.name,\n\t\t\t})),\n\t\t\tdefault: 'us-east-1',\n\t\t},\n\t\t{\n\t\t\tdisplayName: 'Access Key ID',\n\t\t\tname: 'accessKeyId',\n\t\t\ttype: 'string',\n\t\t\tdefault: '',\n\t\t},\n\t\t{\n\t\t\tdisplayName: 'Secret Access Key',\n\t\t\tname: 'secretAccessKey',\n\t\t\ttype: 'string',\n\t\t\tdefault: '',\n\t\t\ttypeOptions: {\n\t\t\t\tpassword: true,\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tdisplayName: 'Temporary Security Credentials',\n\t\t\tname: 'temporaryCredentials',\n\t\t\tdescription: 'Support for temporary credentials from AWS STS',\n\t\t\ttype: 'boolean',\n\t\t\tdefault: false,\n\t\t},\n\t\t{\n\t\t\tdisplayName: 'Session Token',\n\t\t\tname: 'sessionToken',\n\t\t\ttype: 'string',\n\t\t\tdisplayOptions: {\n\t\t\t\tshow: {\n\t\t\t\t\ttemporaryCredentials: [true],\n\t\t\t\t},\n\t\t\t},\n\t\t\tdefault: '',\n\t\t\ttypeOptions: {\n\t\t\t\tpassword: true,\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tdisplayName: 'Custom Endpoints',\n\t\t\tname: 'customEndpoints',\n\t\t\ttype: 'boolean',\n\t\t\tdefault: false,\n\t\t},\n\t\t{\n\t\t\tdisplayName: 'Rekognition Endpoint',\n\t\t\tname: 'rekognitionEndpoint',\n\t\t\tdescription:\n\t\t\t\t'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.',\n\t\t\ttype: 'string',\n\t\t\tdisplayOptions: {\n\t\t\t\tshow: {\n\t\t\t\t\tcustomEndpoints: [true],\n\t\t\t\t},\n\t\t\t},\n\t\t\tdefault: '',\n\t\t\tplaceholder: 'https://rekognition.{region}.amazonaws.com',\n\t\t},\n\t\t{\n\t\t\tdisplayName: 'Lambda Endpoint',\n\t\t\tname: 'lambdaEndpoint',\n\t\t\tdescription:\n\t\t\t\t'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.',\n\t\t\ttype: 'string',\n\t\t\tdisplayOptions: {\n\t\t\t\tshow: {\n\t\t\t\t\tcustomEndpoints: [true],\n\t\t\t\t},\n\t\t\t},\n\t\t\tdefault: '',\n\t\t\tplaceholder: 'https://lambda.{region}.amazonaws.com',\n\t\t},\n\t\t{\n\t\t\tdisplayName: 'SNS Endpoint',\n\t\t\tname: 'snsEndpoint',\n\t\t\tdescription:\n\t\t\t\t'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.',\n\t\t\ttype: 'string',\n\t\t\tdisplayOptions: {\n\t\t\t\tshow: {\n\t\t\t\t\tcustomEndpoints: [true],\n\t\t\t\t},\n\t\t\t},\n\t\t\tdefault: '',\n\t\t\tplaceholder: 'https://sns.{region}.amazonaws.com',\n\t\t},\n\t\t{\n\t\t\tdisplayName: 'SES Endpoint',\n\t\t\tname: 'sesEndpoint',\n\t\t\tdescription:\n\t\t\t\t'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.',\n\t\t\ttype: 'string',\n\t\t\tdisplayOptions: {\n\t\t\t\tshow: {\n\t\t\t\t\tcustomEndpoints: [true],\n\t\t\t\t},\n\t\t\t},\n\t\t\tdefault: '',\n\t\t\tplaceholder: 'https://email.{region}.amazonaws.com',\n\t\t},\n\t\t{\n\t\t\tdisplayName: 'SQS Endpoint',\n\t\t\tname: 'sqsEndpoint',\n\t\t\tdescription:\n\t\t\t\t'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.',\n\t\t\ttype: 'string',\n\t\t\tdisplayOptions: {\n\t\t\t\tshow: {\n\t\t\t\t\tcustomEndpoints: [true],\n\t\t\t\t},\n\t\t\t},\n\t\t\tdefault: '',\n\t\t\tplaceholder: 'https://sqs.{region}.amazonaws.com',\n\t\t},\n\t\t{\n\t\t\tdisplayName: 'S3 Endpoint',\n\t\t\tname: 's3Endpoint',\n\t\t\tdescription:\n\t\t\t\t'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.',\n\t\t\ttype: 'string',\n\t\t\tdisplayOptions: {\n\t\t\t\tshow: {\n\t\t\t\t\tcustomEndpoints: [true],\n\t\t\t\t},\n\t\t\t},\n\t\t\tdefault: '',\n\t\t\tplaceholder: 'https://s3.{region}.amazonaws.com',\n\t\t},\n\t\t{\n\t\t\tdisplayName: 'SSM Endpoint',\n\t\t\tname: 'ssmEndpoint',\n\t\t\tdescription: 'Endpoint for AWS Systems Manager (SSM)',\n\t\t\ttype: 'string',\n\t\t\tdisplayOptions: {\n\t\t\t\tshow: {\n\t\t\t\t\tcustomEndpoints: [true],\n\t\t\t\t},\n\t\t\t},\n\t\t\tdefault: '',\n\t\t\tplaceholder: 'https://ssm.{region}.amazonaws.com',\n\t\t},\n\t];\n\n\tasync authenticate(\n\t\trawCredentials: ICredentialDataDecryptedObject,\n\t\trequestOptions: IHttpRequestOptions,\n\t): Promise<IHttpRequestOptions> {\n\t\tconst credentials = rawCredentials as AwsCredentialsType;\n\t\tlet endpoint: URL;\n\t\tlet service = requestOptions.qs?.service as string;\n\t\tlet path = (requestOptions.qs?.path as string) ?? '';\n\t\tconst method = requestOptions.method;\n\t\tlet body = requestOptions.body;\n\n\t\tlet region = credentials.region;\n\t\tif (requestOptions.qs?._region) {\n\t\t\tregion = requestOptions.qs._region as AWSRegion;\n\t\t\tdelete requestOptions.qs._region;\n\t\t}\n\n\t\tlet query = requestOptions.qs?.query as IDataObject;\n\t\t// ! Workaround as we still use the IRequestOptions interface which uses uri instead of url\n\t\t// ! To change when we replace the interface with IHttpRequestOptions\n\t\tconst requestWithUri = requestOptions as unknown as IRequestOptions;\n\t\tif (requestWithUri.uri) {\n\t\t\trequestOptions.url = requestWithUri.uri;\n\t\t\tendpoint = new URL(requestOptions.url);\n\t\t\tif (service === 'sts') {\n\t\t\t\ttry {\n\t\t\t\t\tif (requestWithUri.qs?.Action !== 'GetCallerIdentity') {\n\t\t\t\t\t\tquery = requestWithUri.qs as IDataObject;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tendpoint.searchParams.set('Action', 'GetCallerIdentity');\n\t\t\t\t\t\tendpoint.searchParams.set('Version', '2011-06-15');\n\t\t\t\t\t}\n\t\t\t\t} catch (err) {\n\t\t\t\t\tconsole.error(err);\n\t\t\t\t}\n\t\t\t}\n\t\t\tconst parsed = parseAwsUrl(endpoint);\n\t\t\tservice = parsed.service;\n\t\t\tif (parsed.region) {\n\t\t\t\tregion = parsed.region;\n\t\t\t}\n\t\t} else {\n\t\t\tif (!requestOptions.baseURL && !requestOptions.url) {\n\t\t\t\tlet endpointString: string;\n\t\t\t\tif (service === 'lambda' && credentials.lambdaEndpoint) {\n\t\t\t\t\tendpointString = credentials.lambdaEndpoint;\n\t\t\t\t} else if (service === 'sns' && credentials.snsEndpoint) {\n\t\t\t\t\tendpointString = credentials.snsEndpoint;\n\t\t\t\t} else if (service === 'sqs' && credentials.sqsEndpoint) {\n\t\t\t\t\tendpointString = credentials.sqsEndpoint;\n\t\t\t\t} else if (service === 's3' && credentials.s3Endpoint) {\n\t\t\t\t\tendpointString = credentials.s3Endpoint;\n\t\t\t\t} else if (service === 'ses' && credentials.sesEndpoint) {\n\t\t\t\t\tendpointString = credentials.sesEndpoint;\n\t\t\t\t} else if (service === 'rekognition' && credentials.rekognitionEndpoint) {\n\t\t\t\t\tendpointString = credentials.rekognitionEndpoint;\n\t\t\t\t} else if (service) {\n\t\t\t\t\tendpointString = `https://${service}.${region}.amazonaws.com`;\n\t\t\t\t} else if (service === 'ssm' && credentials.ssmEndpoint) {\n\t\t\t\t\tendpointString = credentials.ssmEndpoint;\n\t\t\t\t}\n\t\t\t\tendpoint = new URL(endpointString!.replace('{region}', region) + path);\n\t\t\t} else {\n\t\t\t\t// If no endpoint is set, we try to decompose the path and use the default endpoint\n\t\t\t\tconst customUrl = new URL(`${requestOptions.baseURL!}${requestOptions.url}${path}`);\n\t\t\t\tconst parsed = parseAwsUrl(customUrl);\n\t\t\t\tservice = parsed.service;\n\t\t\t\tif (parsed.region) {\n\t\t\t\t\tregion = parsed.region;\n\t\t\t\t}\n\t\t\t\tif (service === 'sts') {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tcustomUrl.searchParams.set('Action', 'GetCallerIdentity');\n\t\t\t\t\t\tcustomUrl.searchParams.set('Version', '2011-06-15');\n\t\t\t\t\t} catch (err) {\n\t\t\t\t\t\tconsole.error(err);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tendpoint = customUrl;\n\t\t\t}\n\t\t}\n\n\t\tif (query && Object.keys(query).length !== 0) {\n\t\t\tObject.keys(query).forEach((key) => {\n\t\t\t\tendpoint.searchParams.append(key, query[key] as string);\n\t\t\t});\n\t\t}\n\n\t\tif (body && typeof body === 'object' && isObjectEmpty(body)) {\n\t\t\tbody = '';\n\t\t}\n\n\t\tpath = endpoint.pathname + endpoint.search;\n\n\t\t// ! aws4.sign *must* have the body to sign, but we might have .form instead of .body\n\t\tconst requestWithForm = requestOptions as unknown as { form?: Record<string, string> };\n\t\tlet bodyContent = body !== '' ? body : undefined;\n\t\tlet contentTypeHeader: string | undefined = undefined;\n\t\tif (requestWithForm.form) {\n\t\t\tconst params = new URLSearchParams();\n\t\t\tfor (const key in requestWithForm.form) {\n\t\t\t\tparams.append(key, requestWithForm.form[key]);\n\t\t\t}\n\t\t\tbodyContent = params.toString();\n\t\t\tcontentTypeHeader = 'application/x-www-form-urlencoded';\n\t\t}\n\n\t\tconst signOpts = {\n\t\t\t...requestOptions,\n\t\t\theaders: {\n\t\t\t\t...(requestOptions.headers ?? {}),\n\t\t\t\t...(contentTypeHeader && { 'content-type': contentTypeHeader }),\n\t\t\t},\n\t\t\thost: endpoint.host,\n\t\t\tmethod,\n\t\t\tpath,\n\t\t\tbody: bodyContent,\n\t\t\tregion,\n\t\t} as Request;\n\n\t\tconst securityHeaders = {\n\t\t\taccessKeyId: `${credentials.accessKeyId}`.trim(),\n\t\t\tsecretAccessKey: `${credentials.secretAccessKey}`.trim(),\n\t\t\tsessionToken: credentials.temporaryCredentials\n\t\t\t\t? `${credentials.sessionToken}`.trim()\n\t\t\t\t: undefined,\n\t\t};\n\t\ttry {\n\t\t\tsign(signOpts, securityHeaders);\n\t\t} catch (err) {\n\t\t\tconsole.error(err);\n\t\t}\n\t\tconst options: IHttpRequestOptions = {\n\t\t\t...requestOptions,\n\t\t\theaders: signOpts.headers,\n\t\t\tmethod,\n\t\t\turl: endpoint.origin + path,\n\t\t\tbody: signOpts.body,\n\t\t\tqs: undefined, // override since it's already in the url\n\t\t};\n\n\t\treturn options;\n\t}\n\n\ttest: ICredentialTestRequest = {\n\t\trequest: {\n\t\t\tbaseURL: '=https://sts.{{$credentials.region}}.amazonaws.com',\n\t\t\turl: '?Action=GetCallerIdentity&Version=2011-06-15',\n\t\t\tmethod: 'POST',\n\t\t},\n\t};\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,kBAAqB;AAUrB,0BAA8B;AAEvB,MAAM,UAAU;AAAA,EACtB;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACX;AAAA,EACA;AAAA,IACC,MAAM;AAAA,IACN,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","names":[]}
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var JinaAiApi_credentials_exports = {};
20
+ __export(JinaAiApi_credentials_exports, {
21
+ JinaAiApi: () => JinaAiApi
22
+ });
23
+ module.exports = __toCommonJS(JinaAiApi_credentials_exports);
24
+ class JinaAiApi {
25
+ constructor() {
26
+ this.name = "jinaAiApi";
27
+ this.displayName = "Jina AI API";
28
+ this.documentationUrl = "jinaAi";
29
+ this.properties = [
30
+ {
31
+ displayName: "API Key",
32
+ name: "apiKey",
33
+ type: "string",
34
+ typeOptions: { password: true },
35
+ default: ""
36
+ }
37
+ ];
38
+ this.authenticate = {
39
+ type: "generic",
40
+ properties: {
41
+ headers: {
42
+ Authorization: "=Bearer {{ $credentials?.apiKey }}"
43
+ }
44
+ }
45
+ };
46
+ this.test = {
47
+ request: {
48
+ method: "GET",
49
+ url: "https://embeddings-dashboard-api.jina.ai/api/v1/api_key/fe_user",
50
+ qs: {
51
+ api_key: "={{$credentials.apiKey}}"
52
+ }
53
+ }
54
+ };
55
+ }
56
+ }
57
+ // Annotate the CommonJS export names for ESM import in node:
58
+ 0 && (module.exports = {
59
+ JinaAiApi
60
+ });
61
+ //# sourceMappingURL=JinaAiApi.credentials.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../credentials/JinaAiApi.credentials.ts"],"sourcesContent":["import type {\n\tIAuthenticateGeneric,\n\tICredentialTestRequest,\n\tICredentialType,\n\tINodeProperties,\n} from 'n8n-workflow';\n\nexport class JinaAiApi implements ICredentialType {\n\tname = 'jinaAiApi';\n\n\tdisplayName = 'Jina AI API';\n\n\tdocumentationUrl = 'jinaAi';\n\n\tproperties: INodeProperties[] = [\n\t\t{\n\t\t\tdisplayName: 'API Key',\n\t\t\tname: 'apiKey',\n\t\t\ttype: 'string',\n\t\t\ttypeOptions: { password: true },\n\t\t\tdefault: '',\n\t\t},\n\t];\n\n\tauthenticate: IAuthenticateGeneric = {\n\t\ttype: 'generic',\n\t\tproperties: {\n\t\t\theaders: {\n\t\t\t\tAuthorization: '=Bearer {{ $credentials?.apiKey }}',\n\t\t\t},\n\t\t},\n\t};\n\n\ttest: ICredentialTestRequest = {\n\t\trequest: {\n\t\t\tmethod: 'GET',\n\t\t\turl: 'https://embeddings-dashboard-api.jina.ai/api/v1/api_key/fe_user',\n\t\t\tqs: {\n\t\t\t\tapi_key: '={{$credentials.apiKey}}',\n\t\t\t},\n\t\t},\n\t};\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAOO,MAAM,UAAqC;AAAA,EAA3C;AACN,gBAAO;AAEP,uBAAc;AAEd,4BAAmB;AAEnB,sBAAgC;AAAA,MAC/B;AAAA,QACC,aAAa;AAAA,QACb,MAAM;AAAA,QACN,MAAM;AAAA,QACN,aAAa,EAAE,UAAU,KAAK;AAAA,QAC9B,SAAS;AAAA,MACV;AAAA,IACD;AAEA,wBAAqC;AAAA,MACpC,MAAM;AAAA,MACN,YAAY;AAAA,QACX,SAAS;AAAA,UACR,eAAe;AAAA,QAChB;AAAA,MACD;AAAA,IACD;AAEA,gBAA+B;AAAA,MAC9B,SAAS;AAAA,QACR,QAAQ;AAAA,QACR,KAAK;AAAA,QACL,IAAI;AAAA,UACH,SAAS;AAAA,QACV;AAAA,MACD;AAAA,IACD;AAAA;AACD;","names":[]}
@@ -28,7 +28,7 @@ class MicrosoftAzureCosmosDbSharedKeyApi {
28
28
  constructor() {
29
29
  this.name = "microsoftAzureCosmosDbSharedKeyApi";
30
30
  this.displayName = "Microsoft Azure Cosmos DB API";
31
- this.documentationUrl = "microsoftAzureCosmosdb";
31
+ this.documentationUrl = "azurecosmosdb";
32
32
  this.properties = [
33
33
  {
34
34
  displayName: "Account",
@@ -1 +1 @@
1
- {"version":3,"sources":["../../credentials/MicrosoftAzureCosmosDbSharedKeyApi.credentials.ts"],"sourcesContent":["import { createHmac } from 'crypto';\nimport type {\n\tICredentialDataDecryptedObject,\n\tICredentialType,\n\tICredentialTestRequest,\n\tIHttpRequestOptions,\n\tINodeProperties,\n\tIRequestOptions,\n} from 'n8n-workflow';\nimport { OperationalError } from 'n8n-workflow';\n\nimport {\n\tCURRENT_VERSION,\n\tHeaderConstants,\n\tRESOURCE_TYPES,\n} from '../nodes/Microsoft/AzureCosmosDb/helpers/constants';\n\nexport class MicrosoftAzureCosmosDbSharedKeyApi implements ICredentialType {\n\tname = 'microsoftAzureCosmosDbSharedKeyApi';\n\n\tdisplayName = 'Microsoft Azure Cosmos DB API';\n\n\tdocumentationUrl = 'microsoftAzureCosmosdb';\n\n\tproperties: INodeProperties[] = [\n\t\t{\n\t\t\tdisplayName: 'Account',\n\t\t\tname: 'account',\n\t\t\tdefault: '',\n\t\t\tdescription: 'Account name',\n\t\t\trequired: true,\n\t\t\ttype: 'string',\n\t\t},\n\t\t{\n\t\t\tdisplayName: 'Key',\n\t\t\tname: 'key',\n\t\t\tdefault: '',\n\t\t\tdescription: 'Account key',\n\t\t\trequired: true,\n\t\t\ttype: 'string',\n\t\t\ttypeOptions: {\n\t\t\t\tpassword: true,\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tdisplayName: 'Database',\n\t\t\tname: 'database',\n\t\t\tdefault: '',\n\t\t\tdescription: 'Database name',\n\t\t\trequired: true,\n\t\t\ttype: 'string',\n\t\t},\n\t];\n\n\tasync authenticate(\n\t\tcredentials: ICredentialDataDecryptedObject,\n\t\trequestOptions: IHttpRequestOptions,\n\t): Promise<IHttpRequestOptions> {\n\t\tconst date = new Date().toUTCString();\n\n\t\trequestOptions.headers ??= {};\n\t\trequestOptions.headers = {\n\t\t\t...requestOptions.headers,\n\t\t\t'x-ms-date': date,\n\t\t\t'x-ms-version': CURRENT_VERSION,\n\t\t\t'Cache-Control': 'no-cache',\n\t\t};\n\n\t\t// HttpRequest node uses IRequestOptions.uri\n\t\tconst url = new URL(\n\t\t\t(requestOptions as IRequestOptions).uri ?? requestOptions.baseURL + requestOptions.url,\n\t\t);\n\n\t\tconst pathSegments = url.pathname.split('/').filter(Boolean);\n\n\t\tconst foundResource = RESOURCE_TYPES.map((type) => ({\n\t\t\ttype,\n\t\t\tindex: pathSegments.lastIndexOf(type),\n\t\t}))\n\t\t\t.filter(({ index }) => index !== -1)\n\t\t\t.sort((a, b) => b.index - a.index)\n\t\t\t.shift();\n\n\t\tif (!foundResource) {\n\t\t\tthrow new OperationalError('Unable to determine the resource type from the URL');\n\t\t}\n\n\t\tconst { type, index } = foundResource;\n\t\tconst resourceId =\n\t\t\tpathSegments[index + 1] !== undefined\n\t\t\t\t? `${pathSegments.slice(0, index).join('/')}/${type}/${pathSegments[index + 1]}`\n\t\t\t\t: pathSegments.slice(0, index).join('/');\n\n\t\tconst key = Buffer.from(credentials.key as string, 'base64');\n\t\tconst payload = `${(requestOptions.method ?? 'GET').toLowerCase()}\\n${type.toLowerCase()}\\n${resourceId}\\n${date.toLowerCase()}\\n\\n`;\n\t\tconst hmacSha256 = createHmac('sha256', key);\n\t\tconst signature = hmacSha256.update(payload, 'utf8').digest('base64');\n\n\t\trequestOptions.headers[HeaderConstants.AUTHORIZATION] = encodeURIComponent(\n\t\t\t`type=master&ver=1.0&sig=${signature}`,\n\t\t);\n\n\t\treturn requestOptions;\n\t}\n\n\ttest: ICredentialTestRequest = {\n\t\trequest: {\n\t\t\tbaseURL:\n\t\t\t\t'=https://{{ $credentials.account }}.documents.azure.com/dbs/{{ $credentials.database }}',\n\t\t\turl: '/colls',\n\t\t},\n\t};\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAA2B;AAS3B,0BAAiC;AAEjC,uBAIO;AAEA,MAAM,mCAA8D;AAAA,EAApE;AACN,gBAAO;AAEP,uBAAc;AAEd,4BAAmB;AAEnB,sBAAgC;AAAA,MAC/B;AAAA,QACC,aAAa;AAAA,QACb,MAAM;AAAA,QACN,SAAS;AAAA,QACT,aAAa;AAAA,QACb,UAAU;AAAA,QACV,MAAM;AAAA,MACP;AAAA,MACA;AAAA,QACC,aAAa;AAAA,QACb,MAAM;AAAA,QACN,SAAS;AAAA,QACT,aAAa;AAAA,QACb,UAAU;AAAA,QACV,MAAM;AAAA,QACN,aAAa;AAAA,UACZ,UAAU;AAAA,QACX;AAAA,MACD;AAAA,MACA;AAAA,QACC,aAAa;AAAA,QACb,MAAM;AAAA,QACN,SAAS;AAAA,QACT,aAAa;AAAA,QACb,UAAU;AAAA,QACV,MAAM;AAAA,MACP;AAAA,IACD;AAqDA,gBAA+B;AAAA,MAC9B,SAAS;AAAA,QACR,SACC;AAAA,QACD,KAAK;AAAA,MACN;AAAA,IACD;AAAA;AAAA,EAzDA,MAAM,aACL,aACA,gBAC+B;AAC/B,UAAM,QAAO,oBAAI,KAAK,GAAE,YAAY;AAEpC,mBAAe,YAAY,CAAC;AAC5B,mBAAe,UAAU;AAAA,MACxB,GAAG,eAAe;AAAA,MAClB,aAAa;AAAA,MACb,gBAAgB;AAAA,MAChB,iBAAiB;AAAA,IAClB;AAGA,UAAM,MAAM,IAAI;AAAA,MACd,eAAmC,OAAO,eAAe,UAAU,eAAe;AAAA,IACpF;AAEA,UAAM,eAAe,IAAI,SAAS,MAAM,GAAG,EAAE,OAAO,OAAO;AAE3D,UAAM,gBAAgB,gCAAe,IAAI,CAACA,WAAU;AAAA,MACnD,MAAAA;AAAA,MACA,OAAO,aAAa,YAAYA,KAAI;AAAA,IACrC,EAAE,EACA,OAAO,CAAC,EAAE,OAAAC,OAAM,MAAMA,WAAU,EAAE,EAClC,KAAK,CAAC,GAAG,MAAM,EAAE,QAAQ,EAAE,KAAK,EAChC,MAAM;AAER,QAAI,CAAC,eAAe;AACnB,YAAM,IAAI,qCAAiB,oDAAoD;AAAA,IAChF;AAEA,UAAM,EAAE,MAAM,MAAM,IAAI;AACxB,UAAM,aACL,aAAa,QAAQ,CAAC,MAAM,SACzB,GAAG,aAAa,MAAM,GAAG,KAAK,EAAE,KAAK,GAAG,CAAC,IAAI,IAAI,IAAI,aAAa,QAAQ,CAAC,CAAC,KAC5E,aAAa,MAAM,GAAG,KAAK,EAAE,KAAK,GAAG;AAEzC,UAAM,MAAM,OAAO,KAAK,YAAY,KAAe,QAAQ;AAC3D,UAAM,UAAU,IAAI,eAAe,UAAU,OAAO,YAAY,CAAC;AAAA,EAAK,KAAK,YAAY,CAAC;AAAA,EAAK,UAAU;AAAA,EAAK,KAAK,YAAY,CAAC;AAAA;AAAA;AAC9H,UAAM,iBAAa,0BAAW,UAAU,GAAG;AAC3C,UAAM,YAAY,WAAW,OAAO,SAAS,MAAM,EAAE,OAAO,QAAQ;AAEpE,mBAAe,QAAQ,iCAAgB,aAAa,IAAI;AAAA,MACvD,2BAA2B,SAAS;AAAA,IACrC;AAEA,WAAO;AAAA,EACR;AASD;","names":["type","index"]}
1
+ {"version":3,"sources":["../../credentials/MicrosoftAzureCosmosDbSharedKeyApi.credentials.ts"],"sourcesContent":["import { createHmac } from 'crypto';\nimport type {\n\tICredentialDataDecryptedObject,\n\tICredentialType,\n\tICredentialTestRequest,\n\tIHttpRequestOptions,\n\tINodeProperties,\n\tIRequestOptions,\n} from 'n8n-workflow';\nimport { OperationalError } from 'n8n-workflow';\n\nimport {\n\tCURRENT_VERSION,\n\tHeaderConstants,\n\tRESOURCE_TYPES,\n} from '../nodes/Microsoft/AzureCosmosDb/helpers/constants';\n\nexport class MicrosoftAzureCosmosDbSharedKeyApi implements ICredentialType {\n\tname = 'microsoftAzureCosmosDbSharedKeyApi';\n\n\tdisplayName = 'Microsoft Azure Cosmos DB API';\n\n\tdocumentationUrl = 'azurecosmosdb';\n\n\tproperties: INodeProperties[] = [\n\t\t{\n\t\t\tdisplayName: 'Account',\n\t\t\tname: 'account',\n\t\t\tdefault: '',\n\t\t\tdescription: 'Account name',\n\t\t\trequired: true,\n\t\t\ttype: 'string',\n\t\t},\n\t\t{\n\t\t\tdisplayName: 'Key',\n\t\t\tname: 'key',\n\t\t\tdefault: '',\n\t\t\tdescription: 'Account key',\n\t\t\trequired: true,\n\t\t\ttype: 'string',\n\t\t\ttypeOptions: {\n\t\t\t\tpassword: true,\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tdisplayName: 'Database',\n\t\t\tname: 'database',\n\t\t\tdefault: '',\n\t\t\tdescription: 'Database name',\n\t\t\trequired: true,\n\t\t\ttype: 'string',\n\t\t},\n\t];\n\n\tasync authenticate(\n\t\tcredentials: ICredentialDataDecryptedObject,\n\t\trequestOptions: IHttpRequestOptions,\n\t): Promise<IHttpRequestOptions> {\n\t\tconst date = new Date().toUTCString();\n\n\t\trequestOptions.headers ??= {};\n\t\trequestOptions.headers = {\n\t\t\t...requestOptions.headers,\n\t\t\t'x-ms-date': date,\n\t\t\t'x-ms-version': CURRENT_VERSION,\n\t\t\t'Cache-Control': 'no-cache',\n\t\t};\n\n\t\t// HttpRequest node uses IRequestOptions.uri\n\t\tconst url = new URL(\n\t\t\t(requestOptions as IRequestOptions).uri ?? requestOptions.baseURL + requestOptions.url,\n\t\t);\n\n\t\tconst pathSegments = url.pathname.split('/').filter(Boolean);\n\n\t\tconst foundResource = RESOURCE_TYPES.map((type) => ({\n\t\t\ttype,\n\t\t\tindex: pathSegments.lastIndexOf(type),\n\t\t}))\n\t\t\t.filter(({ index }) => index !== -1)\n\t\t\t.sort((a, b) => b.index - a.index)\n\t\t\t.shift();\n\n\t\tif (!foundResource) {\n\t\t\tthrow new OperationalError('Unable to determine the resource type from the URL');\n\t\t}\n\n\t\tconst { type, index } = foundResource;\n\t\tconst resourceId =\n\t\t\tpathSegments[index + 1] !== undefined\n\t\t\t\t? `${pathSegments.slice(0, index).join('/')}/${type}/${pathSegments[index + 1]}`\n\t\t\t\t: pathSegments.slice(0, index).join('/');\n\n\t\tconst key = Buffer.from(credentials.key as string, 'base64');\n\t\tconst payload = `${(requestOptions.method ?? 'GET').toLowerCase()}\\n${type.toLowerCase()}\\n${resourceId}\\n${date.toLowerCase()}\\n\\n`;\n\t\tconst hmacSha256 = createHmac('sha256', key);\n\t\tconst signature = hmacSha256.update(payload, 'utf8').digest('base64');\n\n\t\trequestOptions.headers[HeaderConstants.AUTHORIZATION] = encodeURIComponent(\n\t\t\t`type=master&ver=1.0&sig=${signature}`,\n\t\t);\n\n\t\treturn requestOptions;\n\t}\n\n\ttest: ICredentialTestRequest = {\n\t\trequest: {\n\t\t\tbaseURL:\n\t\t\t\t'=https://{{ $credentials.account }}.documents.azure.com/dbs/{{ $credentials.database }}',\n\t\t\turl: '/colls',\n\t\t},\n\t};\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAA2B;AAS3B,0BAAiC;AAEjC,uBAIO;AAEA,MAAM,mCAA8D;AAAA,EAApE;AACN,gBAAO;AAEP,uBAAc;AAEd,4BAAmB;AAEnB,sBAAgC;AAAA,MAC/B;AAAA,QACC,aAAa;AAAA,QACb,MAAM;AAAA,QACN,SAAS;AAAA,QACT,aAAa;AAAA,QACb,UAAU;AAAA,QACV,MAAM;AAAA,MACP;AAAA,MACA;AAAA,QACC,aAAa;AAAA,QACb,MAAM;AAAA,QACN,SAAS;AAAA,QACT,aAAa;AAAA,QACb,UAAU;AAAA,QACV,MAAM;AAAA,QACN,aAAa;AAAA,UACZ,UAAU;AAAA,QACX;AAAA,MACD;AAAA,MACA;AAAA,QACC,aAAa;AAAA,QACb,MAAM;AAAA,QACN,SAAS;AAAA,QACT,aAAa;AAAA,QACb,UAAU;AAAA,QACV,MAAM;AAAA,MACP;AAAA,IACD;AAqDA,gBAA+B;AAAA,MAC9B,SAAS;AAAA,QACR,SACC;AAAA,QACD,KAAK;AAAA,MACN;AAAA,IACD;AAAA;AAAA,EAzDA,MAAM,aACL,aACA,gBAC+B;AAC/B,UAAM,QAAO,oBAAI,KAAK,GAAE,YAAY;AAEpC,mBAAe,YAAY,CAAC;AAC5B,mBAAe,UAAU;AAAA,MACxB,GAAG,eAAe;AAAA,MAClB,aAAa;AAAA,MACb,gBAAgB;AAAA,MAChB,iBAAiB;AAAA,IAClB;AAGA,UAAM,MAAM,IAAI;AAAA,MACd,eAAmC,OAAO,eAAe,UAAU,eAAe;AAAA,IACpF;AAEA,UAAM,eAAe,IAAI,SAAS,MAAM,GAAG,EAAE,OAAO,OAAO;AAE3D,UAAM,gBAAgB,gCAAe,IAAI,CAACA,WAAU;AAAA,MACnD,MAAAA;AAAA,MACA,OAAO,aAAa,YAAYA,KAAI;AAAA,IACrC,EAAE,EACA,OAAO,CAAC,EAAE,OAAAC,OAAM,MAAMA,WAAU,EAAE,EAClC,KAAK,CAAC,GAAG,MAAM,EAAE,QAAQ,EAAE,KAAK,EAChC,MAAM;AAER,QAAI,CAAC,eAAe;AACnB,YAAM,IAAI,qCAAiB,oDAAoD;AAAA,IAChF;AAEA,UAAM,EAAE,MAAM,MAAM,IAAI;AACxB,UAAM,aACL,aAAa,QAAQ,CAAC,MAAM,SACzB,GAAG,aAAa,MAAM,GAAG,KAAK,EAAE,KAAK,GAAG,CAAC,IAAI,IAAI,IAAI,aAAa,QAAQ,CAAC,CAAC,KAC5E,aAAa,MAAM,GAAG,KAAK,EAAE,KAAK,GAAG;AAEzC,UAAM,MAAM,OAAO,KAAK,YAAY,KAAe,QAAQ;AAC3D,UAAM,UAAU,IAAI,eAAe,UAAU,OAAO,YAAY,CAAC;AAAA,EAAK,KAAK,YAAY,CAAC;AAAA,EAAK,UAAU;AAAA,EAAK,KAAK,YAAY,CAAC;AAAA;AAAA;AAC9H,UAAM,iBAAa,0BAAW,UAAU,GAAG;AAC3C,UAAM,YAAY,WAAW,OAAO,SAAS,MAAM,EAAE,OAAO,QAAQ;AAEpE,mBAAe,QAAQ,iCAAgB,aAAa,IAAI;AAAA,MACvD,2BAA2B,SAAS;AAAA,IACrC;AAEA,WAAO;AAAA,EACR;AASD;","names":["type","index"]}
@@ -152,6 +152,7 @@
152
152
  "awsSns",
153
153
  "awsSnsTrigger",
154
154
  "awsCertificateManager",
155
+ "awsCognito",
155
156
  "awsComprehend",
156
157
  "awsDynamoDb",
157
158
  "awsElb",
@@ -1314,6 +1315,13 @@
1314
1315
  "jenkins"
1315
1316
  ]
1316
1317
  },
1318
+ "jinaAiApi": {
1319
+ "className": "JinaAiApi",
1320
+ "sourcePath": "dist/credentials/JinaAiApi.credentials.js",
1321
+ "supportedNodes": [
1322
+ "jinaAi"
1323
+ ]
1324
+ },
1317
1325
  "jiraSoftwareCloudApi": {
1318
1326
  "className": "JiraSoftwareCloudApi",
1319
1327
  "sourcePath": "dist/credentials/JiraSoftwareCloudApi.credentials.js",
@@ -95,6 +95,10 @@
95
95
  "className": "AwsCertificateManager",
96
96
  "sourcePath": "dist/nodes/Aws/CertificateManager/AwsCertificateManager.node.js"
97
97
  },
98
+ "awsCognito": {
99
+ "className": "AwsCognito",
100
+ "sourcePath": "dist/nodes/Aws/Cognito/AwsCognito.node.js"
101
+ },
98
102
  "awsComprehend": {
99
103
  "className": "AwsComprehend",
100
104
  "sourcePath": "dist/nodes/Aws/Comprehend/AwsComprehend.node.js"
@@ -759,6 +763,10 @@
759
763
  "className": "Jenkins",
760
764
  "sourcePath": "dist/nodes/Jenkins/Jenkins.node.js"
761
765
  },
766
+ "jinaAi": {
767
+ "className": "JinaAi",
768
+ "sourcePath": "dist/nodes/JinaAI/JinaAi.node.js"
769
+ },
762
770
  "jira": {
763
771
  "className": "Jira",
764
772
  "sourcePath": "dist/nodes/Jira/Jira.node.js"
@@ -4,9 +4,6 @@
4
4
  "created_at": {
5
5
  "type": "string"
6
6
  },
7
- "creator_id": {
8
- "type": "integer"
9
- },
10
7
  "entity": {
11
8
  "type": "object",
12
9
  "properties": {
@@ -43,5 +40,5 @@
43
40
  "type": "integer"
44
41
  }
45
42
  },
46
- "version": 1
43
+ "version": 2
47
44
  }
@@ -0,0 +1,47 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "data": {
5
+ "type": "object",
6
+ "properties": {
7
+ "modelResponse": {
8
+ "type": "string"
9
+ }
10
+ }
11
+ },
12
+ "meta": {
13
+ "type": "object",
14
+ "properties": {
15
+ "requestId": {
16
+ "type": "string"
17
+ },
18
+ "status": {
19
+ "type": "string"
20
+ },
21
+ "usage": {
22
+ "type": "object",
23
+ "properties": {
24
+ "credits": {
25
+ "type": "integer"
26
+ },
27
+ "id": {
28
+ "type": "string"
29
+ }
30
+ }
31
+ }
32
+ }
33
+ },
34
+ "warnings": {
35
+ "type": "array",
36
+ "items": {
37
+ "type": "object",
38
+ "properties": {
39
+ "message": {
40
+ "type": "string"
41
+ }
42
+ }
43
+ }
44
+ }
45
+ },
46
+ "version": 1
47
+ }
@@ -0,0 +1,102 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var AwsCognito_node_exports = {};
20
+ __export(AwsCognito_node_exports, {
21
+ AwsCognito: () => AwsCognito
22
+ });
23
+ module.exports = __toCommonJS(AwsCognito_node_exports);
24
+ var import_n8n_workflow = require("n8n-workflow");
25
+ var import_descriptions = require("./descriptions");
26
+ var import_utils = require("./helpers/utils");
27
+ var import_methods = require("./methods");
28
+ class AwsCognito {
29
+ constructor() {
30
+ this.description = {
31
+ displayName: "AWS Cognito",
32
+ name: "awsCognito",
33
+ icon: {
34
+ light: "file:cognito.svg",
35
+ dark: "file:cognito.svg"
36
+ },
37
+ group: ["output"],
38
+ version: 1,
39
+ subtitle: '={{$parameter["operation"] + ": " + $parameter["resource"]}}',
40
+ description: "Sends data to AWS Cognito",
41
+ defaults: {
42
+ name: "AWS Cognito"
43
+ },
44
+ inputs: [import_n8n_workflow.NodeConnectionTypes.Main],
45
+ outputs: [import_n8n_workflow.NodeConnectionTypes.Main],
46
+ credentials: [
47
+ {
48
+ name: "aws",
49
+ required: true
50
+ }
51
+ ],
52
+ requestDefaults: {
53
+ headers: {
54
+ "Content-Type": "application/x-amz-json-1.1"
55
+ },
56
+ qs: {
57
+ service: "cognito-idp",
58
+ _region: "={{$credentials.region}}"
59
+ }
60
+ },
61
+ properties: [
62
+ {
63
+ displayName: "Resource",
64
+ name: "resource",
65
+ type: "options",
66
+ noDataExpression: true,
67
+ default: "user",
68
+ routing: {
69
+ send: {
70
+ preSend: [import_utils.preSendStringifyBody]
71
+ }
72
+ },
73
+ options: [
74
+ {
75
+ name: "Group",
76
+ value: "group"
77
+ },
78
+ {
79
+ name: "User",
80
+ value: "user"
81
+ },
82
+ {
83
+ name: "User Pool",
84
+ value: "userPool"
85
+ }
86
+ ]
87
+ },
88
+ ...import_descriptions.group.description,
89
+ ...import_descriptions.user.description,
90
+ ...import_descriptions.userPool.description
91
+ ]
92
+ };
93
+ this.methods = {
94
+ listSearch: import_methods.listSearch
95
+ };
96
+ }
97
+ }
98
+ // Annotate the CommonJS export names for ESM import in node:
99
+ 0 && (module.exports = {
100
+ AwsCognito
101
+ });
102
+ //# sourceMappingURL=AwsCognito.node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../nodes/Aws/Cognito/AwsCognito.node.ts"],"sourcesContent":["import type { INodeType, INodeTypeDescription } from 'n8n-workflow';\nimport { NodeConnectionTypes } from 'n8n-workflow';\n\nimport { group, user, userPool } from './descriptions';\nimport { preSendStringifyBody } from './helpers/utils';\nimport { listSearch } from './methods';\n\nexport class AwsCognito implements INodeType {\n\tdescription: INodeTypeDescription = {\n\t\tdisplayName: 'AWS Cognito',\n\t\tname: 'awsCognito',\n\t\ticon: {\n\t\t\tlight: 'file:cognito.svg',\n\t\t\tdark: 'file:cognito.svg',\n\t\t},\n\t\tgroup: ['output'],\n\t\tversion: 1,\n\t\tsubtitle: '={{$parameter[\"operation\"] + \": \" + $parameter[\"resource\"]}}',\n\t\tdescription: 'Sends data to AWS Cognito',\n\t\tdefaults: {\n\t\t\tname: 'AWS Cognito',\n\t\t},\n\t\tinputs: [NodeConnectionTypes.Main],\n\t\toutputs: [NodeConnectionTypes.Main],\n\t\tcredentials: [\n\t\t\t{\n\t\t\t\tname: 'aws',\n\t\t\t\trequired: true,\n\t\t\t},\n\t\t],\n\t\trequestDefaults: {\n\t\t\theaders: {\n\t\t\t\t'Content-Type': 'application/x-amz-json-1.1',\n\t\t\t},\n\t\t\tqs: {\n\t\t\t\tservice: 'cognito-idp',\n\t\t\t\t_region: '={{$credentials.region}}',\n\t\t\t},\n\t\t},\n\t\tproperties: [\n\t\t\t{\n\t\t\t\tdisplayName: 'Resource',\n\t\t\t\tname: 'resource',\n\t\t\t\ttype: 'options',\n\t\t\t\tnoDataExpression: true,\n\t\t\t\tdefault: 'user',\n\t\t\t\trouting: {\n\t\t\t\t\tsend: {\n\t\t\t\t\t\tpreSend: [preSendStringifyBody],\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tname: 'Group',\n\t\t\t\t\t\tvalue: 'group',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tname: 'User',\n\t\t\t\t\t\tvalue: 'user',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tname: 'User Pool',\n\t\t\t\t\t\tvalue: 'userPool',\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t\t...group.description,\n\t\t\t...user.description,\n\t\t\t...userPool.description,\n\t\t],\n\t};\n\n\tmethods = {\n\t\tlistSearch,\n\t};\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,0BAAoC;AAEpC,0BAAsC;AACtC,mBAAqC;AACrC,qBAA2B;AAEpB,MAAM,WAAgC;AAAA,EAAtC;AACN,uBAAoC;AAAA,MACnC,aAAa;AAAA,MACb,MAAM;AAAA,MACN,MAAM;AAAA,QACL,OAAO;AAAA,QACP,MAAM;AAAA,MACP;AAAA,MACA,OAAO,CAAC,QAAQ;AAAA,MAChB,SAAS;AAAA,MACT,UAAU;AAAA,MACV,aAAa;AAAA,MACb,UAAU;AAAA,QACT,MAAM;AAAA,MACP;AAAA,MACA,QAAQ,CAAC,wCAAoB,IAAI;AAAA,MACjC,SAAS,CAAC,wCAAoB,IAAI;AAAA,MAClC,aAAa;AAAA,QACZ;AAAA,UACC,MAAM;AAAA,UACN,UAAU;AAAA,QACX;AAAA,MACD;AAAA,MACA,iBAAiB;AAAA,QAChB,SAAS;AAAA,UACR,gBAAgB;AAAA,QACjB;AAAA,QACA,IAAI;AAAA,UACH,SAAS;AAAA,UACT,SAAS;AAAA,QACV;AAAA,MACD;AAAA,MACA,YAAY;AAAA,QACX;AAAA,UACC,aAAa;AAAA,UACb,MAAM;AAAA,UACN,MAAM;AAAA,UACN,kBAAkB;AAAA,UAClB,SAAS;AAAA,UACT,SAAS;AAAA,YACR,MAAM;AAAA,cACL,SAAS,CAAC,iCAAoB;AAAA,YAC/B;AAAA,UACD;AAAA,UACA,SAAS;AAAA,YACR;AAAA,cACC,MAAM;AAAA,cACN,OAAO;AAAA,YACR;AAAA,YACA;AAAA,cACC,MAAM;AAAA,cACN,OAAO;AAAA,YACR;AAAA,YACA;AAAA,cACC,MAAM;AAAA,cACN,OAAO;AAAA,YACR;AAAA,UACD;AAAA,QACD;AAAA,QACA,GAAG,0BAAM;AAAA,QACT,GAAG,yBAAK;AAAA,QACR,GAAG,6BAAS;AAAA,MACb;AAAA,IACD;AAEA,mBAAU;AAAA,MACT;AAAA,IACD;AAAA;AACD;","names":[]}
@@ -0,0 +1,18 @@
1
+ {
2
+ "node": "n8n-nodes-base.awsCognito",
3
+ "nodeVersion": "1.0",
4
+ "codexVersion": "1.0",
5
+ "categories": ["Development"],
6
+ "resources": {
7
+ "credentialDocumentation": [
8
+ {
9
+ "url": "https://docs.n8n.io/integrations/builtin/credentials/aws/"
10
+ }
11
+ ],
12
+ "primaryDocumentation": [
13
+ {
14
+ "url": "https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.awscognito/"
15
+ }
16
+ ]
17
+ }
18
+ }
@@ -0,0 +1 @@
1
+ <svg width="2140" height="2500" viewBox="0 0 256 299" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid"><path d="M208.752 58.061l25.771-6.636.192.283.651 155.607-.843.846-5.31.227-20.159-3.138-.302-.794V58.061M59.705 218.971l.095.007 68.027 19.767.173.133.296.236-.096 59.232-.2.252-68.295-33.178v-46.449" fill="#7A3E65"/><path d="M208.752 204.456l-80.64 19.312-40.488-9.773-27.919 4.976L128 238.878l105.405-28.537 1.118-2.18-25.771-3.705" fill="#CFB2C1"/><path d="M196.295 79.626l-.657-.749-66.904-19.44-.734.283-.672-.343L22.052 89.734l-.575.703.845.463 24.075 3.53.851-.289 80.64-19.311 40.488 9.773 27.919-4.977" fill="#512843"/><path d="M47.248 240.537l-25.771 6.221-.045-.149-1.015-155.026 1.06-1.146 25.771 3.704v146.396" fill="#C17B9E"/><path d="M82.04 180.403l45.96 5.391.345-.515.187-71.887-.532-.589-45.96 5.392v62.208" fill="#7A3E65"/><path d="M173.96 180.403L128 185.794v-72.991l45.96 5.392v62.208M196.295 79.626L128 59.72V0l68.295 33.177v46.449" fill="#C17B9E"/><path d="M128 0L0 61.793v175.011l21.477 9.954V90.437L128 59.72V0" fill="#7A3E65"/><path d="M234.523 51.425v156.736L128 238.878v59.72l128-61.794V61.793l-21.477-10.368" fill="#C17B9E"/></svg>
@@ -0,0 +1,160 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var common_description_exports = {};
20
+ __export(common_description_exports, {
21
+ groupResourceLocator: () => groupResourceLocator,
22
+ userPoolResourceLocator: () => userPoolResourceLocator,
23
+ userResourceLocator: () => userResourceLocator
24
+ });
25
+ module.exports = __toCommonJS(common_description_exports);
26
+ const userPoolResourceLocator = {
27
+ displayName: "User Pool",
28
+ name: "userPool",
29
+ required: true,
30
+ type: "resourceLocator",
31
+ default: {
32
+ mode: "list",
33
+ value: ""
34
+ },
35
+ routing: {
36
+ send: {
37
+ type: "body",
38
+ property: "UserPoolId"
39
+ }
40
+ },
41
+ modes: [
42
+ {
43
+ displayName: "From list",
44
+ name: "list",
45
+ type: "list",
46
+ typeOptions: {
47
+ searchListMethod: "searchUserPools",
48
+ searchable: true
49
+ }
50
+ },
51
+ {
52
+ displayName: "By ID",
53
+ name: "id",
54
+ type: "string",
55
+ validation: [
56
+ {
57
+ type: "regex",
58
+ properties: {
59
+ regex: "^[\\w-]+_[0-9a-zA-Z]+$",
60
+ errorMessage: 'The ID must follow the pattern "xxxxxx_xxxxxxxxxxx"'
61
+ }
62
+ }
63
+ ],
64
+ placeholder: "e.g. eu-central-1_ab12cdefgh"
65
+ }
66
+ ]
67
+ };
68
+ const groupResourceLocator = {
69
+ displayName: "Group",
70
+ name: "group",
71
+ default: {
72
+ mode: "list",
73
+ value: ""
74
+ },
75
+ routing: {
76
+ send: {
77
+ type: "body",
78
+ property: "GroupName"
79
+ }
80
+ },
81
+ modes: [
82
+ {
83
+ displayName: "From list",
84
+ name: "list",
85
+ type: "list",
86
+ typeOptions: {
87
+ searchListMethod: "searchGroups",
88
+ searchable: true
89
+ }
90
+ },
91
+ {
92
+ displayName: "By Name",
93
+ name: "groupName",
94
+ type: "string",
95
+ hint: "Enter the group name",
96
+ validation: [
97
+ {
98
+ type: "regex",
99
+ properties: {
100
+ regex: "^[\\w+=,.@-]+$",
101
+ errorMessage: "The group name must follow the allowed pattern."
102
+ }
103
+ }
104
+ ],
105
+ placeholder: "e.g. Admins"
106
+ }
107
+ ],
108
+ required: true,
109
+ type: "resourceLocator"
110
+ };
111
+ const userResourceLocator = {
112
+ displayName: "User",
113
+ name: "user",
114
+ default: {
115
+ mode: "list",
116
+ value: ""
117
+ },
118
+ modes: [
119
+ {
120
+ displayName: "From List",
121
+ name: "list",
122
+ type: "list",
123
+ typeOptions: {
124
+ searchListMethod: "searchUsers",
125
+ searchable: true
126
+ }
127
+ },
128
+ {
129
+ displayName: "By ID",
130
+ name: "id",
131
+ type: "string",
132
+ hint: "Enter the user ID",
133
+ placeholder: "e.g. 02bd9fd6-8f93-4758-87c3-1fb73740a315",
134
+ validation: [
135
+ {
136
+ type: "regex",
137
+ properties: {
138
+ regex: "^[\\w-]+-[0-9a-zA-Z]+$",
139
+ errorMessage: 'The ID must follow the pattern "xxxxxx-xxxxxxxxxxx"'
140
+ }
141
+ }
142
+ ]
143
+ }
144
+ ],
145
+ routing: {
146
+ send: {
147
+ type: "body",
148
+ property: "Username"
149
+ }
150
+ },
151
+ required: true,
152
+ type: "resourceLocator"
153
+ };
154
+ // Annotate the CommonJS export names for ESM import in node:
155
+ 0 && (module.exports = {
156
+ groupResourceLocator,
157
+ userPoolResourceLocator,
158
+ userResourceLocator
159
+ });
160
+ //# sourceMappingURL=common.description.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../nodes/Aws/Cognito/descriptions/common.description.ts"],"sourcesContent":["import type { INodeProperties } from 'n8n-workflow';\n\nexport const userPoolResourceLocator: INodeProperties = {\n\tdisplayName: 'User Pool',\n\tname: 'userPool',\n\trequired: true,\n\ttype: 'resourceLocator',\n\tdefault: {\n\t\tmode: 'list',\n\t\tvalue: '',\n\t},\n\trouting: {\n\t\tsend: {\n\t\t\ttype: 'body',\n\t\t\tproperty: 'UserPoolId',\n\t\t},\n\t},\n\tmodes: [\n\t\t{\n\t\t\tdisplayName: 'From list',\n\t\t\tname: 'list',\n\t\t\ttype: 'list',\n\t\t\ttypeOptions: {\n\t\t\t\tsearchListMethod: 'searchUserPools',\n\t\t\t\tsearchable: true,\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tdisplayName: 'By ID',\n\t\t\tname: 'id',\n\t\t\ttype: 'string',\n\t\t\tvalidation: [\n\t\t\t\t{\n\t\t\t\t\ttype: 'regex',\n\t\t\t\t\tproperties: {\n\t\t\t\t\t\tregex: '^[\\\\w-]+_[0-9a-zA-Z]+$',\n\t\t\t\t\t\terrorMessage: 'The ID must follow the pattern \"xxxxxx_xxxxxxxxxxx\"',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t],\n\t\t\tplaceholder: 'e.g. eu-central-1_ab12cdefgh',\n\t\t},\n\t],\n};\n\nexport const groupResourceLocator: INodeProperties = {\n\tdisplayName: 'Group',\n\tname: 'group',\n\tdefault: {\n\t\tmode: 'list',\n\t\tvalue: '',\n\t},\n\trouting: {\n\t\tsend: {\n\t\t\ttype: 'body',\n\t\t\tproperty: 'GroupName',\n\t\t},\n\t},\n\tmodes: [\n\t\t{\n\t\t\tdisplayName: 'From list',\n\t\t\tname: 'list',\n\t\t\ttype: 'list',\n\t\t\ttypeOptions: {\n\t\t\t\tsearchListMethod: 'searchGroups',\n\t\t\t\tsearchable: true,\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tdisplayName: 'By Name',\n\t\t\tname: 'groupName',\n\t\t\ttype: 'string',\n\t\t\thint: 'Enter the group name',\n\t\t\tvalidation: [\n\t\t\t\t{\n\t\t\t\t\ttype: 'regex',\n\t\t\t\t\tproperties: {\n\t\t\t\t\t\tregex: '^[\\\\w+=,.@-]+$',\n\t\t\t\t\t\terrorMessage: 'The group name must follow the allowed pattern.',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t],\n\t\t\tplaceholder: 'e.g. Admins',\n\t\t},\n\t],\n\trequired: true,\n\ttype: 'resourceLocator',\n};\n\nexport const userResourceLocator: INodeProperties = {\n\tdisplayName: 'User',\n\tname: 'user',\n\tdefault: {\n\t\tmode: 'list',\n\t\tvalue: '',\n\t},\n\tmodes: [\n\t\t{\n\t\t\tdisplayName: 'From List',\n\t\t\tname: 'list',\n\t\t\ttype: 'list',\n\t\t\ttypeOptions: {\n\t\t\t\tsearchListMethod: 'searchUsers',\n\t\t\t\tsearchable: true,\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tdisplayName: 'By ID',\n\t\t\tname: 'id',\n\t\t\ttype: 'string',\n\t\t\thint: 'Enter the user ID',\n\t\t\tplaceholder: 'e.g. 02bd9fd6-8f93-4758-87c3-1fb73740a315',\n\t\t\tvalidation: [\n\t\t\t\t{\n\t\t\t\t\ttype: 'regex',\n\t\t\t\t\tproperties: {\n\t\t\t\t\t\tregex: '^[\\\\w-]+-[0-9a-zA-Z]+$',\n\t\t\t\t\t\terrorMessage: 'The ID must follow the pattern \"xxxxxx-xxxxxxxxxxx\"',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t],\n\trouting: {\n\t\tsend: {\n\t\t\ttype: 'body',\n\t\t\tproperty: 'Username',\n\t\t},\n\t},\n\trequired: true,\n\ttype: 'resourceLocator',\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEO,MAAM,0BAA2C;AAAA,EACvD,aAAa;AAAA,EACb,MAAM;AAAA,EACN,UAAU;AAAA,EACV,MAAM;AAAA,EACN,SAAS;AAAA,IACR,MAAM;AAAA,IACN,OAAO;AAAA,EACR;AAAA,EACA,SAAS;AAAA,IACR,MAAM;AAAA,MACL,MAAM;AAAA,MACN,UAAU;AAAA,IACX;AAAA,EACD;AAAA,EACA,OAAO;AAAA,IACN;AAAA,MACC,aAAa;AAAA,MACb,MAAM;AAAA,MACN,MAAM;AAAA,MACN,aAAa;AAAA,QACZ,kBAAkB;AAAA,QAClB,YAAY;AAAA,MACb;AAAA,IACD;AAAA,IACA;AAAA,MACC,aAAa;AAAA,MACb,MAAM;AAAA,MACN,MAAM;AAAA,MACN,YAAY;AAAA,QACX;AAAA,UACC,MAAM;AAAA,UACN,YAAY;AAAA,YACX,OAAO;AAAA,YACP,cAAc;AAAA,UACf;AAAA,QACD;AAAA,MACD;AAAA,MACA,aAAa;AAAA,IACd;AAAA,EACD;AACD;AAEO,MAAM,uBAAwC;AAAA,EACpD,aAAa;AAAA,EACb,MAAM;AAAA,EACN,SAAS;AAAA,IACR,MAAM;AAAA,IACN,OAAO;AAAA,EACR;AAAA,EACA,SAAS;AAAA,IACR,MAAM;AAAA,MACL,MAAM;AAAA,MACN,UAAU;AAAA,IACX;AAAA,EACD;AAAA,EACA,OAAO;AAAA,IACN;AAAA,MACC,aAAa;AAAA,MACb,MAAM;AAAA,MACN,MAAM;AAAA,MACN,aAAa;AAAA,QACZ,kBAAkB;AAAA,QAClB,YAAY;AAAA,MACb;AAAA,IACD;AAAA,IACA;AAAA,MACC,aAAa;AAAA,MACb,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,YAAY;AAAA,QACX;AAAA,UACC,MAAM;AAAA,UACN,YAAY;AAAA,YACX,OAAO;AAAA,YACP,cAAc;AAAA,UACf;AAAA,QACD;AAAA,MACD;AAAA,MACA,aAAa;AAAA,IACd;AAAA,EACD;AAAA,EACA,UAAU;AAAA,EACV,MAAM;AACP;AAEO,MAAM,sBAAuC;AAAA,EACnD,aAAa;AAAA,EACb,MAAM;AAAA,EACN,SAAS;AAAA,IACR,MAAM;AAAA,IACN,OAAO;AAAA,EACR;AAAA,EACA,OAAO;AAAA,IACN;AAAA,MACC,aAAa;AAAA,MACb,MAAM;AAAA,MACN,MAAM;AAAA,MACN,aAAa;AAAA,QACZ,kBAAkB;AAAA,QAClB,YAAY;AAAA,MACb;AAAA,IACD;AAAA,IACA;AAAA,MACC,aAAa;AAAA,MACb,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,aAAa;AAAA,MACb,YAAY;AAAA,QACX;AAAA,UACC,MAAM;AAAA,UACN,YAAY;AAAA,YACX,OAAO;AAAA,YACP,cAAc;AAAA,UACf;AAAA,QACD;AAAA,MACD;AAAA,IACD;AAAA,EACD;AAAA,EACA,SAAS;AAAA,IACR,MAAM;AAAA,MACL,MAAM;AAAA,MACN,UAAU;AAAA,IACX;AAAA,EACD;AAAA,EACA,UAAU;AAAA,EACV,MAAM;AACP;","names":[]}