@bytebrand/export-cars 1.9.0 → 1.10.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.
- package/dist/configs/alleskralle.config.js +1 -0
- package/dist/configs/alleskralle.config.js.map +1 -1
- package/dist/configs/as24.config.js +1 -0
- package/dist/configs/as24.config.js.map +1 -1
- package/dist/configs/auto24.config.js +1 -0
- package/dist/configs/auto24.config.js.map +1 -1
- package/dist/configs/autoboerse.config.js +1 -0
- package/dist/configs/autoboerse.config.js.map +1 -1
- package/dist/configs/autouncle.config.js +1 -0
- package/dist/configs/autouncle.config.js.map +1 -1
- package/dist/configs/by-owner.config.js +1 -0
- package/dist/configs/by-owner.config.js.map +1 -1
- package/dist/configs/config.d.ts +3 -9
- package/dist/configs/config.js +3 -10
- package/dist/configs/config.js.map +1 -1
- package/dist/configs/criteo.config.js +1 -0
- package/dist/configs/criteo.config.js.map +1 -1
- package/dist/configs/dasparking.config.js +1 -0
- package/dist/configs/dasparking.config.js.map +1 -1
- package/dist/configs/eauto.config.js +2 -3
- package/dist/configs/eauto.config.js.map +1 -1
- package/dist/configs/facebook-shop.config.js +2 -0
- package/dist/configs/facebook-shop.config.js.map +1 -1
- package/dist/configs/fb.config.js +3 -1
- package/dist/configs/fb.config.js.map +1 -1
- package/dist/configs/google.config.js +2 -1
- package/dist/configs/google.config.js.map +1 -1
- package/dist/configs/marktde.config.js +2 -1
- package/dist/configs/marktde.config.js.map +1 -1
- package/dist/configs/meinstadt.config.js +1 -0
- package/dist/configs/meinstadt.config.js.map +1 -1
- package/dist/configs/yescar.config.js +1 -0
- package/dist/configs/yescar.config.js.map +1 -1
- package/dist/export.command.d.ts +3 -4
- package/dist/export.command.js +3 -6
- package/dist/export.command.js.map +1 -1
- package/dist/exporters/autouncle.exporter.js +0 -1
- package/dist/exporters/autouncle.exporter.js.map +1 -1
- package/dist/exporters/fb.exporter.js +3 -1
- package/dist/exporters/fb.exporter.js.map +1 -1
- package/dist/exporters/meinstadt.exporter.js +0 -1
- package/dist/exporters/meinstadt.exporter.js.map +1 -1
- package/dist/interfaces/export-item.interface.d.ts +5 -0
- package/dist/services/images.service.d.ts +3 -5
- package/dist/services/images.service.js +11 -25
- package/dist/services/images.service.js.map +1 -1
- package/dist/transformers/as24.transformer.d.ts +1 -2
- package/dist/transformers/as24.transformer.js +3 -4
- package/dist/transformers/as24.transformer.js.map +1 -1
- package/dist/transformers/auto24.transfomer.d.ts +1 -0
- package/dist/transformers/auto24.transfomer.js +15 -2
- package/dist/transformers/auto24.transfomer.js.map +1 -1
- package/dist/transformers/autouncle.transformer.d.ts +0 -1
- package/dist/transformers/autouncle.transformer.js +5 -6
- package/dist/transformers/autouncle.transformer.js.map +1 -1
- package/dist/transformers/by-owner.transformer.js +3 -14
- package/dist/transformers/by-owner.transformer.js.map +1 -1
- package/dist/transformers/facebook-shop.transformer.d.ts +5 -4
- package/dist/transformers/facebook-shop.transformer.js +8 -11
- package/dist/transformers/facebook-shop.transformer.js.map +1 -1
- package/dist/transformers/fb.transformer.js +5 -1
- package/dist/transformers/fb.transformer.js.map +1 -1
- package/dist/transformers/google.transformer.js +2 -2
- package/dist/transformers/google.transformer.js.map +1 -1
- package/dist/transformers/modix.transformer.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +3 -9
- package/src/configs/alleskralle.config.ts +2 -1
- package/src/configs/as24.config.ts +2 -1
- package/src/configs/auto24.config.ts +2 -1
- package/src/configs/autoboerse.config.ts +2 -2
- package/src/configs/autouncle.config.ts +2 -1
- package/src/configs/by-owner.config.ts +4 -3
- package/src/configs/config.ts +3 -10
- package/src/configs/criteo.config.ts +1 -0
- package/src/configs/dasparking.config.ts +2 -1
- package/src/configs/eauto.config.ts +3 -4
- package/src/configs/facebook-shop.config.ts +3 -1
- package/src/configs/fb.config.ts +4 -2
- package/src/configs/google.config.ts +3 -2
- package/src/configs/marktde.config.ts +4 -3
- package/src/configs/meinstadt.config.ts +2 -1
- package/src/configs/yescar.config.ts +2 -1
- package/src/export.command.ts +2 -3
- package/src/exporters/autouncle.exporter.ts +7 -5
- package/src/exporters/fb.exporter.ts +3 -3
- package/src/exporters/meinstadt.exporter.ts +6 -4
- package/src/interfaces/export-item.interface.ts +5 -0
- package/src/services/images.service.ts +18 -31
- package/src/transformers/as24.transformer.ts +2 -3
- package/src/transformers/auto24.transfomer.ts +16 -2
- package/src/transformers/autouncle.transformer.ts +7 -9
- package/src/transformers/by-owner.transformer.ts +3 -16
- package/src/transformers/facebook-shop.transformer.ts +7 -13
- package/src/transformers/fb.transformer.ts +9 -1
- package/src/transformers/google.transformer.ts +2 -1
- package/src/transformers/modix.transformer.ts +3 -2
- package/d.json +0 -1
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { TranslatorExtended } from '@bytebrand/schema-tools';
|
|
2
2
|
import { de, deVehicleDetailsPage, deVehicleProps } from '@bytebrand/i18n-dictionaries';
|
|
3
|
-
import {
|
|
3
|
+
import {get, toString, isEmpty, toSafeInteger } from 'lodash';
|
|
4
4
|
import * as moment from 'moment';
|
|
5
5
|
import { DataSchemes } from '@bytebrand/car-schema';
|
|
6
6
|
import { DePostalCodesService } from '@bytebrand/car-basic-data-scope';
|
|
7
7
|
import { DePostalCodesEntryInterface } from '@bytebrand/car-basic-data-scope/dist/interfaces/DePostalCodesInterface';
|
|
8
|
+
|
|
8
9
|
import { ConfigService, ImagesService } from '../services';
|
|
9
10
|
import { Injectable } from '@nestjs/common';
|
|
10
11
|
import { DEFAULT_ADDR1, DEFAULT_CITY, DEFAULT_ZIP, MIN_MILEAGES } from '../constants/autouncle.contants';
|
|
@@ -34,7 +35,10 @@ export class AutouncleTransformer {
|
|
|
34
35
|
}): Promise<AutouncleJsonItem> {
|
|
35
36
|
const autodeId = toString(get(car, '_id', ''));
|
|
36
37
|
const address = await this.getAddress(car, owner);
|
|
37
|
-
|
|
38
|
+
const image_urls = await this.imageService.getImages(car, images, this.configService.config.imageType);
|
|
39
|
+
const transformed_images = image_urls.map(url => {
|
|
40
|
+
return { url };
|
|
41
|
+
});
|
|
38
42
|
return {
|
|
39
43
|
back_link: `https://www.${this.configService.config.domain}/search/vehicle/${autodeId}?source=classifieds&medium=cpc&campaign=autouncle`,
|
|
40
44
|
make: toString(get(car, 'mainData.make', '')),
|
|
@@ -61,7 +65,7 @@ export class AutouncleTransformer {
|
|
|
61
65
|
seller_name: 'auto.de',
|
|
62
66
|
seller_id: toString(get(car, 'metaData.ownerId', '')),
|
|
63
67
|
description: toString(get(car, 'offer.offerDescription', '')),
|
|
64
|
-
images:
|
|
68
|
+
images: transformed_images,
|
|
65
69
|
fuel_economy: toString(get(car, 'consumption.consumptionCombined', '')),
|
|
66
70
|
co2_emission: toString(get(car, 'environmentEmissions.co2', '')),
|
|
67
71
|
co2_effiency_class: toString(get(car, 'environmentEmissions.energyEfficiencyClass', '')),
|
|
@@ -229,10 +233,4 @@ export class AutouncleTransformer {
|
|
|
229
233
|
private has4WD(): string {
|
|
230
234
|
return '';
|
|
231
235
|
}
|
|
232
|
-
|
|
233
|
-
private getImagesField(car: DataSchemes.Car, images: ImboImageResponseInterface[]): { url: string }[] {
|
|
234
|
-
return this.imageService.getDefaultImages(car, images).map(url => {
|
|
235
|
-
return { url };
|
|
236
|
-
});
|
|
237
|
-
}
|
|
238
236
|
}
|
|
@@ -3,7 +3,6 @@ import { Translator, TranslatorExtended } from '@bytebrand/schema-tools';
|
|
|
3
3
|
import { de, deVehicleDetailsPage, deVehicleProps } from '@bytebrand/i18n-dictionaries';
|
|
4
4
|
import { DataSchemes } from '@bytebrand/car-schema';
|
|
5
5
|
import { Injectable } from '@nestjs/common';
|
|
6
|
-
import { normalizeRateObject, getMonthlyInstallment, getComputedFinancing } from '@bytebrand/fe-financing';
|
|
7
6
|
import * as moment from 'moment';
|
|
8
7
|
|
|
9
8
|
type transformFn = (car: DataSchemes.Car, translator: TranslatorExtended) => string;
|
|
@@ -24,23 +23,11 @@ export class ByOwnerTransformer {
|
|
|
24
23
|
|
|
25
24
|
price: 'price.currentSalesPrice',
|
|
26
25
|
'(old price) strike price': 'price.wasPrice',
|
|
27
|
-
rate: (car: DataSchemes.Car) =>
|
|
28
|
-
const { rate } = normalizeRateObject({ ...car });
|
|
29
|
-
return getMonthlyInstallment(rate);
|
|
30
|
-
},
|
|
26
|
+
rate: (car: DataSchemes.Car) => car.rate.monthlyInstallment,
|
|
31
27
|
'discount in %': this.mapToNumber('price.historyPriceDifferencePerCent', 1, 0),
|
|
32
28
|
'discount in €': this.mapToNumber('price.historyPriceDifference', 1, 0),
|
|
33
|
-
'first_installment in €': (car: DataSchemes.Car) =>
|
|
34
|
-
|
|
35
|
-
const price = getComputedFinancing(rate) as ReturnType<typeof getComputedFinancing> & {
|
|
36
|
-
firstInstallment: number;
|
|
37
|
-
};
|
|
38
|
-
return price.firstInstallment;
|
|
39
|
-
},
|
|
40
|
-
'amount of month': (car: DataSchemes.Car) => {
|
|
41
|
-
const { rate } = normalizeRateObject({ ...car });
|
|
42
|
-
return rate.paybackPeriod;
|
|
43
|
-
},
|
|
29
|
+
'first_installment in €': (car: DataSchemes.Car) => car.rate.firstInstallment,
|
|
30
|
+
'amount of month': (car: DataSchemes.Car) => car.rate.paybackPeriod,
|
|
44
31
|
|
|
45
32
|
Name: (car: DataSchemes.Car): string => {
|
|
46
33
|
const make = toString(get(car, 'mainData.make', ''));
|
|
@@ -7,7 +7,7 @@ import { TranslatorExtended } from '@bytebrand/schema-tools';
|
|
|
7
7
|
import { DataSchemes } from '@bytebrand/car-schema';
|
|
8
8
|
|
|
9
9
|
import { FacebookShopItem } from '../interfaces';
|
|
10
|
-
import { ConfigService } from '../services';
|
|
10
|
+
import { ConfigService, ImagesService } from '../services';
|
|
11
11
|
import { Description } from '../interfaces/description.interface';
|
|
12
12
|
import { FbDescription } from './fb-description.transformer';
|
|
13
13
|
import { FbEquipment } from './fb-equipment.transformer';
|
|
@@ -16,12 +16,14 @@ import { FbEquipment } from './fb-equipment.transformer';
|
|
|
16
16
|
export class FacebookShopTransformer {
|
|
17
17
|
private translator: TranslatorExtended;
|
|
18
18
|
|
|
19
|
-
constructor(private readonly configService: ConfigService) {
|
|
19
|
+
constructor(private readonly configService: ConfigService, private readonly imageService: ImagesService) {
|
|
20
20
|
const dict = { ...de, ...deVehicleProps, ...deVehicleDetailsPage };
|
|
21
21
|
this.translator = new TranslatorExtended(dict);
|
|
22
22
|
}
|
|
23
23
|
|
|
24
|
-
async transform({ car }: { car: DataSchemes.Car }): Promise<FacebookShopItem> {
|
|
24
|
+
async transform({ car, images }: { car: DataSchemes.Car; images: any }): Promise<FacebookShopItem> {
|
|
25
|
+
const imageLinks = await this.imageService.getImages(car, images, this.configService.config.imageType);
|
|
26
|
+
|
|
25
27
|
return {
|
|
26
28
|
id: { value: get(car, 'metaData.vehicleId'), isGoogle: true },
|
|
27
29
|
title: { value: this.getTitle(car), isGoogle: true },
|
|
@@ -30,9 +32,9 @@ export class FacebookShopTransformer {
|
|
|
30
32
|
condition: { value: this.getCondition(car), isGoogle: true },
|
|
31
33
|
price: { value: this.getPrice(car), isGoogle: true },
|
|
32
34
|
link: { value: this.getCarLink(car), isGoogle: true },
|
|
33
|
-
image_link: { value:
|
|
35
|
+
image_link: { value: imageLinks[0], isGoogle: true },
|
|
34
36
|
brand: { value: get(car, 'mainData.make', ''), isGoogle: true },
|
|
35
|
-
additional_image_link: { value:
|
|
37
|
+
additional_image_link: { value: imageLinks[0], isGoogle: false },
|
|
36
38
|
quantity_to_sell_on_facebook: { value: 1, isGoogle: true },
|
|
37
39
|
google_product_category: { value: '916', isGoogle: true },
|
|
38
40
|
sale_price: { value: this.getPrice(car), isGoogle: true },
|
|
@@ -83,12 +85,4 @@ export class FacebookShopTransformer {
|
|
|
83
85
|
private getDescription(car: DataSchemes.Car): Description[] {
|
|
84
86
|
return FbDescription.create(car, this.translator, new FbEquipment()).getDescriptionArray();
|
|
85
87
|
}
|
|
86
|
-
|
|
87
|
-
//todo: move to image service
|
|
88
|
-
private getImageLink(car: DataSchemes.Car): string {
|
|
89
|
-
const mainImageId = get(car, 'metaData.mainImageId', '');
|
|
90
|
-
return mainImageId
|
|
91
|
-
? `${this.configService.config.baseImageUrl}/carimage/${car._id}/${mainImageId}/large-cached.webp`
|
|
92
|
-
: `${this.configService.config.baseImageUrl}/carimage/noimage/7pNvWELuWhZX/large-cached.jpeg`;
|
|
93
|
-
}
|
|
94
88
|
}
|
|
@@ -63,6 +63,10 @@ export class FbTransformer {
|
|
|
63
63
|
const year = this.getYear(car);
|
|
64
64
|
const dealerInfo = this.getDealerItems(car);
|
|
65
65
|
const address = await this.getAddress(car, owner);
|
|
66
|
+
const image_links = await this.imagesService.getImages(car, images, ImageType.marketing);
|
|
67
|
+
const transformedImages = image_links.map(el => {
|
|
68
|
+
return { url: el };
|
|
69
|
+
});
|
|
66
70
|
|
|
67
71
|
return {
|
|
68
72
|
fb_page_id: '176306386132',
|
|
@@ -77,7 +81,7 @@ export class FbTransformer {
|
|
|
77
81
|
make: toString(get(car, 'mainData.make', '')),
|
|
78
82
|
model: toString(get(car, 'mainData.model', '')),
|
|
79
83
|
trim: this.getTrim(car),
|
|
80
|
-
image:
|
|
84
|
+
image: transformedImages,
|
|
81
85
|
year: toString(year),
|
|
82
86
|
mileage: {
|
|
83
87
|
value: this.getMileage(car),
|
|
@@ -282,14 +286,17 @@ export class FbTransformer {
|
|
|
282
286
|
},
|
|
283
287
|
};
|
|
284
288
|
}
|
|
289
|
+
|
|
285
290
|
private isEmptyLocation(location: DePostalCodesEntryInterface): boolean {
|
|
286
291
|
if (!location) return true;
|
|
287
292
|
return !location['Place Name'] || !(location.Latitude && location.Longitude);
|
|
288
293
|
}
|
|
294
|
+
|
|
289
295
|
private isEmptyAddress(address: unknown): boolean {
|
|
290
296
|
if (!address) return true;
|
|
291
297
|
return ['city', 'zip', 'country'].every((key: string) => isEmpty(address[key]));
|
|
292
298
|
}
|
|
299
|
+
|
|
293
300
|
private async getCoords(
|
|
294
301
|
car: DataSchemes.Car,
|
|
295
302
|
locationEntry: DePostalCodesEntryInterface,
|
|
@@ -325,6 +332,7 @@ export class FbTransformer {
|
|
|
325
332
|
}
|
|
326
333
|
return this.translator.translateVal(colorSelection);
|
|
327
334
|
}
|
|
335
|
+
|
|
328
336
|
private getInteriorColor(car: DataSchemes.Car): string {
|
|
329
337
|
let colorSelection = get(car, 'interior.interiorColor', 'other');
|
|
330
338
|
if (!colorSelection || colorSelection === 'selector_unknown') {
|
|
@@ -23,6 +23,7 @@ export class GoogleTransformer {
|
|
|
23
23
|
|
|
24
24
|
async transform({ car, images }: { car: DataSchemes.Car; images: Array<any> }): Promise<GoogleXmlItem> {
|
|
25
25
|
const carId = toString(get(car, '_id', ''));
|
|
26
|
+
const transformedImages = await this.imageService.getImages(car, images, this.configService.config.imageType);
|
|
26
27
|
|
|
27
28
|
return {
|
|
28
29
|
id: carId,
|
|
@@ -31,7 +32,7 @@ export class GoogleTransformer {
|
|
|
31
32
|
google_product_category: this.getBreadcrumbs(car),
|
|
32
33
|
product_type: this.getCategory(car),
|
|
33
34
|
link: this.getLink(car),
|
|
34
|
-
image_link:
|
|
35
|
+
image_link: transformedImages[0],
|
|
35
36
|
condition: this.mapState(car),
|
|
36
37
|
availability: this.getAvailability(car),
|
|
37
38
|
brand: get(car, 'mainData.make', ''),
|
|
@@ -23,7 +23,6 @@ import {
|
|
|
23
23
|
CategoryList,
|
|
24
24
|
} from '../constants';
|
|
25
25
|
|
|
26
|
-
|
|
27
26
|
@Injectable()
|
|
28
27
|
export class ModixTransformer {
|
|
29
28
|
constructor(private readonly configService: ConfigService) {}
|
|
@@ -122,7 +121,9 @@ export class ModixTransformer {
|
|
|
122
121
|
const carMake = toString(get(car, 'mainData.make', ''));
|
|
123
122
|
const manufactureData = findLast(ManufactureList, item => toLowercase(item.name) === toLowercase(carMake));
|
|
124
123
|
// temporary
|
|
125
|
-
if (!manufactureData) {
|
|
124
|
+
if (!manufactureData) {
|
|
125
|
+
console.log(`missed manufactureData ${carMake}`);
|
|
126
|
+
}
|
|
126
127
|
return { value: manufactureData?.name || carMake, atributes: { id: manufactureData?.id || null } };
|
|
127
128
|
}
|
|
128
129
|
|
package/d.json
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
[{"importField":"mainData.doors","importFieldType":"integer","autodeField":"1","autodeFieldType":"integer"},{"importField":"mainData.seats","importFieldType":"integer","autodeField":"2","autodeFieldType":"integer"},{"importField":"engineData.cylinders","importFieldType":"integer","autodeField":"3","autodeFieldType":"integer"},{"importField":"driveSuspension.gears","importFieldType":"integer","autodeField":"4","autodeFieldType":"integer"},{"importField":"metaData.hsn","importFieldType":"string","autodeField":"6","autodeFieldType":"string"},{"importField":"assistants.abs","importFieldType":"boolean","autodeField":"10","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"mainData.numberOfPreviousOwners","importFieldType":"integer","autodeField":"14","autodeFieldType":"integer"},{"importField":"sizeVolumeWeight.completeCapacity","importFieldType":"integer","autodeField":"15","autodeFieldType":"integer"},{"importField":"sizeVolumeWeight.capacityLoad","importFieldType":"integer","autodeField":"16","autodeFieldType":"integer"},{"importField":"metaData.vin","importFieldType":"string","autodeField":"20","autodeFieldType":"string"},{"importField":"metaData.codeSchwacke","importFieldType":"string","autodeField":"21","autodeFieldType":"string"},{"importField":"mainData.taxi","importFieldType":"boolean","autodeField":"26","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"mainData.nonSmokerVehicle","importFieldType":"boolean","autodeField":"30","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"window.electricWindows","importFieldType":"boolean","autodeField":"35","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"multimedia.navigationSystem","importFieldType":"boolean","autodeField":"36","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"window.sunroof","importFieldType":"boolean","autodeField":"38","autodeFieldType":"selector","importFieldSelector":"2","selectors":[]},{"importField":"lights.xenonHeadlights","importFieldType":"boolean","autodeField":"42","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"doors.centralLocking","importFieldType":"boolean","autodeField":"43","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"theftProtection.alarmSystem","importFieldType":"boolean","autodeField":"44","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"theftProtection.immobilizer","importFieldType":"boolean","autodeField":"45","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"assistants.tractionControlSystem","importFieldType":"boolean","autodeField":"46","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"extras.skiBag","importFieldType":"boolean","autodeField":"49","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"multimedia.onBoardComputer","importFieldType":"boolean","autodeField":"50","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"lights.frontFogLights","importFieldType":"boolean","autodeField":"52","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"assistants.powerAssistedSteering","importFieldType":"boolean","autodeField":"53","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"sizeVolumeWeight.emptyWeight","importFieldType":"number","autodeField":"57","autodeFieldType":"number"},{"importField":"heatingCooling.auxiliaryHeating","importFieldType":"boolean","autodeField":"60","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"assistants.cruiseControl","importFieldType":"boolean","autodeField":"62","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"multimedia.androidAuto","importFieldType":"boolean","autodeField":"63","autodeFieldType":"selector","importFieldSelector":"Y","autodeFieldSelector":"2","selectors":["Y:2","Y:3"]},{"importField":"multimedia.carplay","importFieldType":"boolean","autodeField":"63","autodeFieldType":"selector","importFieldSelector":"Y","autodeFieldSelector":"3","selectors":["Y:2","Y:3"]},{"importField":"careService.fullServiceHistory","importFieldType":"boolean","autodeField":"64","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"offer.warranty","importFieldType":"boolean","autodeField":"67","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"exterior.manufacturerColorName","importFieldType":"string","autodeField":"68","autodeFieldType":"string"},{"importField":"interior.manufacturerColorName","importFieldType":"string","autodeField":"69","autodeFieldType":"string"},{"importField":"trailerCoupling.trailerCouplingRotatable","importFieldType":"boolean","autodeField":"73","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"trailerCoupling.trailerCouplingRemovable","importFieldType":"boolean","autodeField":"73","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"trailerCoupling.trailerCouplingFix","importFieldType":"boolean","autodeField":"73","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"assistants.esp","importFieldType":"boolean","autodeField":"74","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"driveSuspension.selfLockingDifferential","importFieldType":"boolean","autodeField":"92","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"driveSuspension.sportChassis","importFieldType":"boolean","autodeField":"95","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"interior.centralArmrest","importFieldType":"boolean","autodeField":"97","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"extras.hardtop","importFieldType":"boolean","autodeField":"104","autodeFieldType":"selector","importFieldSelector":"4","selectors":[]},{"importField":"window.tintedWindowBack","importFieldType":"boolean","autodeField":"105","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"lights.headlightCleaner","importFieldType":"boolean","autodeField":"106","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"window.rearWindowWiper","importFieldType":"boolean","autodeField":"107","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"metaData.tsn","importFieldType":"string","autodeField":"128","autodeFieldType":"string"},{"importField":"mirrors.electricExteriorMirrors","importFieldType":"boolean","autodeField":"130","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"wheel.multifunctionalWheel","importFieldType":"boolean","autodeField":"141","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"extras.ureaTankAdBlue","importFieldType":"boolean","autodeField":"158","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"extras.solarEnergySystem","importFieldType":"boolean","autodeField":"168","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"extras.roofRails","importFieldType":"boolean","autodeField":"169","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"extras.windshield","importFieldType":"boolean","autodeField":"182","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"engineData.startStopSystem","importFieldType":"boolean","autodeField":"184","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"specialElements.kickstarter","importFieldType":"boolean","autodeField":"185","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"multimedia.tv","importFieldType":"boolean","autodeField":"188","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"specialElement.kitchen","importFieldType":"boolean","autodeField":"189","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"extras.cabin","importFieldType":"boolean","autodeField":"197","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"specialElements.frontHydraulics","importFieldType":"boolean","autodeField":"203","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"doors.slidingDoorRight","importFieldType":"boolean","autodeField":"204","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"doors.slidingDoorLeft","importFieldType":"boolean","autodeField":"204","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"doors.slidingDoorBothSides","importFieldType":"boolean","autodeField":"204","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"extras.divider","importFieldType":"boolean","autodeField":"206","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"assistants.ebs","importFieldType":"boolean","autodeField":"207","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"specialElements.retarder","importFieldType":"boolean","autodeField":"208","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"specialElements.compressor","importFieldType":"boolean","autodeField":"209","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"driveSuspension.airSuspension","importFieldType":"boolean","autodeField":"210","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"extras.discBrake","importFieldType":"boolean","autodeField":"211","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"specialElements.frontHydraulics","importFieldType":"boolean","autodeField":"212","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"driveSuspension.bss","importFieldType":"boolean","autodeField":"213","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"specialElements.frontLift","importFieldType":"boolean","autodeField":"216","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"sizeVolumeWeight.capacityLoad","importFieldType":"integer","autodeField":"217","autodeFieldType":"integer"},{"importField":"extras.coldstore","importFieldType":"boolean","autodeField":"218","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"consumption.consumptionInner","importFieldType":"number","autodeField":"220","autodeFieldType":"number"},{"importField":"consumption.consumptionOuter","importFieldType":"number","autodeField":"221","autodeFieldType":"number"},{"importField":"consumption.consumptionCombined","importFieldType":"number","autodeField":"222","autodeFieldType":"number"},{"importField":"environmentEmissions.co2","importFieldType":"number","autodeField":"223","autodeFieldType":"number"},{"importField":"sizeVolumeWeight.cargoCapacity","importFieldType":"number","autodeField":"224","autodeFieldType":"number"},{"importField":"sizeVolumeWeight.cargoLength","importFieldType":"integer","autodeField":"225","autodeFieldType":"number"},{"importField":"sizeVolumeWeight.cargoWidth","importFieldType":"integer","autodeField":"226","autodeFieldType":"number"},{"importField":"sizeVolumeWeight.cargoHeight","importFieldType":"integer","autodeField":"227","autodeFieldType":"number"},{"importField":"doors.slidingDoorLeft","importFieldType":"boolean","autodeField":"239","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"doors.slidingDoorRight","importFieldType":"boolean","autodeField":"239","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"driveSuspension.adaptiveChassis","importFieldType":"boolean","autodeField":"299","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"engineData.highSpeed","importFieldType":"number","autodeField":"309","autodeFieldType":"number"},{"importField":"wheels.summerTiresRimsSize","importFieldType":"number","autodeField":"315","autodeFieldType":"number"},{"importField":"sizeVolumeWeight.width","importFieldType":"number","autodeField":"319","autodeFieldType":"number"},{"importField":"sizeVolumeWeight.length","importFieldType":"number","autodeField":"321","autodeFieldType":"number"},{"importField":"sizeVolumeWeight.height","importFieldType":"number","autodeField":"322","autodeFieldType":"number"},{"importField":"engineData.powerPS","importFieldType":"number","autodeField":"338","autodeFieldType":"number"},{"importField":"editionsPackages.smokersPackage","importFieldType":"boolean","autodeField":"340","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"offer.availabilityFrom","importFieldType":"date","autodeField":"351","autodeFieldType":"availability"},{"importField":"window.rearWindowHeater","importFieldType":"boolean","autodeField":"360","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"window.rearWindowWiper","importFieldType":"boolean","autodeField":"361","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"engineData.biodieselSuitable","importFieldType":"boolean","autodeField":"375","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"engineData.e10Enabled","importFieldType":"boolean","autodeField":"379","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"extras.windshield","importFieldType":"boolean","autodeField":"381","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"assistants.automaticRainSensor","importFieldType":"boolean","autodeField":"424","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"editionsPackages.sportPackage","importFieldType":"boolean","autodeField":"425","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"window.tintedWindowBack","importFieldType":"boolean","autodeField":"426","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"doors.electricSlidingDoor","importFieldType":"boolean","autodeField":"428","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"doors.keylessEntry","importFieldType":"boolean","autodeField":"429","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"multimedia.voiceControl","importFieldType":"boolean","autodeField":"431","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"multimedia.handsFreePhoneSystem","importFieldType":"boolean","autodeField":"432","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"mirror.heatedOutsideMirror","importFieldType":"boolean","autodeField":"434","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"engineData.startStopSystem","importFieldType":"boolean","autodeField":"520","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"lights.daytimeRunningLights","importFieldType":"boolean","autodeField":"521","autodeFieldType":"selector","importFieldSelector":"Y","autodeFieldSelector":"1","selectors":["Y:1"]},{"importField":"assistants.headUpDisplay","importFieldType":"boolean","autodeField":"522","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"assistants.speedLimiter","importFieldType":"boolean","autodeField":"523","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"assistants.laneAssistant","importFieldType":"boolean","autodeField":"524","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"assistants.parkingAssistants","importFieldType":"parkingAssistants","autodeField":"525","autodeFieldType":"selector","importFieldSelector":"1","autodeFieldSelector":"any","selectors":["1:any"]},{"importField":"price.vatRate","importFieldType":"number","autodeField":"542","autodeFieldType":"number"},{"importField":"lights.lightSensor","importFieldType":"boolean","autodeField":"544","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"multimedia.bluetooth","importFieldType":"boolean","autodeField":"545","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"engineData.cubicCapacity","importFieldType":"number","autodeField":"582","autodeFieldType":"cubicCapacity_liter"},{"importField":"lights.ledHeadlights","importFieldType":"boolean","autodeField":"613","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"engineData.torque","importFieldType":"number","autodeField":"629","autodeFieldType":"number","importFieldSelector":"Y"},{"importField":"sizeVolumeWeight.fuelCapacity","importFieldType":"number","autodeField":"630","autodeFieldType":"number"},{"importField":"engineData.hybridPlugin","importFieldType":"boolean","autodeField":"800","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"careService.fullServiceHistory","importFieldType":"boolean","autodeField":"808","autodeFieldType":"selector","importFieldSelector":"3","selectors":[]},{"importField":"assistants.adaptiveCruiseControl","importFieldType":"boolean","autodeField":"897","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"wheel.heatedSteeringWheel","importFieldType":"boolean","autodeField":"899","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"assistants.hillStartDrivingAssistant","importFieldType":"boolean","autodeField":"900","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"wheel.leatherSteeringWheel","importFieldType":"boolean","autodeField":"901","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"assistants.nightVisionAssistant","importFieldType":"boolean","autodeField":"903","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"assistants.emergencyAssistant","importFieldType":"boolean","autodeField":"905","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"assistants.tirePressureMonitor","importFieldType":"boolean","autodeField":"906","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"wheel.shiftPadlle","importFieldType":"boolean","autodeField":"907","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"assistants.laneChangeAssistant","importFieldType":"boolean","autodeField":"909","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"multimedia.touchscreen","importFieldType":"boolean","autodeField":"910","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"assistants.trafficSignRecognition","importFieldType":"boolean","autodeField":"911","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"roadSideSystems.emergencyTireRepairKit","importFieldType":"boolean","autodeField":"922","autodeFieldType":"selector","importFieldSelector":"3","selectors":[]},{"importField":"battery.batteryCapacity","importFieldType":"number","autodeField":"928","autodeFieldType":"number"},{"importField":"engineData.acceleration100","importFieldType":"number","autodeField":"937","autodeFieldType":"number"},{"importField":"doors.slidingDoorRight","importFieldType":"boolean","autodeField":"943","autodeFieldType":"selector","importFieldSelector":"1","selectors":[]},{"importField":"doors.slidingDoorLeft","importFieldType":"boolean","autodeField":"943","autodeFieldType":"selector","importFieldSelector":"2","selectors":[]},{"importField":"doors.slidingDoorBothSides","importFieldType":"boolean","autodeField":"943","autodeFieldType":"selector","importFieldSelector":"3","selectors":[]},{"importField":"assistants.blindSpotDetection","importFieldType":"boolean","autodeField":"945","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"multimedia.usbInterface","importFieldType":"boolean","autodeField":"946","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"lights.biXenonHeadlights","importFieldType":"boolean","autodeField":"951","autodeFieldType":"selector","importFieldSelector":"1","selectors":[]},{"importField":"lights.laserHeadlights","importFieldType":"boolean","autodeField":"951","autodeFieldType":"selector","importFieldSelector":"3","selectors":[]},{"importField":"lights.partLEDHeadlights","importFieldType":"boolean","autodeField":"951","autodeFieldType":"selector","importFieldSelector":"6","selectors":[]},{"importField":"lights.ledHeadlights","importFieldType":"boolean","autodeField":"951","autodeFieldType":"selector","importFieldSelector":"4","selectors":[]},{"importField":"lights.xenonHeadlights","importFieldType":"boolean","autodeField":"951","autodeFieldType":"selector","importFieldSelector":"2","selectors":[]},{"importField":"assistants.glareFreeHighBeam","importFieldType":"boolean","autodeField":"952","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"lights.adaptiveBendingLights","importFieldType":"boolean","autodeField":"953","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"editionsPackages.winterPackage","importFieldType":"boolean","autodeField":"954","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"editionsPackages.smokersPackage","importFieldType":"boolean","autodeField":"955","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"assistants.distanceWarning","importFieldType":"boolean","autodeField":"956","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"lights.ambienteLighting","importFieldType":"boolean","autodeField":"958","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"multimedia.wifiHotspot","importFieldType":"boolean","autodeField":"959","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"multimedia.digitalCockpit","importFieldType":"boolean","autodeField":"960","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"multimedia.smartphoneWirelessCharging","importFieldType":"boolean","autodeField":"962","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"multimedia.integratedMusicStreaming","importFieldType":"boolean","autodeField":"963","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]},{"importField":"battery.batteryRangeExtender","importFieldType":"boolean","autodeField":"967","autodeFieldType":"selector","importFieldSelector":"Y","selectors":[]}]
|