n8n-nodes-prestashop8 2.4.0 → 2.4.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.
@@ -19,7 +19,7 @@ function buildOperatorField() {
19
19
  name: 'operator',
20
20
  type: 'options',
21
21
  options: types_1.FILTER_OPERATORS,
22
- default: '=',
22
+ default: 'EQ',
23
23
  noDataExpression: true,
24
24
  description: 'Comparison operator for filtering. Custom allows you to write your own filter expression.',
25
25
  };
@@ -354,9 +354,11 @@ exports.PrestaShop8Description = {
354
354
  description: 'PrestaShop field list format: [field1,field2,field3] or comma-separated: field1,field2,field3',
355
355
  },
356
356
  // Search Filters - Images resource (custom filter only)
357
+ // NOTE: distinct name from the generic 'filters' below. Two parameters sharing
358
+ // the same name break n8n's NDV value binding (operator could not be selected).
357
359
  {
358
360
  displayName: 'Search Filters',
359
- name: 'filters',
361
+ name: 'filtersImages',
360
362
  type: 'fixedCollection',
361
363
  ...showForResourceOp('images', 'search'),
362
364
  default: {},
@@ -233,7 +233,11 @@ class PrestaShop8 {
233
233
  break;
234
234
  }
235
235
  case 'search': {
236
- const filtersParam = this.getNodeParameter('filters', i, {});
236
+ // Images uses a separate parameter ('filtersImages') to avoid a duplicate
237
+ // parameter name that breaks n8n's NDV value binding.
238
+ const filtersParam = (resource === 'images'
239
+ ? this.getNodeParameter('filtersImages', i, {})
240
+ : this.getNodeParameter('filters', i, {}));
237
241
  const advancedOptions = this.getNodeParameter('advancedOptions', i, {});
238
242
  const display = this.getNodeParameter('display', i, 'full');
239
243
  const customFields = this.getNodeParameter('customFields', i, '');
@@ -14,7 +14,8 @@ const axios = require('axios');
14
14
  * {v} is replaced by the filter value.
15
15
  */
16
16
  exports.FILTER_OPERATOR_FORMATS = {
17
- '=': { template: '[{v}]', requiresValue: true },
17
+ 'EQ': { template: '[{v}]', requiresValue: true },
18
+ '=': { template: '[{v}]', requiresValue: true }, // legacy alias (custom filters / API)
18
19
  '!=': { template: '![{v}]', requiresValue: true },
19
20
  '>': { template: '>[{v}]', requiresValue: true },
20
21
  '>=': { template: '>=[{v}]', requiresValue: true },
@@ -376,7 +376,9 @@ exports.PRESTASHOP_RESOURCES = {
376
376
  };
377
377
  // Available filter operators
378
378
  exports.FILTER_OPERATORS = [
379
- { name: '= Equal to', value: '=' },
379
+ // Value must NOT be '=': n8n treats any parameter value starting with '='
380
+ // as an expression, which makes the option impossible to select in the UI.
381
+ { name: '= Equal to', value: 'EQ' },
380
382
  { name: '≠ Not equal to', value: '!=' },
381
383
  { name: '> Greater than', value: '>' },
382
384
  { name: '≥ Greater than or equal to', value: '>=' },
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "n8n-nodes-prestashop8",
3
- "version": "2.4.0",
3
+ "version": "2.4.1",
4
4
  "description": "Nœud n8n personnalisé pour PrestaShop 8 avec support CRUD complet et conversion XML/JSON automatique",
5
5
  "keywords": [
6
6
  "n8n-community-node-package",