@bytebrand/export-cars 1.22.6 → 1.22.8

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bytebrand/export-cars",
3
- "version": "1.22.6",
3
+ "version": "1.22.8",
4
4
  "description": "",
5
5
  "author": "bytebrand",
6
6
  "license": "UNLICENSED",
@@ -67,7 +67,7 @@ export class MobileTransformer {
67
67
 
68
68
  private async transformField(fieldValue: any, rule: MappingRules): Promise<string | void> {
69
69
  const transformProcedureName = `${rule.autodeFieldType}To${upperFirst(rule.importFieldType)}`;
70
-
70
+ console.log(`${rule.autodeField} - ${transformProcedureName}`);
71
71
  switch (transformProcedureName) {
72
72
  case 'stringToString': {
73
73
  if (rule.autodeField === 'offer.offerDescription') {
@@ -379,6 +379,9 @@ export class MobileTransformer {
379
379
  }
380
380
 
381
381
  private booleanToString(fieldValue: boolean): string {
382
+ if (fieldValue === undefined || fieldValue === null) {
383
+ return '0';
384
+ }
382
385
  return String(Number(fieldValue));
383
386
  }
384
387
 
@@ -147,9 +147,9 @@ export class SantanderTransformer {
147
147
  }
148
148
  return this.stringToString(fieldValue);
149
149
  }
150
- case 'integerToString': {
151
- return this.numberToString(fieldValue);
152
- }
150
+ case 'stringToInteger':
151
+ case 'integerToString':
152
+ case 'numberToNumber':
153
153
  case 'numberToString': {
154
154
  return this.numberToString(fieldValue);
155
155
  }
@@ -159,6 +159,7 @@ export class SantanderTransformer {
159
159
  case 'selectorToSelector': {
160
160
  return this.selectorToSelector(fieldValue, rule);
161
161
  }
162
+ case 'selectorToText':
162
163
  case 'selectorToString': {
163
164
  return this.selectorToString(fieldValue, rule);
164
165
  }
@@ -323,40 +324,40 @@ export class SantanderTransformer {
323
324
  }
324
325
 
325
326
  private getEmissionClass(car: DataSchemes.Car): string | void {
326
- const emissionClass = get(car, 'environmentEmissions.emissionClass', 'selector_unknown');
327
- switch (emissionClass) {
328
- case 'selector_emissionClass_euro1': {
329
- return '1';
330
- }
331
- case 'selector_emissionClass_euro2': {
332
- return '2';
333
- }
334
- case 'selector_emissionClass_euro3': {
335
- return '3';
336
- }
337
- case 'selector_emissionClass_euro4':
338
- case 'selector_unknown': {
339
- return '4';
340
- }
341
- case 'selector_emissionClass_euro5': {
342
- return '5';
343
- }
344
- case 'selector_emissionClass_euro6': {
345
- return '6';
346
- }
347
- case 'selector_emissionClass_euro6b': {
348
- return '6b';
349
- }
350
- case 'selector_emissionClass_euro6c': {
351
- return '6c';
352
- }
353
- case 'selector_emissionClass_euro6d': {
354
- return '6d';
355
- }
356
- case 'selector_emissionClass_euro6d_temp': {
357
- return '6d-TEMP';
358
- }
327
+ const emissionClass = get(car, 'environmentEmissions.emissionClass', 'selector_unknown');
328
+ switch (emissionClass) {
329
+ case 'selector_emissionClass_euro1': {
330
+ return '1';
331
+ }
332
+ case 'selector_emissionClass_euro2': {
333
+ return '2';
359
334
  }
335
+ case 'selector_emissionClass_euro3': {
336
+ return '3';
337
+ }
338
+ case 'selector_emissionClass_euro4':
339
+ case 'selector_unknown': {
340
+ return '4';
341
+ }
342
+ case 'selector_emissionClass_euro5': {
343
+ return '5';
344
+ }
345
+ case 'selector_emissionClass_euro6': {
346
+ return '6';
347
+ }
348
+ case 'selector_emissionClass_euro6b': {
349
+ return '6';
350
+ }
351
+ case 'selector_emissionClass_euro6c': {
352
+ return '6';
353
+ }
354
+ case 'selector_emissionClass_euro6d': {
355
+ return '6';
356
+ }
357
+ case 'selector_emissionClass_euro6d_temp': {
358
+ return '6';
359
+ }
360
+ }
360
361
  }
361
362
 
362
363
  private getEnergyEfficiencyClass(car: DataSchemes.Car): string {
@@ -481,17 +482,29 @@ export class SantanderTransformer {
481
482
  }
482
483
 
483
484
  private booleanToString(fieldValue: boolean): string {
485
+ if (fieldValue === undefined || fieldValue === null) {
486
+ return '0';
487
+ }
484
488
  return String(Number(fieldValue));
485
489
  }
486
490
 
487
491
  private selectorToSelector(fieldValue: string, rule: MappingRules): string | void {
488
492
  if (fieldValue === 'selector_unknown' && rule.autodeField === 'heatingCooling.climatisation') {
489
- return '';
493
+ return '0';
490
494
  }
491
495
 
492
- if (fieldValue === 'selector_unknown' || fieldValue === 'selector_interiorColor_rainbow') {
496
+ if (fieldValue === 'selector_unknown' && rule.autodeField === 'driveSuspension.wheelFormula') {
497
+ return '0';
498
+ }
499
+
500
+ if (fieldValue === 'selector_interiorColor_rainbow') {
501
+ return '5';
502
+ }
503
+
504
+ if (fieldValue === 'selector_unknown') {
493
505
  return '';
494
506
  }
507
+
495
508
  const pairs = rule.selectors.map(p => p.split(':').reverse());
496
509
  const [match] = pairs.filter(p => p[0] === fieldValue);
497
510
  // consider adding values not mapped in table