n8n-nodes-base 1.4.1 → 1.5.1

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 (64) hide show
  1. package/dist/credentials/StrapiTokenApi.credentials.d.ts +9 -0
  2. package/dist/credentials/StrapiTokenApi.credentials.js +72 -0
  3. package/dist/credentials/StrapiTokenApi.credentials.js.map +1 -0
  4. package/dist/known/credentials.json +7 -0
  5. package/dist/nodes/AgileCrm/AgileCrm.node.js +32 -12
  6. package/dist/nodes/AgileCrm/AgileCrm.node.js.map +1 -1
  7. package/dist/nodes/AgileCrm/CompanyDescription.js +80 -8
  8. package/dist/nodes/AgileCrm/CompanyDescription.js.map +1 -1
  9. package/dist/nodes/Code/Code.node.js +4 -1
  10. package/dist/nodes/Code/Code.node.js.map +1 -1
  11. package/dist/nodes/Code/JavaScriptSandbox.d.ts +1 -1
  12. package/dist/nodes/Code/JavaScriptSandbox.js +1 -1
  13. package/dist/nodes/Code/JavaScriptSandbox.js.map +1 -1
  14. package/dist/nodes/DateTime/V2/DateTimeV2.node.js +16 -9
  15. package/dist/nodes/DateTime/V2/DateTimeV2.node.js.map +1 -1
  16. package/dist/nodes/DateTime/test/node/workflow.nullDate_v2.json +93 -0
  17. package/dist/nodes/Function/Function.node.js +1 -1
  18. package/dist/nodes/Function/Function.node.js.map +1 -1
  19. package/dist/nodes/FunctionItem/FunctionItem.node.js +1 -1
  20. package/dist/nodes/FunctionItem/FunctionItem.node.js.map +1 -1
  21. package/dist/nodes/ItemLists/V1/ItemListsV1.node.js +2 -24
  22. package/dist/nodes/ItemLists/V1/ItemListsV1.node.js.map +1 -1
  23. package/dist/nodes/ItemLists/V2/ItemListsV2.node.js +2 -24
  24. package/dist/nodes/ItemLists/V2/ItemListsV2.node.js.map +1 -1
  25. package/dist/nodes/ItemLists/V3/actions/itemList/sort.operation.js +1 -24
  26. package/dist/nodes/ItemLists/V3/actions/itemList/sort.operation.js.map +1 -1
  27. package/dist/nodes/ItemLists/V3/helpers/utils.d.ts +2 -1
  28. package/dist/nodes/ItemLists/V3/helpers/utils.js +17 -1
  29. package/dist/nodes/ItemLists/V3/helpers/utils.js.map +1 -1
  30. package/dist/nodes/Microsoft/Excel/v2/methods/listSearch.js +15 -2
  31. package/dist/nodes/Microsoft/Excel/v2/methods/listSearch.js.map +1 -1
  32. package/dist/nodes/MongoDb/GenericFunctions.d.ts +1 -0
  33. package/dist/nodes/MongoDb/GenericFunctions.js +13 -1
  34. package/dist/nodes/MongoDb/GenericFunctions.js.map +1 -1
  35. package/dist/nodes/MongoDb/MongoDb.node.js +24 -3
  36. package/dist/nodes/MongoDb/MongoDb.node.js.map +1 -1
  37. package/dist/nodes/MongoDb/MongoDbProperties.d.ts +2 -0
  38. package/dist/nodes/MongoDb/MongoDbProperties.js +239 -0
  39. package/dist/nodes/MongoDb/MongoDbProperties.js.map +1 -0
  40. package/dist/nodes/MySql/MySql.node.js +2 -1
  41. package/dist/nodes/MySql/MySql.node.js.map +1 -1
  42. package/dist/nodes/MySql/v2/actions/versionDescription.js +1 -1
  43. package/dist/nodes/MySql/v2/actions/versionDescription.js.map +1 -1
  44. package/dist/nodes/MySql/v2/helpers/utils.js +15 -1
  45. package/dist/nodes/MySql/v2/helpers/utils.js.map +1 -1
  46. package/dist/nodes/Postgres/Postgres.node.js +2 -1
  47. package/dist/nodes/Postgres/Postgres.node.js.map +1 -1
  48. package/dist/nodes/Postgres/v2/actions/versionDescription.js +1 -1
  49. package/dist/nodes/Postgres/v2/actions/versionDescription.js.map +1 -1
  50. package/dist/nodes/Postgres/v2/helpers/utils.js +55 -6
  51. package/dist/nodes/Postgres/v2/helpers/utils.js.map +1 -1
  52. package/dist/nodes/RssFeedRead/RssFeedRead.node.js +23 -1
  53. package/dist/nodes/RssFeedRead/RssFeedRead.node.js.map +1 -1
  54. package/dist/nodes/Strapi/GenericFunctions.d.ts +4 -2
  55. package/dist/nodes/Strapi/GenericFunctions.js +10 -5
  56. package/dist/nodes/Strapi/GenericFunctions.js.map +1 -1
  57. package/dist/nodes/Strapi/Strapi.node.js +42 -5
  58. package/dist/nodes/Strapi/Strapi.node.js.map +1 -1
  59. package/dist/types/credentials.json +1 -0
  60. package/dist/types/nodes.json +13 -11
  61. package/package.json +7 -6
  62. package/dist/nodes/MongoDb/MongoDbDescription.d.ts +0 -2
  63. package/dist/nodes/MongoDb/MongoDbDescription.js +0 -259
  64. package/dist/nodes/MongoDb/MongoDbDescription.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "n8n-nodes-base",
3
- "version": "1.4.1",
3
+ "version": "1.5.1",
4
4
  "description": "Base nodes of n8n",
5
5
  "license": "SEE LICENSE IN LICENSE.md",
6
6
  "homepage": "https://n8n.io",
@@ -306,6 +306,7 @@
306
306
  "dist/credentials/StoryblokContentApi.credentials.js",
307
307
  "dist/credentials/StoryblokManagementApi.credentials.js",
308
308
  "dist/credentials/StrapiApi.credentials.js",
309
+ "dist/credentials/StrapiTokenApi.credentials.js",
309
310
  "dist/credentials/StravaOAuth2Api.credentials.js",
310
311
  "dist/credentials/StripeApi.credentials.js",
311
312
  "dist/credentials/SupabaseApi.credentials.js",
@@ -792,10 +793,11 @@
792
793
  "@types/xml2js": "^0.4.11",
793
794
  "eslint-plugin-n8n-nodes-base": "^1.16.0",
794
795
  "gulp": "^4.0.0",
795
- "n8n-core": "1.4.0"
796
+ "n8n-core": "1.5.0"
796
797
  },
797
798
  "dependencies": {
798
799
  "@kafkajs/confluent-schema-registry": "1.0.6",
800
+ "@n8n/vm2": "^3.9.19",
799
801
  "amqplib": "^0.10.3",
800
802
  "aws4": "^1.8.0",
801
803
  "basic-auth": "^2.0.1",
@@ -825,7 +827,7 @@
825
827
  "minifaker": "^1.34.1",
826
828
  "moment": "~2.29.2",
827
829
  "moment-timezone": "^0.5.28",
828
- "mongodb": "^4.9.1",
830
+ "mongodb": "^4.17.1",
829
831
  "mqtt": "^5.0.2",
830
832
  "mssql": "^8.1.2",
831
833
  "mysql2": "~2.3.0",
@@ -847,14 +849,13 @@
847
849
  "semver": "^7.5.4",
848
850
  "showdown": "^2.0.3",
849
851
  "simple-git": "^3.17.0",
850
- "snowflake-sdk": "^1.6.23",
852
+ "snowflake-sdk": "^1.8.0",
851
853
  "ssh2-sftp-client": "^7.0.0",
852
854
  "tmp-promise": "^3.0.2",
853
855
  "uuid": "^8.3.2",
854
- "vm2": "^3.9.19",
855
856
  "xlsx": "https://cdn.sheetjs.com/xlsx-0.19.3/xlsx-0.19.3.tgz",
856
857
  "xml2js": "^0.5.0",
857
- "n8n-workflow": "1.4.0"
858
+ "n8n-workflow": "1.5.0"
858
859
  },
859
860
  "scripts": {
860
861
  "clean": "rimraf dist .turbo",
@@ -1,2 +0,0 @@
1
- import type { INodeTypeDescription } from 'n8n-workflow';
2
- export declare const nodeDescription: INodeTypeDescription;
@@ -1,259 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.nodeDescription = void 0;
4
- exports.nodeDescription = {
5
- displayName: 'MongoDB',
6
- name: 'mongoDb',
7
- icon: 'file:mongodb.svg',
8
- group: ['input'],
9
- version: 1,
10
- description: 'Find, insert and update documents in MongoDB',
11
- defaults: {
12
- name: 'MongoDB',
13
- },
14
- inputs: ['main'],
15
- outputs: ['main'],
16
- credentials: [
17
- {
18
- name: 'mongoDb',
19
- required: true,
20
- testedBy: 'mongoDbCredentialTest',
21
- },
22
- ],
23
- properties: [
24
- {
25
- displayName: 'Operation',
26
- name: 'operation',
27
- type: 'options',
28
- noDataExpression: true,
29
- options: [
30
- {
31
- name: 'Aggregate',
32
- value: 'aggregate',
33
- description: 'Aggregate documents',
34
- action: 'Aggregate documents',
35
- },
36
- {
37
- name: 'Delete',
38
- value: 'delete',
39
- description: 'Delete documents',
40
- action: 'Delete documents',
41
- },
42
- {
43
- name: 'Find',
44
- value: 'find',
45
- description: 'Find documents',
46
- action: 'Find documents',
47
- },
48
- {
49
- name: 'Find And Replace',
50
- value: 'findOneAndReplace',
51
- description: 'Find and replace documents',
52
- action: 'Find and replace documents',
53
- },
54
- {
55
- name: 'Find And Update',
56
- value: 'findOneAndUpdate',
57
- description: 'Find and update documents',
58
- action: 'Find and update documents',
59
- },
60
- {
61
- name: 'Insert',
62
- value: 'insert',
63
- description: 'Insert documents',
64
- action: 'Insert documents',
65
- },
66
- {
67
- name: 'Update',
68
- value: 'update',
69
- description: 'Update documents',
70
- action: 'Update documents',
71
- },
72
- ],
73
- default: 'find',
74
- },
75
- {
76
- displayName: 'Collection',
77
- name: 'collection',
78
- type: 'string',
79
- required: true,
80
- default: '',
81
- description: 'MongoDB Collection',
82
- },
83
- {
84
- displayName: 'Query',
85
- name: 'query',
86
- type: 'json',
87
- typeOptions: {
88
- alwaysOpenEditWindow: true,
89
- },
90
- displayOptions: {
91
- show: {
92
- operation: ['aggregate'],
93
- },
94
- },
95
- default: '',
96
- placeholder: '[{ "$match": { "$gt": "1950-01-01" }, ... }]',
97
- hint: 'Learn more about aggregation pipeline <a href="https://docs.mongodb.com/manual/core/aggregation-pipeline/">here</a>',
98
- required: true,
99
- description: 'MongoDB aggregation pipeline query in JSON format',
100
- },
101
- {
102
- displayName: 'Delete Query (JSON Format)',
103
- name: 'query',
104
- type: 'json',
105
- typeOptions: {
106
- rows: 5,
107
- },
108
- displayOptions: {
109
- show: {
110
- operation: ['delete'],
111
- },
112
- },
113
- default: '{}',
114
- placeholder: '{ "birth": { "$gt": "1950-01-01" } }',
115
- required: true,
116
- description: 'MongoDB Delete query',
117
- },
118
- {
119
- displayName: 'Options',
120
- name: 'options',
121
- type: 'collection',
122
- displayOptions: {
123
- show: {
124
- operation: ['find'],
125
- },
126
- },
127
- default: {},
128
- placeholder: 'Add options',
129
- description: 'Add query options',
130
- options: [
131
- {
132
- displayName: 'Limit',
133
- name: 'limit',
134
- type: 'number',
135
- typeOptions: {
136
- minValue: 1,
137
- },
138
- default: 0,
139
- description: 'Use limit to specify the maximum number of documents or 0 for unlimited documents',
140
- },
141
- {
142
- displayName: 'Skip',
143
- name: 'skip',
144
- type: 'number',
145
- default: 0,
146
- description: 'The number of documents to skip in the results set',
147
- },
148
- {
149
- displayName: 'Sort (JSON Format)',
150
- name: 'sort',
151
- type: 'json',
152
- typeOptions: {
153
- rows: 2,
154
- },
155
- default: '{}',
156
- placeholder: '{ "field": -1 }',
157
- description: 'A JSON that defines the sort order of the result set',
158
- },
159
- ],
160
- },
161
- {
162
- displayName: 'Query (JSON Format)',
163
- name: 'query',
164
- type: 'json',
165
- typeOptions: {
166
- rows: 5,
167
- },
168
- displayOptions: {
169
- show: {
170
- operation: ['find'],
171
- },
172
- },
173
- default: '{}',
174
- placeholder: '{ "birth": { "$gt": "1950-01-01" } }',
175
- required: true,
176
- description: 'MongoDB Find query',
177
- },
178
- {
179
- displayName: 'Fields',
180
- name: 'fields',
181
- type: 'string',
182
- displayOptions: {
183
- show: {
184
- operation: ['insert'],
185
- },
186
- },
187
- default: '',
188
- placeholder: 'name,description',
189
- description: 'Comma-separated list of the fields to be included into the new document',
190
- },
191
- {
192
- displayName: 'Update Key',
193
- name: 'updateKey',
194
- type: 'string',
195
- displayOptions: {
196
- show: {
197
- operation: ['update', 'findOneAndReplace', 'findOneAndUpdate'],
198
- },
199
- },
200
- default: 'id',
201
- required: true,
202
- description: 'Name of the property which decides which rows in the database should be updated. Normally that would be "id".',
203
- },
204
- {
205
- displayName: 'Fields',
206
- name: 'fields',
207
- type: 'string',
208
- displayOptions: {
209
- show: {
210
- operation: ['update', 'findOneAndReplace', 'findOneAndUpdate'],
211
- },
212
- },
213
- default: '',
214
- placeholder: 'name,description',
215
- description: 'Comma-separated list of the fields to be included into the new document',
216
- },
217
- {
218
- displayName: 'Upsert',
219
- name: 'upsert',
220
- type: 'boolean',
221
- displayOptions: {
222
- show: {
223
- operation: ['update', 'findOneAndReplace', 'findOneAndUpdate'],
224
- },
225
- },
226
- default: false,
227
- description: 'Whether to perform an insert if no documents match the update key',
228
- },
229
- {
230
- displayName: 'Options',
231
- name: 'options',
232
- type: 'collection',
233
- displayOptions: {
234
- show: {
235
- operation: ['update', 'insert', 'findOneAndReplace', 'findOneAndUpdate'],
236
- },
237
- },
238
- placeholder: 'Add Option',
239
- default: {},
240
- options: [
241
- {
242
- displayName: 'Date Fields',
243
- name: 'dateFields',
244
- type: 'string',
245
- default: '',
246
- description: 'Comma separeted list of fields that will be parse as Mongo Date type',
247
- },
248
- {
249
- displayName: 'Use Dot Notation',
250
- name: 'useDotNotation',
251
- type: 'boolean',
252
- default: false,
253
- description: 'Whether to use dot notation to access date fields',
254
- },
255
- ],
256
- },
257
- ],
258
- };
259
- //# sourceMappingURL=MongoDbDescription.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MongoDbDescription.js","sourceRoot":"","sources":["../../../nodes/MongoDb/MongoDbDescription.ts"],"names":[],"mappings":"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"}