n8n-nodes-base 0.220.2 → 0.222.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 (161) hide show
  1. package/dist/build.tsbuildinfo +1 -1
  2. package/dist/credentials/Postgres.credentials.js +115 -0
  3. package/dist/credentials/Postgres.credentials.js.map +1 -1
  4. package/dist/credentials/SshPrivateKey.credentials.js +1 -0
  5. package/dist/credentials/SshPrivateKey.credentials.js.map +1 -1
  6. package/dist/credentials/TotpApi.credentials.d.ts +7 -0
  7. package/dist/credentials/TotpApi.credentials.js +33 -0
  8. package/dist/credentials/TotpApi.credentials.js.map +1 -0
  9. package/dist/known/credentials.json +8 -0
  10. package/dist/known/nodes.json +4 -0
  11. package/dist/nodes/ActionNetwork/GenericFunctions.d.ts +1 -1
  12. package/dist/nodes/Autopilot/GenericFunctions.js +2 -1
  13. package/dist/nodes/Autopilot/GenericFunctions.js.map +1 -1
  14. package/dist/nodes/Aws/Rekognition/GenericFunctions.js +2 -1
  15. package/dist/nodes/Aws/Rekognition/GenericFunctions.js.map +1 -1
  16. package/dist/nodes/Aws/S3/FileDescription.js +1 -1
  17. package/dist/nodes/Aws/S3/FileDescription.js.map +1 -1
  18. package/dist/nodes/Aws/S3/GenericFunctions.js +2 -1
  19. package/dist/nodes/Aws/S3/GenericFunctions.js.map +1 -1
  20. package/dist/nodes/ClickUp/GenericFunctions.js +2 -1
  21. package/dist/nodes/ClickUp/GenericFunctions.js.map +1 -1
  22. package/dist/nodes/Clockify/GenericFunctions.js +2 -1
  23. package/dist/nodes/Clockify/GenericFunctions.js.map +1 -1
  24. package/dist/nodes/CompareDatasets/CompareDatasets.node.js +42 -6
  25. package/dist/nodes/CompareDatasets/CompareDatasets.node.js.map +1 -1
  26. package/dist/nodes/CompareDatasets/GenericFunctions.js +60 -18
  27. package/dist/nodes/CompareDatasets/GenericFunctions.js.map +1 -1
  28. package/dist/nodes/CompareDatasets/test/node/workflow.compareDatasets.fuzzy.missing_keys.json +232 -0
  29. package/dist/nodes/CompareDatasets/test/node/workflow.compareDatasets.skipFields.json +897 -0
  30. package/dist/nodes/CrateDb/CrateDb.node.js +7 -7
  31. package/dist/nodes/CrateDb/CrateDb.node.js.map +1 -1
  32. package/dist/nodes/DateTime/DateTime.node.js +11 -1
  33. package/dist/nodes/DateTime/DateTime.node.js.map +1 -1
  34. package/dist/nodes/DateTime/test/node/workflow.luxonDateTime.json +165 -0
  35. package/dist/nodes/Filter/Filter.node.js +12 -5
  36. package/dist/nodes/Filter/Filter.node.js.map +1 -1
  37. package/dist/nodes/Github/SearchFunctions.js +1 -1
  38. package/dist/nodes/Github/SearchFunctions.js.map +1 -1
  39. package/dist/nodes/GoToWebinar/GenericFunctions.d.ts +1 -1
  40. package/dist/nodes/GoToWebinar/GenericFunctions.js +5 -4
  41. package/dist/nodes/GoToWebinar/GenericFunctions.js.map +1 -1
  42. package/dist/nodes/Google/Sheet/GoogleSheetsTrigger.utils.d.ts +7 -1
  43. package/dist/nodes/HelpScout/GenericFunctions.js +2 -1
  44. package/dist/nodes/HelpScout/GenericFunctions.js.map +1 -1
  45. package/dist/nodes/HtmlExtract/HtmlExtract.node.js +4 -2
  46. package/dist/nodes/HtmlExtract/HtmlExtract.node.js.map +1 -1
  47. package/dist/nodes/HtmlExtract/test/workflow.dotNotation.json +143 -0
  48. package/dist/nodes/HttpRequest/GenericFunctions.d.ts +9 -0
  49. package/dist/nodes/HttpRequest/GenericFunctions.js +18 -1
  50. package/dist/nodes/HttpRequest/GenericFunctions.js.map +1 -1
  51. package/dist/nodes/HttpRequest/HttpRequest.node.js +2 -1
  52. package/dist/nodes/HttpRequest/HttpRequest.node.js.map +1 -1
  53. package/dist/nodes/HttpRequest/V3/HttpRequestV3.node.js +56 -6
  54. package/dist/nodes/HttpRequest/V3/HttpRequestV3.node.js.map +1 -1
  55. package/dist/nodes/Hubspot/GenericFunctions.js +2 -1
  56. package/dist/nodes/Hubspot/GenericFunctions.js.map +1 -1
  57. package/dist/nodes/LinkedIn/GenericFunctions.js +16 -4
  58. package/dist/nodes/LinkedIn/GenericFunctions.js.map +1 -1
  59. package/dist/nodes/LinkedIn/LinkedIn.node.js +33 -77
  60. package/dist/nodes/LinkedIn/LinkedIn.node.js.map +1 -1
  61. package/dist/nodes/Microsoft/Teams/GenericFunctions.js +2 -1
  62. package/dist/nodes/Microsoft/Teams/GenericFunctions.js.map +1 -1
  63. package/dist/nodes/Notion/GenericFunctions.js +2 -1
  64. package/dist/nodes/Notion/GenericFunctions.js.map +1 -1
  65. package/dist/nodes/Orbit/GenericFunctions.js +2 -1
  66. package/dist/nodes/Orbit/GenericFunctions.js.map +1 -1
  67. package/dist/nodes/Postgres/Postgres.node.d.ts +3 -9
  68. package/dist/nodes/Postgres/Postgres.node.js +9 -319
  69. package/dist/nodes/Postgres/Postgres.node.js.map +1 -1
  70. package/dist/nodes/Postgres/v1/PostgresV1.node.d.ts +12 -0
  71. package/dist/nodes/Postgres/v1/PostgresV1.node.js +345 -0
  72. package/dist/nodes/Postgres/v1/PostgresV1.node.js.map +1 -0
  73. package/dist/nodes/Postgres/{Postgres.node.functions.js → v1/genericFunctions.js} +1 -1
  74. package/dist/nodes/Postgres/v1/genericFunctions.js.map +1 -0
  75. package/dist/nodes/Postgres/v2/PostgresV2.node.d.ts +13 -0
  76. package/dist/nodes/Postgres/v2/PostgresV2.node.js +20 -0
  77. package/dist/nodes/Postgres/v2/PostgresV2.node.js.map +1 -0
  78. package/dist/nodes/Postgres/v2/actions/common.descriptions.d.ts +7 -0
  79. package/dist/nodes/Postgres/v2/actions/common.descriptions.js +317 -0
  80. package/dist/nodes/Postgres/v2/actions/common.descriptions.js.map +1 -0
  81. package/dist/nodes/Postgres/v2/actions/database/Database.resource.d.ts +9 -0
  82. package/dist/nodes/Postgres/v2/actions/database/Database.resource.js +100 -0
  83. package/dist/nodes/Postgres/v2/actions/database/Database.resource.js.map +1 -0
  84. package/dist/nodes/Postgres/v2/actions/database/deleteTable.operation.d.ts +24 -0
  85. package/dist/nodes/Postgres/v2/actions/database/deleteTable.operation.js +110 -0
  86. package/dist/nodes/Postgres/v2/actions/database/deleteTable.operation.js.map +1 -0
  87. package/dist/nodes/Postgres/v2/actions/database/executeQuery.operation.d.ts +24 -0
  88. package/dist/nodes/Postgres/v2/actions/database/executeQuery.operation.js +60 -0
  89. package/dist/nodes/Postgres/v2/actions/database/executeQuery.operation.js.map +1 -0
  90. package/dist/nodes/Postgres/v2/actions/database/insert.operation.d.ts +24 -0
  91. package/dist/nodes/Postgres/v2/actions/database/insert.operation.js +129 -0
  92. package/dist/nodes/Postgres/v2/actions/database/insert.operation.js.map +1 -0
  93. package/dist/nodes/Postgres/v2/actions/database/select.operation.d.ts +24 -0
  94. package/dist/nodes/Postgres/v2/actions/database/select.operation.js +87 -0
  95. package/dist/nodes/Postgres/v2/actions/database/select.operation.js.map +1 -0
  96. package/dist/nodes/Postgres/v2/actions/database/update.operation.d.ts +24 -0
  97. package/dist/nodes/Postgres/v2/actions/database/update.operation.js +164 -0
  98. package/dist/nodes/Postgres/v2/actions/database/update.operation.js.map +1 -0
  99. package/dist/nodes/Postgres/v2/actions/database/upsert.operation.d.ts +24 -0
  100. package/dist/nodes/Postgres/v2/actions/database/upsert.operation.js +165 -0
  101. package/dist/nodes/Postgres/v2/actions/database/upsert.operation.js.map +1 -0
  102. package/dist/nodes/Postgres/v2/actions/node.type.d.ts +7 -0
  103. package/dist/nodes/Postgres/v2/actions/node.type.js +3 -0
  104. package/dist/nodes/Postgres/v2/actions/node.type.js.map +1 -0
  105. package/dist/nodes/Postgres/v2/actions/router.d.ts +2 -0
  106. package/dist/nodes/Postgres/v2/actions/router.js +65 -0
  107. package/dist/nodes/Postgres/v2/actions/router.js.map +1 -0
  108. package/dist/nodes/Postgres/v2/actions/versionDescription.d.ts +2 -0
  109. package/dist/nodes/Postgres/v2/actions/versionDescription.js +65 -0
  110. package/dist/nodes/Postgres/v2/actions/versionDescription.js.map +1 -0
  111. package/dist/nodes/Postgres/v2/helpers/interfaces.d.ts +37 -0
  112. package/dist/nodes/Postgres/v2/helpers/interfaces.js +3 -0
  113. package/dist/nodes/Postgres/v2/helpers/interfaces.js.map +1 -0
  114. package/dist/nodes/Postgres/v2/helpers/utils.d.ts +29 -0
  115. package/dist/nodes/Postgres/v2/helpers/utils.js +258 -0
  116. package/dist/nodes/Postgres/v2/helpers/utils.js.map +1 -0
  117. package/dist/nodes/Postgres/v2/methods/credentialTest.d.ts +2 -0
  118. package/dist/nodes/Postgres/v2/methods/credentialTest.js +47 -0
  119. package/dist/nodes/Postgres/v2/methods/credentialTest.js.map +1 -0
  120. package/dist/nodes/Postgres/v2/methods/index.d.ts +3 -0
  121. package/dist/nodes/Postgres/v2/methods/index.js +30 -0
  122. package/dist/nodes/Postgres/v2/methods/index.js.map +1 -0
  123. package/dist/nodes/Postgres/v2/methods/listSearch.d.ts +3 -0
  124. package/dist/nodes/Postgres/v2/methods/listSearch.js +42 -0
  125. package/dist/nodes/Postgres/v2/methods/listSearch.js.map +1 -0
  126. package/dist/nodes/Postgres/v2/methods/loadOptions.d.ts +4 -0
  127. package/dist/nodes/Postgres/v2/methods/loadOptions.js +40 -0
  128. package/dist/nodes/Postgres/v2/methods/loadOptions.js.map +1 -0
  129. package/dist/nodes/Postgres/v2/transport/index.d.ts +10 -0
  130. package/dist/nodes/Postgres/v2/transport/index.js +168 -0
  131. package/dist/nodes/Postgres/v2/transport/index.js.map +1 -0
  132. package/dist/nodes/QuestDb/QuestDb.node.js +3 -3
  133. package/dist/nodes/QuestDb/QuestDb.node.js.map +1 -1
  134. package/dist/nodes/Redis/Redis.node.js +35 -4
  135. package/dist/nodes/Redis/Redis.node.js.map +1 -1
  136. package/dist/nodes/S3/GenericFunctions.js +2 -1
  137. package/dist/nodes/S3/GenericFunctions.js.map +1 -1
  138. package/dist/nodes/Schedule/ScheduleTrigger.node.js +2 -2
  139. package/dist/nodes/Schedule/ScheduleTrigger.node.js.map +1 -1
  140. package/dist/nodes/SendGrid/GenericFunctions.js +2 -1
  141. package/dist/nodes/SendGrid/GenericFunctions.js.map +1 -1
  142. package/dist/nodes/SentryIo/GenericFunctions.js +2 -1
  143. package/dist/nodes/SentryIo/GenericFunctions.js.map +1 -1
  144. package/dist/nodes/ServiceNow/IncidentDescription.js +7 -0
  145. package/dist/nodes/ServiceNow/IncidentDescription.js.map +1 -1
  146. package/dist/nodes/Taiga/GenericFunctions.js +2 -1
  147. package/dist/nodes/Taiga/GenericFunctions.js.map +1 -1
  148. package/dist/nodes/TimescaleDb/TimescaleDb.node.js +4 -4
  149. package/dist/nodes/TimescaleDb/TimescaleDb.node.js.map +1 -1
  150. package/dist/nodes/Totp/Totp.node.d.ts +5 -0
  151. package/dist/nodes/Totp/Totp.node.js +157 -0
  152. package/dist/nodes/Totp/Totp.node.js.map +1 -0
  153. package/dist/nodes/Totp/Totp.node.json +16 -0
  154. package/dist/nodes/Totp/test/Totp.workflow.test.json +41 -0
  155. package/dist/nodes/Zendesk/GenericFunctions.js +2 -1
  156. package/dist/nodes/Zendesk/GenericFunctions.js.map +1 -1
  157. package/dist/types/credentials.json +3 -2
  158. package/dist/types/nodes.json +16 -13
  159. package/package.json +6 -3
  160. package/dist/nodes/Postgres/Postgres.node.functions.js.map +0 -1
  161. /package/dist/nodes/Postgres/{Postgres.node.functions.d.ts → v1/genericFunctions.d.ts} +0 -0
@@ -0,0 +1,157 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.Totp = void 0;
7
+ const n8n_workflow_1 = require("n8n-workflow");
8
+ const otpauth_1 = __importDefault(require("otpauth"));
9
+ class Totp {
10
+ constructor() {
11
+ this.description = {
12
+ displayName: 'TOTP',
13
+ name: 'totp',
14
+ icon: 'fa:fingerprint',
15
+ group: ['transform'],
16
+ version: 1,
17
+ subtitle: '={{ $parameter["operation"] }}',
18
+ description: 'Generate a time-based one-time password',
19
+ defaults: {
20
+ name: 'TOTP',
21
+ },
22
+ inputs: ['main'],
23
+ outputs: ['main'],
24
+ credentials: [
25
+ {
26
+ name: 'totpApi',
27
+ required: true,
28
+ },
29
+ ],
30
+ properties: [
31
+ {
32
+ displayName: 'Operation',
33
+ name: 'operation',
34
+ type: 'options',
35
+ noDataExpression: true,
36
+ options: [
37
+ {
38
+ name: 'Generate Secret',
39
+ value: 'generateSecret',
40
+ action: 'Generate secret',
41
+ },
42
+ ],
43
+ default: 'generateSecret',
44
+ },
45
+ {
46
+ displayName: 'Options',
47
+ name: 'options',
48
+ type: 'collection',
49
+ displayOptions: {
50
+ show: {
51
+ operation: ['generateSecret'],
52
+ },
53
+ },
54
+ default: {},
55
+ placeholder: 'Add Option',
56
+ options: [
57
+ {
58
+ displayName: 'Algorithm',
59
+ name: 'algorithm',
60
+ type: 'options',
61
+ default: 'SHA1',
62
+ description: 'HMAC hashing algorithm. Defaults to SHA1.',
63
+ options: [
64
+ {
65
+ name: 'SHA1',
66
+ value: 'SHA1',
67
+ },
68
+ {
69
+ name: 'SHA224',
70
+ value: 'SHA224',
71
+ },
72
+ {
73
+ name: 'SHA256',
74
+ value: 'SHA256',
75
+ },
76
+ {
77
+ name: 'SHA3-224',
78
+ value: 'SHA3-224',
79
+ },
80
+ {
81
+ name: 'SHA3-256',
82
+ value: 'SHA3-256',
83
+ },
84
+ {
85
+ name: 'SHA3-384',
86
+ value: 'SHA3-384',
87
+ },
88
+ {
89
+ name: 'SHA3-512',
90
+ value: 'SHA3-512',
91
+ },
92
+ {
93
+ name: 'SHA384',
94
+ value: 'SHA384',
95
+ },
96
+ {
97
+ name: 'SHA512',
98
+ value: 'SHA512',
99
+ },
100
+ ],
101
+ },
102
+ {
103
+ displayName: 'Digits',
104
+ name: 'digits',
105
+ type: 'number',
106
+ default: 6,
107
+ description: 'Number of digits in the generated TOTP code. Defaults to 6 digits.',
108
+ },
109
+ {
110
+ displayName: 'Period',
111
+ name: 'period',
112
+ type: 'number',
113
+ default: 30,
114
+ description: 'How many seconds the generated TOTP code is valid for. Defaults to 30 seconds.',
115
+ },
116
+ ],
117
+ },
118
+ ],
119
+ };
120
+ }
121
+ async execute() {
122
+ const items = this.getInputData();
123
+ const returnData = [];
124
+ const operation = this.getNodeParameter('operation', 0);
125
+ const credentials = (await this.getCredentials('totpApi'));
126
+ if (!credentials.label.includes(':')) {
127
+ throw new n8n_workflow_1.NodeOperationError(this.getNode(), 'Malformed label - expected `issuer:username`');
128
+ }
129
+ const options = this.getNodeParameter('options', 0);
130
+ if (!options.algorithm)
131
+ options.algorithm = 'SHA1';
132
+ if (!options.digits)
133
+ options.digits = 6;
134
+ if (!options.period)
135
+ options.period = 30;
136
+ const [issuer] = credentials.label.split(':');
137
+ const totp = new otpauth_1.default.TOTP({
138
+ issuer,
139
+ label: credentials.label,
140
+ secret: credentials.secret,
141
+ algorithm: options.algorithm,
142
+ digits: options.digits,
143
+ period: options.period,
144
+ });
145
+ const token = totp.generate();
146
+ const secondsRemaining = (options.period * (1 - ((Date.now() / 1000 / options.period) % 1))) | 0;
147
+ if (operation === 'generateSecret') {
148
+ for (let i = 0; i < items.length; i++) {
149
+ const executionData = this.helpers.constructExecutionMetaData(this.helpers.returnJsonArray({ token, secondsRemaining }), { itemData: { item: i } });
150
+ returnData.push(...executionData);
151
+ }
152
+ }
153
+ return this.prepareOutputData(returnData);
154
+ }
155
+ }
156
+ exports.Totp = Totp;
157
+ //# sourceMappingURL=Totp.node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Totp.node.js","sourceRoot":"","sources":["../../../nodes/Totp/Totp.node.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ {
2
+ "node": "n8n-nodes-base.totp",
3
+ "nodeVersion": "1.0",
4
+ "codexVersion": "1.0",
5
+ "categories": ["Core Nodes"],
6
+ "subcategories": ["Helpers"],
7
+ "details": "Generate a time-based one-time password",
8
+ "alias": ["2FA", "MFA", "authentication", "Security", "OTP", "password", "multi", "factor"],
9
+ "resources": {
10
+ "primaryDocumentation": [
11
+ {
12
+ "url": "https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.totp/"
13
+ }
14
+ ]
15
+ }
16
+ }
@@ -0,0 +1,41 @@
1
+ {
2
+ "nodes": [
3
+ {
4
+ "parameters": {},
5
+ "id": "f2e03169-0e94-4a42-821b-3e8f67f449d7",
6
+ "name": "When clicking \"Execute Workflow\"",
7
+ "type": "n8n-nodes-base.manualTrigger",
8
+ "typeVersion": 1,
9
+ "position": [580, 320]
10
+ },
11
+ {
12
+ "parameters": {
13
+ "additionalOptions": {}
14
+ },
15
+ "id": "831f657d-2724-4a25-bb94-cf37355654bb",
16
+ "name": "TOTP",
17
+ "type": "n8n-nodes-base.totp",
18
+ "typeVersion": 1,
19
+ "position": [800, 320],
20
+ "credentials": {
21
+ "totpApi": {
22
+ "id": "1",
23
+ "name": "TOTP account"
24
+ }
25
+ }
26
+ }
27
+ ],
28
+ "connections": {
29
+ "When clicking \"Execute Workflow\"": {
30
+ "main": [
31
+ [
32
+ {
33
+ "node": "TOTP",
34
+ "type": "main",
35
+ "index": 0
36
+ }
37
+ ]
38
+ ]
39
+ }
40
+ }
41
+ }
@@ -44,7 +44,8 @@ async function zendeskApiRequestAllItems(propertyName, method, resource, body =
44
44
  responseData = await zendeskApiRequest.call(this, method, resource, body, query, uri);
45
45
  uri = responseData.next_page;
46
46
  returnData.push.apply(returnData, responseData[propertyName]);
47
- if (query.limit && query.limit <= returnData.length) {
47
+ const limit = query.limit;
48
+ if (limit && limit <= returnData.length) {
48
49
  return returnData;
49
50
  }
50
51
  } while (responseData.next_page !== undefined && responseData.next_page !== null);
@@ -1 +1 @@
1
- {"version":3,"file":"GenericFunctions.js","sourceRoot":"","sources":["../../../nodes/Zendesk/GenericFunctions.ts"],"names":[],"mappings":";;;AAUA,SAAS,MAAM,CAAC,QAAgB,EAAE,SAAiB;IAClD,IAAI,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE;QAClC,OAAO,WAAW,SAAS,sBAAsB,QAAQ,EAAE,CAAC;KAC5D;SAAM;QACN,OAAO,WAAW,SAAS,sBAAsB,QAAQ,OAAO,CAAC;KACjE;AACF,CAAC;AAEM,KAAK,UAAU,iBAAiB,CAEtC,MAAc,EACd,QAAgB,EAEhB,OAAY,EAAE,EACd,KAAkB,EAAE,EACpB,GAAY,EACZ,SAAsB,EAAE;IAExB,MAAM,oBAAoB,GAAG,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;IAExE,IAAI,WAAW,CAAC;IAEhB,IAAI,oBAAoB,KAAK,UAAU,EAAE;QACxC,WAAW,GAAG,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,CAA0B,CAAC;KACjF;SAAM;QACN,WAAW,GAAG,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAA0B,CAAC;KACvF;IAED,IAAI,OAAO,GAAmB;QAC7B,MAAM;QACN,EAAE;QACF,IAAI;QACJ,GAAG,EAAE,GAAG,IAAI,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,SAAS,CAAC;QACnD,IAAI,EAAE,IAAI;QACV,kBAAkB,EAAE;YACnB,WAAW,EAAE,UAAU;SACvB;KACD,CAAC;IAEF,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAC7C,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAmB,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;QAC1D,OAAO,OAAO,CAAC,IAAI,CAAC;KACpB;IAED,MAAM,cAAc,GAAG,oBAAoB,KAAK,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,kBAAkB,CAAC;IAE/F,OAAO,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;AACnF,CAAC;AAvCD,8CAuCC;AAMM,KAAK,UAAU,yBAAyB,CAE9C,YAAoB,EACpB,MAAc,EACd,QAAgB,EAEhB,OAAY,EAAE,EACd,QAAqB,EAAE;IAEvB,MAAM,UAAU,GAAkB,EAAE,CAAC;IAErC,IAAI,YAAY,CAAC;IAEjB,IAAI,GAAuB,CAAC;IAE5B,GAAG;QACF,YAAY,GAAG,MAAM,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;QACtF,GAAG,GAAG,YAAY,CAAC,SAAS,CAAC;QAC7B,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,YAAY,CAAC,YAAY,CAAkB,CAAC,CAAC;QAC/E,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,IAAI,UAAU,CAAC,MAAM,EAAE;YACpD,OAAO,UAAU,CAAC;SAClB;KACD,QAAQ,YAAY,CAAC,SAAS,KAAK,SAAS,IAAI,YAAY,CAAC,SAAS,KAAK,IAAI,EAAE;IAElF,OAAO,UAAU,CAAC;AACnB,CAAC;AAzBD,8DAyBC;AAED,SAAgB,YAAY,CAAC,IAAwB;IACpD,IAAI,MAAM,CAAC;IACX,IAAI;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAK,CAAC,CAAC;KAC3B;IAAC,OAAO,SAAS,EAAE;QACnB,MAAM,GAAG,SAAS,CAAC;KACnB;IACD,OAAO,MAAM,CAAC;AACf,CAAC;AARD,oCAQC"}
1
+ {"version":3,"file":"GenericFunctions.js","sourceRoot":"","sources":["../../../nodes/Zendesk/GenericFunctions.ts"],"names":[],"mappings":";;;AAUA,SAAS,MAAM,CAAC,QAAgB,EAAE,SAAiB;IAClD,IAAI,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE;QAClC,OAAO,WAAW,SAAS,sBAAsB,QAAQ,EAAE,CAAC;KAC5D;SAAM;QACN,OAAO,WAAW,SAAS,sBAAsB,QAAQ,OAAO,CAAC;KACjE;AACF,CAAC;AAEM,KAAK,UAAU,iBAAiB,CAEtC,MAAc,EACd,QAAgB,EAEhB,OAAY,EAAE,EACd,KAAkB,EAAE,EACpB,GAAY,EACZ,SAAsB,EAAE;IAExB,MAAM,oBAAoB,GAAG,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;IAExE,IAAI,WAAW,CAAC;IAEhB,IAAI,oBAAoB,KAAK,UAAU,EAAE;QACxC,WAAW,GAAG,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,CAA0B,CAAC;KACjF;SAAM;QACN,WAAW,GAAG,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAA0B,CAAC;KACvF;IAED,IAAI,OAAO,GAAmB;QAC7B,MAAM;QACN,EAAE;QACF,IAAI;QACJ,GAAG,EAAE,GAAG,IAAI,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,SAAS,CAAC;QACnD,IAAI,EAAE,IAAI;QACV,kBAAkB,EAAE;YACnB,WAAW,EAAE,UAAU;SACvB;KACD,CAAC;IAEF,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAC7C,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAmB,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;QAC1D,OAAO,OAAO,CAAC,IAAI,CAAC;KACpB;IAED,MAAM,cAAc,GAAG,oBAAoB,KAAK,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,kBAAkB,CAAC;IAE/F,OAAO,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;AACnF,CAAC;AAvCD,8CAuCC;AAMM,KAAK,UAAU,yBAAyB,CAE9C,YAAoB,EACpB,MAAc,EACd,QAAgB,EAEhB,OAAY,EAAE,EACd,QAAqB,EAAE;IAEvB,MAAM,UAAU,GAAkB,EAAE,CAAC;IAErC,IAAI,YAAY,CAAC;IAEjB,IAAI,GAAuB,CAAC;IAE5B,GAAG;QACF,YAAY,GAAG,MAAM,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;QACtF,GAAG,GAAG,YAAY,CAAC,SAAS,CAAC;QAC7B,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,YAAY,CAAC,YAAY,CAAkB,CAAC,CAAC;QAC/E,MAAM,KAAK,GAAG,KAAK,CAAC,KAA2B,CAAC;QAChD,IAAI,KAAK,IAAI,KAAK,IAAI,UAAU,CAAC,MAAM,EAAE;YACxC,OAAO,UAAU,CAAC;SAClB;KACD,QAAQ,YAAY,CAAC,SAAS,KAAK,SAAS,IAAI,YAAY,CAAC,SAAS,KAAK,IAAI,EAAE;IAElF,OAAO,UAAU,CAAC;AACnB,CAAC;AA1BD,8DA0BC;AAED,SAAgB,YAAY,CAAC,IAAwB;IACpD,IAAI,MAAM,CAAC;IACX,IAAI;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAK,CAAC,CAAC;KAC3B;IAAC,OAAO,SAAS,EAAE;QACnB,MAAM,GAAG,SAAS,CAAC;KACnB;IACD,OAAO,MAAM,CAAC;AACf,CAAC;AARD,oCAQC"}
@@ -208,7 +208,7 @@
208
208
  {"name":"pipedriveApi","displayName":"Pipedrive API","documentationUrl":"pipedrive","properties":[{"displayName":"API Token","name":"apiToken","type":"string","default":""}],"authenticate":{"type":"generic","properties":{"qs":{"api_token":"={{$credentials.apiToken}}"}}}},
209
209
  {"name":"pipedriveOAuth2Api","extends":["oAuth2Api"],"displayName":"Pipedrive OAuth2 API","documentationUrl":"pipedrive","properties":[{"displayName":"Grant Type","name":"grantType","type":"hidden","default":"authorizationCode"},{"displayName":"Authorization URL","name":"authUrl","type":"hidden","default":"https://oauth.pipedrive.com/oauth/authorize","required":true},{"displayName":"Access Token URL","name":"accessTokenUrl","type":"hidden","default":"https://oauth.pipedrive.com/oauth/token","required":true},{"displayName":"Scope","name":"scope","type":"hidden","default":""},{"displayName":"Auth URI Query Parameters","name":"authQueryParameters","type":"hidden","default":""},{"displayName":"Authentication","name":"authentication","type":"hidden","default":"header"}]},
210
210
  {"name":"plivoApi","displayName":"Plivo API","documentationUrl":"plivo","properties":[{"displayName":"Auth ID","name":"authId","type":"string","default":""},{"displayName":"Auth Token","name":"authToken","type":"string","default":""}]},
211
- {"name":"postgres","displayName":"Postgres","documentationUrl":"postgres","properties":[{"displayName":"Host","name":"host","type":"string","default":"localhost"},{"displayName":"Database","name":"database","type":"string","default":"postgres"},{"displayName":"User","name":"user","type":"string","default":"postgres"},{"displayName":"Password","name":"password","type":"string","typeOptions":{"password":true},"default":""},{"displayName":"Ignore SSL Issues","name":"allowUnauthorizedCerts","type":"boolean","default":false,"description":"Whether to connect even if SSL certificate validation is not possible"},{"displayName":"SSL","name":"ssl","type":"options","displayOptions":{"show":{"allowUnauthorizedCerts":[false]}},"options":[{"name":"Allow","value":"allow"},{"name":"Disable","value":"disable"},{"name":"Require","value":"require"},{"name":"Verify (Not Implemented)","value":"verify"},{"name":"Verify-Full (Not Implemented)","value":"verify-full"}],"default":"disable"},{"displayName":"Port","name":"port","type":"number","default":5432}]},
211
+ {"name":"postgres","displayName":"Postgres","documentationUrl":"postgres","properties":[{"displayName":"Host","name":"host","type":"string","default":"localhost"},{"displayName":"Database","name":"database","type":"string","default":"postgres"},{"displayName":"User","name":"user","type":"string","default":"postgres"},{"displayName":"Password","name":"password","type":"string","typeOptions":{"password":true},"default":""},{"displayName":"Ignore SSL Issues","name":"allowUnauthorizedCerts","type":"boolean","default":false,"description":"Whether to connect even if SSL certificate validation is not possible"},{"displayName":"SSL","name":"ssl","type":"options","displayOptions":{"show":{"allowUnauthorizedCerts":[false]}},"options":[{"name":"Allow","value":"allow"},{"name":"Disable","value":"disable"},{"name":"Require","value":"require"},{"name":"Verify (Not Implemented)","value":"verify"},{"name":"Verify-Full (Not Implemented)","value":"verify-full"}],"default":"disable"},{"displayName":"Port","name":"port","type":"number","default":5432},{"displayName":"SSH Tunnel","name":"sshTunnel","type":"boolean","default":false},{"displayName":"SSH Authenticate with","name":"sshAuthenticateWith","type":"options","default":"password","options":[{"name":"Password","value":"password"},{"name":"Private Key","value":"privateKey"}],"displayOptions":{"show":{"sshTunnel":[true]}}},{"displayName":"SSH Host","name":"sshHost","type":"string","default":"localhost","displayOptions":{"show":{"sshTunnel":[true]}}},{"displayName":"SSH Port","name":"sshPort","type":"number","default":22,"displayOptions":{"show":{"sshTunnel":[true]}}},{"displayName":"SSH Postgres Port","name":"sshPostgresPort","type":"number","default":5432,"displayOptions":{"show":{"sshTunnel":[true]}}},{"displayName":"SSH User","name":"sshUser","type":"string","default":"root","displayOptions":{"show":{"sshTunnel":[true]}}},{"displayName":"SSH Password","name":"sshPassword","type":"string","typeOptions":{"password":true},"default":"","displayOptions":{"show":{"sshTunnel":[true],"sshAuthenticateWith":["password"]}}},{"displayName":"Private Key","name":"privateKey","type":"string","typeOptions":{"rows":4,"password":true},"default":"","displayOptions":{"show":{"sshTunnel":[true],"sshAuthenticateWith":["privateKey"]}}},{"displayName":"Passphrase","name":"passphrase","type":"string","default":"","description":"Passphase used to create the key, if no passphase was used leave empty","displayOptions":{"show":{"sshTunnel":[true],"sshAuthenticateWith":["privateKey"]}}}]},
212
212
  {"name":"postHogApi","displayName":"PostHog API","documentationUrl":"postHog","properties":[{"displayName":"URL","name":"url","type":"string","default":"https://app.posthog.com"},{"displayName":"API Key","name":"apiKey","type":"string","typeOptions":{"password":true},"default":""}]},
213
213
  {"name":"postmarkApi","displayName":"Postmark API","documentationUrl":"postmark","properties":[{"displayName":"Server API Token","name":"serverToken","type":"string","default":""}],"authenticate":{"type":"generic","properties":{"headers":{"X-Postmark-Server-Token":"={{$credentials.serverToken}}"}}},"test":{"request":{"baseURL":"https://api.postmarkapp.com","url":"/server","method":"GET"}}},
214
214
  {"name":"profitWellApi","displayName":"ProfitWell API","documentationUrl":"profitWell","properties":[{"displayName":"API Token","name":"accessToken","type":"string","typeOptions":{"password":true},"default":"","description":"Your Private Token"}]},
@@ -253,7 +253,7 @@
253
253
  {"name":"spontitApi","displayName":"Spontit API","documentationUrl":"spontit","properties":[{"displayName":"API Key","name":"apiKey","type":"string","typeOptions":{"password":true},"default":""},{"displayName":"Username","name":"username","type":"string","default":""}]},
254
254
  {"name":"spotifyOAuth2Api","extends":["oAuth2Api"],"displayName":"Spotify OAuth2 API","documentationUrl":"spotify","properties":[{"displayName":"Spotify Server","name":"server","type":"hidden","default":"https://api.spotify.com/"},{"displayName":"Grant Type","name":"grantType","type":"hidden","default":"authorizationCode"},{"displayName":"Authorization URL","name":"authUrl","type":"hidden","default":"https://accounts.spotify.com/authorize","required":true},{"displayName":"Access Token URL","name":"accessTokenUrl","type":"hidden","default":"https://accounts.spotify.com/api/token","required":true},{"displayName":"Scope","name":"scope","type":"hidden","default":"user-read-playback-state playlist-read-collaborative user-modify-playback-state playlist-modify-public user-read-currently-playing playlist-read-private user-read-recently-played playlist-modify-private user-library-read user-follow-read"},{"displayName":"Auth URI Query Parameters","name":"authQueryParameters","type":"hidden","default":""},{"displayName":"Authentication","name":"authentication","type":"hidden","default":"header"}]},
255
255
  {"name":"sshPassword","displayName":"SSH Password","documentationUrl":"ssh","properties":[{"displayName":"Host","name":"host","required":true,"type":"string","default":"","placeholder":"localhost"},{"displayName":"Port","name":"port","required":true,"type":"number","default":22},{"displayName":"Username","name":"username","type":"string","default":""},{"displayName":"Password","name":"password","type":"string","typeOptions":{"password":true},"default":""}]},
256
- {"name":"sshPrivateKey","displayName":"SSH Private Key","documentationUrl":"ssh","properties":[{"displayName":"Host","name":"host","required":true,"type":"string","default":"","placeholder":"localhost"},{"displayName":"Port","name":"port","required":true,"type":"number","default":22},{"displayName":"Username","name":"username","type":"string","default":""},{"displayName":"Private Key","name":"privateKey","type":"string","typeOptions":{"rows":4},"default":""},{"displayName":"Passphrase","name":"passphrase","type":"string","default":"","description":"Passphase used to create the key, if no passphase was used leave empty"}]},
256
+ {"name":"sshPrivateKey","displayName":"SSH Private Key","documentationUrl":"ssh","properties":[{"displayName":"Host","name":"host","required":true,"type":"string","default":"","placeholder":"localhost"},{"displayName":"Port","name":"port","required":true,"type":"number","default":22},{"displayName":"Username","name":"username","type":"string","default":""},{"displayName":"Private Key","name":"privateKey","type":"string","typeOptions":{"rows":4,"password":true},"default":""},{"displayName":"Passphrase","name":"passphrase","type":"string","default":"","description":"Passphase used to create the key, if no passphase was used leave empty"}]},
257
257
  {"name":"stackbyApi","displayName":"Stackby API","documentationUrl":"stackby","properties":[{"displayName":"API Key","name":"apiKey","type":"string","typeOptions":{"password":true},"default":""}]},
258
258
  {"name":"storyblokContentApi","displayName":"Storyblok Content API","documentationUrl":"storyblok","properties":[{"displayName":"API Key","name":"apiKey","type":"string","typeOptions":{"password":true},"default":""}]},
259
259
  {"name":"storyblokManagementApi","displayName":"Storyblok Management API","documentationUrl":"storyblok","properties":[{"displayName":"Personal Access Token","name":"accessToken","type":"string","typeOptions":{"password":true},"default":""}]},
@@ -272,6 +272,7 @@
272
272
  {"name":"todoistApi","displayName":"Todoist API","documentationUrl":"todoist","properties":[{"displayName":"API Key","name":"apiKey","type":"string","typeOptions":{"password":true},"default":""}],"authenticate":{"type":"generic","properties":{"headers":{"Authorization":"=Bearer {{$credentials.apiKey}}"}}},"test":{"request":{"baseURL":"https://api.todoist.com/rest/v2","url":"/labels"}}},
273
273
  {"name":"todoistOAuth2Api","extends":["oAuth2Api"],"displayName":"Todoist OAuth2 API","documentationUrl":"todoist","properties":[{"displayName":"Grant Type","name":"grantType","type":"hidden","default":"authorizationCode"},{"displayName":"Authorization URL","name":"authUrl","type":"hidden","default":"https://todoist.com/oauth/authorize","required":true},{"displayName":"Access Token URL","name":"accessTokenUrl","type":"hidden","default":"https://todoist.com/oauth/access_token","required":true},{"displayName":"Scope","name":"scope","type":"hidden","default":"data:read_write,data:delete"},{"displayName":"Auth URI Query Parameters","name":"authQueryParameters","type":"hidden","default":""},{"displayName":"Authentication","name":"authentication","type":"hidden","default":"body"}]},
274
274
  {"name":"togglApi","displayName":"Toggl API","documentationUrl":"toggl","properties":[{"displayName":"Username","name":"username","type":"string","default":""},{"displayName":"Password","name":"password","type":"string","typeOptions":{"password":true},"default":""}]},
275
+ {"name":"totpApi","displayName":"TOTP API","documentationUrl":"totp","properties":[{"displayName":"Secret","name":"secret","type":"string","typeOptions":{"password":true},"default":"","placeholder":"e.g. BVDRSBXQB2ZEL5HE","required":true,"description":"Secret key encoded in the QR code during setup. <a href=\"https://github.com/google/google-authenticator/wiki/Key-Uri-Format#secret\">Learn more</a>."},{"displayName":"Label","name":"label","type":"string","default":"","required":true,"placeholder":"e.g. GitHub:john-doe","description":"Identifier for the TOTP account, in the <code>issuer:username</code> format. <a href=\"https://github.com/google/google-authenticator/wiki/Key-Uri-Format#label\">Learn more</a>."}]},
275
276
  {"name":"travisCiApi","displayName":"Travis API","documentationUrl":"travisCi","properties":[{"displayName":"API Token","name":"apiToken","type":"string","default":""}]},
276
277
  {"name":"trelloApi","displayName":"Trello API","documentationUrl":"trello","properties":[{"displayName":"API Key","name":"apiKey","type":"string","typeOptions":{"password":true},"required":true,"default":""},{"displayName":"API Token","name":"apiToken","type":"string","required":true,"default":""},{"displayName":"OAuth Secret","name":"oauthSecret","type":"hidden","default":""}],"test":{"request":{"baseURL":"https://api.trello.com","url":"=/1/tokens/{{$credentials.apiToken}}/member"}},"authenticate":{}},
277
278
  {"name":"twakeCloudApi","displayName":"Twake Cloud API","documentationUrl":"twake","properties":[{"displayName":"Workspace Key","name":"workspaceKey","type":"string","default":""}],"authenticate":{"type":"generic","properties":{"headers":{"Authorization":"=Bearer {{$credentials.workspaceKey}}"}}},"test":{"request":{"baseURL":"https://plugins.twake.app/plugins/n8n","url":"/channel","method":"POST"}}},