@bytebrand/export-cars 1.22.31 → 1.23.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.
@@ -7,3 +7,9 @@ export declare const DEFAULT_ADDR1 = "Max-Planck-Str. 19";
7
7
  export declare const TIMESTAMP_FIRST_YEAR = 1970;
8
8
  export declare const META_PUSH_PRIORITY_STANDARD = "standard";
9
9
  export declare const META_PUSH_PRIORITY_ALLOWED_VALUES: string[];
10
+ export declare enum OfferType {
11
+ financing = "financing",
12
+ leasing = "leasing",
13
+ buy = "buy"
14
+ }
15
+ export declare const OFFER_DISCLAIMER: string;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.META_PUSH_PRIORITY_ALLOWED_VALUES = exports.META_PUSH_PRIORITY_STANDARD = exports.TIMESTAMP_FIRST_YEAR = exports.DEFAULT_ADDR1 = exports.DEFAULT_CITY = exports.DEFAULT_ZIP = exports.FB_MIN_MILEAGES = exports.FB_MAX_IMAGE_COUNT_FOR_DEAFULT = exports.FB_MAX_TRIM_LENGTH = void 0;
3
+ exports.OFFER_DISCLAIMER = exports.OfferType = exports.META_PUSH_PRIORITY_ALLOWED_VALUES = exports.META_PUSH_PRIORITY_STANDARD = exports.TIMESTAMP_FIRST_YEAR = exports.DEFAULT_ADDR1 = exports.DEFAULT_CITY = exports.DEFAULT_ZIP = exports.FB_MIN_MILEAGES = exports.FB_MAX_IMAGE_COUNT_FOR_DEAFULT = exports.FB_MAX_TRIM_LENGTH = void 0;
4
4
  exports.FB_MAX_TRIM_LENGTH = 50;
5
5
  exports.FB_MAX_IMAGE_COUNT_FOR_DEAFULT = 47;
6
6
  exports.FB_MIN_MILEAGES = 900;
@@ -10,4 +10,16 @@ exports.DEFAULT_ADDR1 = 'Max-Planck-Str. 19';
10
10
  exports.TIMESTAMP_FIRST_YEAR = 1970;
11
11
  exports.META_PUSH_PRIORITY_STANDARD = 'standard';
12
12
  exports.META_PUSH_PRIORITY_ALLOWED_VALUES = ['dealer_priority_1', 'dealer_priority_2'];
13
+ var OfferType;
14
+ (function (OfferType) {
15
+ OfferType["financing"] = "financing";
16
+ OfferType["leasing"] = "leasing";
17
+ OfferType["buy"] = "buy";
18
+ })(OfferType || (exports.OfferType = OfferType = {}));
19
+ exports.OFFER_DISCLAIMER = 'Für Ihre Finanzierungswünsche stellen wir eine Bonitätsanfrage. Bonität ' +
20
+ 'vorausgesetzt, ist dies ein repräsentatives Berechnungsbeispiel gem. der Angaben, welches 2/3 aller Kunden, ' +
21
+ 'im Sinne des § 17a Abs. 4 PAngV, erhalten. Dieses freibleibende Angebot der Santander Consumer Bank AG, ' +
22
+ 'Santander-Platz 1, 41061 Mönchengladbach wird vermittelt durch die auto.de GmbH, Max-Planck-Str. 19, 06796 ' +
23
+ 'Sandersdorf-Brehna, die als ungebundener Vermittler nicht beratend tätig ist. Irrtümer vorbehalten. Preise ' +
24
+ 'ggf. inkl. MwSt.';
13
25
  //# sourceMappingURL=fb.constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fb.constants.js","sourceRoot":"","sources":["../../src/constants/fb.constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,kBAAkB,GAAG,EAAE,CAAC;AACxB,QAAA,8BAA8B,GAAG,EAAE,CAAC;AACpC,QAAA,eAAe,GAAG,GAAG,CAAC;AACtB,QAAA,WAAW,GAAG,OAAO,CAAC;AACtB,QAAA,YAAY,GAAG,oBAAoB,CAAC;AACpC,QAAA,aAAa,GAAG,oBAAoB,CAAC;AACrC,QAAA,oBAAoB,GAAG,IAAI,CAAC;AAC5B,QAAA,2BAA2B,GAAG,UAAU,CAAC;AACzC,QAAA,iCAAiC,GAAG,CAAC,mBAAmB,EAAE,mBAAmB,CAAC,CAAC"}
1
+ {"version":3,"file":"fb.constants.js","sourceRoot":"","sources":["../../src/constants/fb.constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,kBAAkB,GAAG,EAAE,CAAC;AACxB,QAAA,8BAA8B,GAAG,EAAE,CAAC;AACpC,QAAA,eAAe,GAAG,GAAG,CAAC;AACtB,QAAA,WAAW,GAAG,OAAO,CAAC;AACtB,QAAA,YAAY,GAAG,oBAAoB,CAAC;AACpC,QAAA,aAAa,GAAG,oBAAoB,CAAC;AACrC,QAAA,oBAAoB,GAAG,IAAI,CAAC;AAC5B,QAAA,2BAA2B,GAAG,UAAU,CAAC;AACzC,QAAA,iCAAiC,GAAG,CAAC,mBAAmB,EAAE,mBAAmB,CAAC,CAAC;AAE5F,IAAY,SAIX;AAJD,WAAY,SAAS;IACnB,oCAAuB,CAAA;IACvB,gCAAmB,CAAA;IACnB,wBAAW,CAAA;AACb,CAAC,EAJW,SAAS,yBAAT,SAAS,QAIpB;AAEY,QAAA,gBAAgB,GAAG,0EAA0E;IACxG,8GAA8G;IAC9G,0GAA0G;IAC1G,6GAA6G;IAC7G,6GAA6G;IAC7G,kBAAkB,CAAC"}
@@ -40,8 +40,14 @@ let FacebookShopExporter = class FacebookShopExporter {
40
40
  const chunkData = chunk.data.filter(car => this.carService.filterCar(car, this.rulesService.rules));
41
41
  for (let i = 0; i < chunkData.length; i += 1) {
42
42
  const data = chunk.data[i];
43
- const transformedCar = await facebookShopTransformer.transform(data);
44
- await facebookShopXmkBuilder.addItem(transformedCar);
43
+ const items = await facebookShopTransformer.transform(data);
44
+ if (!items.length) {
45
+ console.log(`Skip car ${data.car._id} because it has no real images`);
46
+ continue;
47
+ }
48
+ for (const item of items) {
49
+ await facebookShopXmkBuilder.addItem(item);
50
+ }
45
51
  this.carService.counter.countCar(data.images);
46
52
  }
47
53
  });
@@ -1 +1 @@
1
- {"version":3,"file":"facebook-shop.exporter.js","sourceRoot":"","sources":["../../src/exporters/facebook-shop.exporter.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,uCAAyC;AAEzC,gEAA2D;AAG3D,0CAAqF;AAErF,kDAA0D;AAC1D,wCAAoD;AAG7C,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;IAErB;IACA;IACA;IACA;IACA;IALV,YACU,UAAsB,EACtB,aAA4B,EAC5B,aAA4B,EAC5B,SAAoB,EACpB,YAA0B;QAJ1B,eAAU,GAAV,UAAU,CAAY;QACtB,kBAAa,GAAb,aAAa,CAAe;QAC5B,kBAAa,GAAb,aAAa,CAAe;QAC5B,cAAS,GAAT,SAAS,CAAW;QACpB,iBAAY,GAAZ,YAAY,CAAc;IAChC,CAAC;IAEL,KAAK,CAAC,MAAM;QACV,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,WAAW,CAAC;QACxD,MAAM,+BAAa,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,YAAY,CAAC,uBAAuB,CAAC,CAAC;QAC9F,MAAM,+BAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,YAAY,CAAC,uBAAuB,CAAC,CAAC;QAE7F,MAAM,sBAAsB,GAAG,IAAI,gCAAsB,CAAC,OAAO,CAAC,CAAC;QACnE,MAAM,sBAAsB,CAAC,UAAU,EAAE,CAAC;QAE1C,MAAM,uBAAuB,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,sCAAuB,CAAC,CAAC;QAErF,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,KAAuB,EAAE,EAAE;YACjE,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;YAEpG,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;gBAC5C,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAG3B,MAAM,cAAc,GAAG,MAAM,uBAAuB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;gBAGrE,MAAM,sBAAsB,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;gBACrD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aAC/C;QACH,CAAC,CAAC,CAAC;QAEH,MAAM,sBAAsB,CAAC,QAAQ,EAAE,CAAC;QAExC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;IACxD,CAAC;CACF,CAAA;AAtCY,oDAAoB;+BAApB,oBAAoB;IADhC,IAAA,mBAAU,GAAE;qCAGW,qBAAU;QACP,wBAAa;QACb,wBAAa;QACjB,gBAAS;QACN,uBAAY;GANzB,oBAAoB,CAsChC"}
1
+ {"version":3,"file":"facebook-shop.exporter.js","sourceRoot":"","sources":["../../src/exporters/facebook-shop.exporter.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,uCAAyC;AAEzC,gEAA2D;AAG3D,0CAAqF;AAErF,kDAA0D;AAC1D,wCAAoD;AAG7C,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;IAErB;IACA;IACA;IACA;IACA;IALV,YACU,UAAsB,EACtB,aAA4B,EAC5B,aAA4B,EAC5B,SAAoB,EACpB,YAA0B;QAJ1B,eAAU,GAAV,UAAU,CAAY;QACtB,kBAAa,GAAb,aAAa,CAAe;QAC5B,kBAAa,GAAb,aAAa,CAAe;QAC5B,cAAS,GAAT,SAAS,CAAW;QACpB,iBAAY,GAAZ,YAAY,CAAc;IAChC,CAAC;IAEL,KAAK,CAAC,MAAM;QACV,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,WAAW,CAAC;QACxD,MAAM,+BAAa,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,YAAY,CAAC,uBAAuB,CAAC,CAAC;QAC9F,MAAM,+BAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,YAAY,CAAC,uBAAuB,CAAC,CAAC;QAE7F,MAAM,sBAAsB,GAAG,IAAI,gCAAsB,CAAC,OAAO,CAAC,CAAC;QACnE,MAAM,sBAAsB,CAAC,UAAU,EAAE,CAAC;QAE1C,MAAM,uBAAuB,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,sCAAuB,CAAC,CAAC;QAErF,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,KAAuB,EAAE,EAAE;YACjE,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;YAEpG,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;gBAC5C,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAG3B,MAAM,KAAK,GAAG,MAAM,uBAAuB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;gBAG5D,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;oBACjB,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,CAAC,GAAG,CAAC,GAAG,gCAAgC,CAAC,CAAC;oBACtE,SAAS;iBACV;gBAED,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;oBACxB,MAAM,sBAAsB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;iBAC5C;gBACD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aAC/C;QACH,CAAC,CAAC,CAAC;QAEH,MAAM,sBAAsB,CAAC,QAAQ,EAAE,CAAC;QAExC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;IACxD,CAAC;CACF,CAAA;AA7CY,oDAAoB;+BAApB,oBAAoB;IADhC,IAAA,mBAAU,GAAE;qCAGW,qBAAU;QACP,wBAAa;QACb,wBAAa;QACjB,gBAAS;QACN,uBAAY;GANzB,oBAAoB,CA6ChC"}
@@ -4,7 +4,5 @@ export declare class FacebookShopXmlBuilder extends XMLBuilderBase {
4
4
  buildStart(): Promise<void>;
5
5
  addItem(car: FacebookShopItem): Promise<void>;
6
6
  buildTagElement(tag: string, params: FacebookShopTag): string;
7
- private getDescriptionElement;
8
- private buildDescriptionValues;
9
7
  buildEnd(): Promise<void>;
10
8
  }
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.FacebookShopXmlBuilder = void 0;
4
+ const lodash_1 = require("lodash");
4
5
  const cronicle_helper_1 = require("@bytebrand/cronicle-helper");
5
- const validator_utils_1 = require("../utils/validator.utils");
6
6
  class FacebookShopXmlBuilder extends cronicle_helper_1.XMLBuilderBase {
7
7
  async buildStart() {
8
8
  await this.write('<?xml version="1.0" encoding="utf-8"?>\n<rss version="2.0" xmlns:g="http://base.google.com/ns/1.0" xmlns:atom="http://www.w3.org/2005/Atom">' +
@@ -13,45 +13,23 @@ class FacebookShopXmlBuilder extends cronicle_helper_1.XMLBuilderBase {
13
13
  let item = '\n<item>\n';
14
14
  const tags = Object.keys(car);
15
15
  for (const tag of tags) {
16
- if (tag === 'description') {
17
- item += this.getDescriptionElement(tag, car[tag].value);
18
- }
19
- else {
20
- item += this.buildTagElement(tag, car[tag]);
21
- }
16
+ item += this.buildTagElement(tag, car[tag]);
22
17
  }
23
18
  item += '</item>';
24
19
  await this.write(item);
25
20
  }
26
21
  buildTagElement(tag, params) {
22
+ let value = params.value;
23
+ if ((0, lodash_1.isString)(value)) {
24
+ value = (0, lodash_1.escape)(value);
25
+ }
26
+ else if ((0, lodash_1.isNumber)(value)) {
27
+ value = String(value);
28
+ }
27
29
  if (params.isGoogle) {
28
- return this.getElement(`g:${tag}`, params.value);
30
+ return this.getElement(`g:${tag}`, value);
29
31
  }
30
- return this.getElement(tag, params.value);
31
- }
32
- getDescriptionElement(rootTag, descriptionBlocks) {
33
- const description = descriptionBlocks
34
- .map(({ title, values }) => {
35
- if (values) {
36
- return `${title}\n${this.buildDescriptionValues(values)} `;
37
- }
38
- return '';
39
- })
40
- .join('\n');
41
- return `<${rootTag}>${description}</${rootTag}>`;
42
- }
43
- buildDescriptionValues(values) {
44
- const validValues = [];
45
- values.forEach(element => {
46
- const filteredValues = element.value.filter(el => el);
47
- if ((0, validator_utils_1.isNotEmptyArray)(filteredValues))
48
- validValues.push(element);
49
- });
50
- return validValues
51
- .map(({ title, value }) => {
52
- return `${title}: ${value.join(', ')}`;
53
- })
54
- .join(';\n');
32
+ return this.getElement(tag, value);
55
33
  }
56
34
  async buildEnd() {
57
35
  await this.write('\n</channel>\n</rss>\n');
@@ -1 +1 @@
1
- {"version":3,"file":"facebook-shop.builder.js","sourceRoot":"","sources":["../../src/formats/facebook-shop.builder.ts"],"names":[],"mappings":";;;AAAA,gEAA4D;AAG5D,8DAA2D;AAE3D,MAAa,sBAAuB,SAAQ,gCAAc;IACxD,KAAK,CAAC,UAAU;QACd,MAAM,IAAI,CAAC,KAAK,CACd,8IAA8I;YAC5I,uIAAuI;YACvI,0GAA0G,CAC7G,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,GAAqB;QACjC,IAAI,IAAI,GAAG,YAAY,CAAC;QAExB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAE9B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;YACtB,IAAI,GAAG,KAAK,aAAa,EAAE;gBACzB,IAAI,IAAI,IAAI,CAAC,qBAAqB,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;aACzD;iBAAM;gBACL,IAAI,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;aAC7C;SACF;QACD,IAAI,IAAI,SAAS,CAAC;QAElB,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC;IAED,eAAe,CAAC,GAAW,EAAE,MAAuB;QAClD,IAAI,MAAM,CAAC,QAAQ,EAAE;YACnB,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,GAAG,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;SAClD;QACD,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAC5C,CAAC;IACO,qBAAqB,CAAC,OAAe,EAAE,iBAAgC;QAC7E,MAAM,WAAW,GAAW,iBAAiB;aAC1C,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAe,EAAE,EAAE;YACtC,IAAI,MAAM,EAAE;gBACV,OAAO,GAAG,KAAK,KAAK,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,GAAG,CAAC;aAC5D;YACD,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC;aACD,IAAI,CAAC,IAAI,CAAC,CAAC;QACd,OAAO,IAAI,OAAO,IAAI,WAAW,KAAK,OAAO,GAAG,CAAC;IACnD,CAAC;IAEO,sBAAsB,CAAC,MAA0B;QACvD,MAAM,WAAW,GAAG,EAAE,CAAC;QAEvB,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YACvB,MAAM,cAAc,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACtD,IAAI,IAAA,iCAAe,EAAC,cAAc,CAAC;gBAAE,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;QAEH,OAAO,WAAW;aACf,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAoB,EAAE,EAAE;YAC1C,OAAO,GAAG,KAAK,KAAK,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACzC,CAAC,CAAC;aACD,IAAI,CAAC,KAAK,CAAC,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,QAAQ;QACZ,MAAM,IAAI,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAC3C,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC;IACnB,CAAC;CACF;AA/DD,wDA+DC"}
1
+ {"version":3,"file":"facebook-shop.builder.js","sourceRoot":"","sources":["../../src/formats/facebook-shop.builder.ts"],"names":[],"mappings":";;;AAAA,mCAAoD;AACpD,gEAA4D;AAG5D,MAAa,sBAAuB,SAAQ,gCAAc;IACxD,KAAK,CAAC,UAAU;QACd,MAAM,IAAI,CAAC,KAAK,CACd,8IAA8I;YAC5I,uIAAuI;YACvI,0GAA0G,CAC7G,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,GAAqB;QACjC,IAAI,IAAI,GAAG,YAAY,CAAC;QAExB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAE9B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;YACtB,IAAI,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;SAC7C;QACD,IAAI,IAAI,SAAS,CAAC;QAElB,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC;IAED,eAAe,CAAC,GAAW,EAAE,MAAuB;QAGlD,IAAI,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QACzB,IAAI,IAAA,iBAAQ,EAAC,KAAK,CAAC,EAAE;YACnB,KAAK,GAAG,IAAA,eAAM,EAAC,KAAK,CAAC,CAAC;SACvB;aAAM,IAAI,IAAA,iBAAQ,EAAC,KAAK,CAAC,EAAE;YAC1B,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;SACvB;QACD,IAAI,MAAM,CAAC,QAAQ,EAAE;YACnB,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,GAAG,EAAE,EAAE,KAAK,CAAC,CAAC;SAC3C;QACD,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,QAAQ;QACZ,MAAM,IAAI,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAC3C,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC;IACnB,CAAC;CACF;AAzCD,wDAyCC"}
@@ -1,6 +1,5 @@
1
1
  import { DataSchemes } from '@bytebrand/car-schema';
2
2
  import { IAtributeWrapItem } from './atributes-wrap-item.intreface';
3
- import { Description } from './description.interface';
4
3
  export interface FbXmlItem {
5
4
  url: string;
6
5
  title: string;
@@ -340,18 +339,30 @@ export interface dealerItem {
340
339
  }
341
340
  export interface FacebookShopItem {
342
341
  id: FacebookShopTag;
342
+ vehicle_id: FacebookShopTag;
343
343
  title: FacebookShopTag;
344
- description: {
345
- value: Description[];
346
- isGoogle: boolean;
347
- };
344
+ description: FacebookShopTag;
348
345
  availability: FacebookShopTag;
349
346
  condition: FacebookShopTag;
350
347
  price: FacebookShopTag;
351
348
  link: FacebookShopTag;
352
349
  image_link: FacebookShopTag;
353
350
  additional_image_link: FacebookShopTag;
354
- brand: FacebookShopTag;
351
+ make: FacebookShopTag;
352
+ model: FacebookShopTag;
353
+ year: FacebookShopTag;
354
+ user_id: FacebookShopTag;
355
+ custom_label_4: FacebookShopTag;
356
+ dealer_privacy_policy_url: FacebookShopTag;
357
+ offer_type: FacebookShopTag;
358
+ offer_disclaimer?: FacebookShopTag;
359
+ monthly_payment?: FacebookShopTag;
360
+ down_payment?: FacebookShopTag;
361
+ term_length?: FacebookShopTag;
362
+ apr?: FacebookShopTag;
363
+ final_payment?: FacebookShopTag;
364
+ total_amount?: FacebookShopTag;
365
+ net_loan_amount?: FacebookShopTag;
355
366
  quantity_to_sell_on_facebook: FacebookShopTag;
356
367
  google_product_category: FacebookShopTag;
357
368
  sale_price: FacebookShopTag;
@@ -1,20 +1,27 @@
1
1
  import { ImboImageResponseInterface } from '@bytebrand/chunkable';
2
2
  import { DataSchemes } from '@bytebrand/car-schema';
3
3
  import { FacebookShopItem } from '../interfaces';
4
- import { ConfigService, ImagesService } from '../services';
4
+ import { ConfigService, ImagesService, MappingService } from '../services';
5
5
  export declare class FacebookShopTransformer {
6
6
  private readonly configService;
7
7
  private readonly imageService;
8
+ private readonly mappingService;
8
9
  private translator;
9
- constructor(configService: ConfigService, imageService: ImagesService);
10
+ constructor(configService: ConfigService, imageService: ImagesService, mappingService: MappingService);
10
11
  transform({ car, images, }: {
11
12
  car: DataSchemes.Car;
12
13
  images: ImboImageResponseInterface[];
13
- }): Promise<FacebookShopItem>;
14
- private getTitle;
14
+ }): Promise<FacebookShopItem[]>;
15
+ private buildOffers;
16
+ private computeFinancials;
17
+ private isLeasingEligible;
18
+ private financialTags;
19
+ private tag;
20
+ private formatEUR;
21
+ private getMetaPushPriority;
22
+ private getYear;
15
23
  private getCondition;
16
24
  private getCarLink;
17
- private getPrice;
25
+ private getPriceValue;
18
26
  private getColor;
19
- private getDescription;
20
27
  }
@@ -12,55 +12,181 @@ Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.FacebookShopTransformer = void 0;
13
13
  const common_1 = require("@nestjs/common");
14
14
  const lodash_1 = require("lodash");
15
+ const moment = require("moment");
15
16
  const i18n_dictionaries_1 = require("@bytebrand/i18n-dictionaries");
16
17
  const schema_tools_1 = require("@bytebrand/schema-tools");
18
+ const fe_financing_1 = require("@bytebrand/fe-financing");
17
19
  const services_1 = require("../services");
18
- const fb_description_transformer_1 = require("./fb-description.transformer");
19
- const fb_equipment_transformer_1 = require("./fb-equipment.transformer");
20
+ const fb_constants_1 = require("../constants/fb.constants");
21
+ const DE_LOCALE = 'de-DE';
20
22
  let FacebookShopTransformer = class FacebookShopTransformer {
21
23
  configService;
22
24
  imageService;
25
+ mappingService;
23
26
  translator;
24
- constructor(configService, imageService) {
27
+ constructor(configService, imageService, mappingService) {
25
28
  this.configService = configService;
26
29
  this.imageService = imageService;
30
+ this.mappingService = mappingService;
27
31
  const dict = { ...i18n_dictionaries_1.de, ...i18n_dictionaries_1.deVehicleProps, ...i18n_dictionaries_1.deVehicleDetailsPage };
28
32
  this.translator = new schema_tools_1.TranslatorExtended(dict);
29
33
  }
30
34
  async transform({ car, images, }) {
31
- const imageLinks = await this.imageService.getImages(car, images, this.configService.config.imageType, false);
35
+ const imageLinks = await this.imageService.getImages(car, images, this.configService.config.imageType, true);
36
+ if (!imageLinks.length) {
37
+ return [];
38
+ }
39
+ const vehicleId = (0, lodash_1.toString)((0, lodash_1.get)(car, 'metaData.vehicleId', car._id));
40
+ const make = (0, lodash_1.toString)((0, lodash_1.get)(car, 'mainData.make', ''));
41
+ const model = (0, lodash_1.toString)((0, lodash_1.get)(car, 'mainData.model', ''));
42
+ const price = this.getPriceValue(car);
43
+ const ownerId = (0, lodash_1.get)(car, 'metaData.ownerId', null);
44
+ const customLabel4 = await this.getMetaPushPriority(ownerId);
45
+ const offers = this.buildOffers(car, { make, model, price });
46
+ if (!offers.length) {
47
+ return [];
48
+ }
49
+ const base = {
50
+ vehicle_id: this.tag(vehicleId, true),
51
+ availability: this.tag('in stock', true),
52
+ condition: this.tag(this.getCondition(car), true),
53
+ price: this.tag(`${price} EUR`, true),
54
+ sale_price: this.tag(`${price} EUR`, true),
55
+ link: this.tag(this.getCarLink(car), true),
56
+ image_link: this.tag(imageLinks[0], true),
57
+ additional_image_link: this.tag(imageLinks[0], false),
58
+ make: this.tag(make, false),
59
+ model: this.tag(model, false),
60
+ year: this.tag(this.getYear(car), false),
61
+ user_id: this.tag(ownerId, false),
62
+ custom_label_4: this.tag(customLabel4, false),
63
+ dealer_privacy_policy_url: this.tag('https://www.auto.de/einwilligungserklaerung/', false),
64
+ quantity_to_sell_on_facebook: this.tag(1, true),
65
+ google_product_category: this.tag('916', true),
66
+ status: this.tag('active', true),
67
+ color: this.tag(this.getColor(car), false),
68
+ product_type: this.tag('Vehicles & Parts > Vehicles > Motor Vehicles > Cars, Trucks & Vans', true),
69
+ };
70
+ return offers.map((offer) => ({
71
+ ...base,
72
+ id: this.tag(`${vehicleId}_${offer.offerType}`, true),
73
+ title: this.tag(offer.title, true),
74
+ description: this.tag(offer.description, true),
75
+ offer_type: this.tag(offer.offerType, false),
76
+ ...(offer.disclaimer ? { offer_disclaimer: this.tag(offer.disclaimer, false) } : {}),
77
+ ...(offer.financials ? this.financialTags(offer.financials) : {}),
78
+ }));
79
+ }
80
+ buildOffers(car, common) {
81
+ const offers = [];
82
+ const { make, model, price } = common;
83
+ const offersFinancing = (0, lodash_1.get)(car, 'rate.offersFinancing') !== false;
84
+ const rawFinancing = {
85
+ monthlyPayment: (0, lodash_1.get)(car, 'rate.monthlyInstallment', 0),
86
+ downPayment: (0, lodash_1.get)(car, 'rate.firstInstallment', 0),
87
+ termLength: (0, lodash_1.get)(car, 'rate.paybackPeriod', 0),
88
+ };
89
+ const rawLeasing = {
90
+ monthlyPayment: (0, lodash_1.get)(car, 'leasing.monthlyInstallment', 0),
91
+ downPayment: (0, lodash_1.get)(car, 'leasing.firstInstallment', 0),
92
+ termLength: (0, lodash_1.get)(car, 'leasing.paybackPeriod', 0),
93
+ };
94
+ const leasingIsEligible = this.isLeasingEligible(car);
95
+ const { financing: computedFinancing, leasing: computedLeasing } = this.computeFinancials(car);
96
+ if (offersFinancing && rawFinancing.monthlyPayment && computedFinancing) {
97
+ offers.push({
98
+ offerType: fb_constants_1.OfferType.financing,
99
+ title: `${make} ${model} finanzieren – z. B. ab ${this.formatEUR(rawFinancing.monthlyPayment)} €/Monat`,
100
+ description: `${make} ${model} finanzieren – ${rawFinancing.termLength} Monate Laufzeit, ` +
101
+ `${this.formatEUR(rawFinancing.downPayment)} € Anzahlung`,
102
+ disclaimer: fb_constants_1.OFFER_DISCLAIMER,
103
+ financials: {
104
+ ...rawFinancing,
105
+ apr: (0, lodash_1.get)(computedFinancing, 'annualPercentageRate', 0),
106
+ finalPayment: (0, lodash_1.get)(computedFinancing, 'finalInstallment', 0),
107
+ totalAmount: (0, lodash_1.get)(computedFinancing, 'grossLoanAmount', 0),
108
+ netLoanAmount: (0, lodash_1.get)(computedFinancing, 'netLoanAmount', 0),
109
+ },
110
+ });
111
+ }
112
+ if (leasingIsEligible && rawLeasing.monthlyPayment && computedLeasing) {
113
+ offers.push({
114
+ offerType: fb_constants_1.OfferType.leasing,
115
+ title: `${make} ${model} leasen – z. B. ab ${this.formatEUR(rawLeasing.monthlyPayment)} €/Monat`,
116
+ description: `${make} ${model} leasen – ${rawLeasing.termLength} Monate Laufzeit, ` +
117
+ `${this.formatEUR(rawLeasing.downPayment)} € Anzahlung`,
118
+ disclaimer: fb_constants_1.OFFER_DISCLAIMER,
119
+ financials: {
120
+ ...rawLeasing,
121
+ apr: (0, lodash_1.get)(computedLeasing, 'annualPercentageRate', 0),
122
+ finalPayment: (0, lodash_1.get)(computedLeasing, 'finalInstallment', 0),
123
+ totalAmount: (0, lodash_1.get)(computedLeasing, 'grossLoanAmount', 0),
124
+ netLoanAmount: (0, lodash_1.get)(computedLeasing, 'netLoanAmount', 0),
125
+ },
126
+ });
127
+ }
128
+ offers.push({
129
+ offerType: fb_constants_1.OfferType.buy,
130
+ title: `${make} ${model} kaufen – jetzt für ${this.formatEUR(price)} €`,
131
+ description: `${make} ${model} kaufen – jetzt für ${this.formatEUR(price)} €`,
132
+ });
133
+ return offers;
134
+ }
135
+ computeFinancials(car) {
136
+ try {
137
+ const normalized = (0, fe_financing_1.normalizeRateObject)(car);
138
+ if (!(0, lodash_1.get)(normalized, 'rate.financing')) {
139
+ return {};
140
+ }
141
+ const computed = (0, fe_financing_1.getComputedFinancing)(normalized.rate);
142
+ return { financing: computed.financing, leasing: computed.leasing };
143
+ }
144
+ catch (error) {
145
+ console.error(error);
146
+ return {};
147
+ }
148
+ }
149
+ isLeasingEligible(car) {
150
+ const firstRegistration = (0, lodash_1.get)(car, 'mainData.firstRegistration', 0);
151
+ const mileage = (0, lodash_1.get)(car, 'mainData.mileage', 0);
152
+ const maxAge = (0, lodash_1.get)(car, 'leasing.maxAge', 24);
153
+ const maxMileage = (0, lodash_1.get)(car, 'leasing.maxMileage', 1000000);
154
+ const registrationMs = firstRegistration ? firstRegistration * 1000 : Date.now();
155
+ const maxCarAge = new Date().setMonth(new Date().getMonth() - maxAge);
156
+ return registrationMs > maxCarAge && maxMileage > mileage;
157
+ }
158
+ financialTags(financials) {
32
159
  return {
33
- id: { value: (0, lodash_1.get)(car, 'metaData.vehicleId'), isGoogle: true },
34
- title: { value: this.getTitle(car), isGoogle: true },
35
- description: { value: this.getDescription(car), isGoogle: true },
36
- availability: { value: 'in stock', isGoogle: true },
37
- condition: { value: this.getCondition(car), isGoogle: true },
38
- price: { value: this.getPrice(car), isGoogle: true },
39
- link: { value: this.getCarLink(car), isGoogle: true },
40
- image_link: { value: imageLinks[0], isGoogle: true },
41
- brand: { value: (0, lodash_1.get)(car, 'mainData.make', ''), isGoogle: true },
42
- additional_image_link: { value: imageLinks[0], isGoogle: false },
43
- quantity_to_sell_on_facebook: { value: 1, isGoogle: true },
44
- google_product_category: { value: '916', isGoogle: true },
45
- sale_price: { value: this.getPrice(car), isGoogle: true },
46
- status: { value: 'active', isGoogle: true },
47
- color: { value: this.getColor(car), isGoogle: false },
48
- product_type: {
49
- value: 'Vehicles &amp; Parts > Vehicles > Motor Vehicles > Cars, Trucks &amp; Vans',
50
- isGoogle: true,
51
- },
160
+ monthly_payment: this.tag(financials.monthlyPayment, false),
161
+ down_payment: this.tag(financials.downPayment, false),
162
+ term_length: this.tag(financials.termLength, false),
163
+ apr: this.tag(financials.apr, false),
164
+ final_payment: this.tag(financials.finalPayment, false),
165
+ total_amount: this.tag(financials.totalAmount, false),
166
+ net_loan_amount: this.tag(financials.netLoanAmount, false),
52
167
  };
53
168
  }
54
- getTitle(car) {
55
- const make = (0, lodash_1.toString)((0, lodash_1.get)(car, 'mainData.make', ''));
56
- const model = (0, lodash_1.toString)((0, lodash_1.get)(car, 'mainData.model', ''));
57
- return (0, lodash_1.trim)((0, lodash_1.escape)((0, lodash_1.join)([make, model], ' ')));
169
+ tag(value, isGoogle) {
170
+ return { value, isGoogle };
171
+ }
172
+ formatEUR(value) {
173
+ return Math.round(value || 0).toLocaleString(DE_LOCALE);
174
+ }
175
+ async getMetaPushPriority(ownerId) {
176
+ const priorities = await this.mappingService.getMetaPushPriorityMapping();
177
+ const entry = priorities.find(priority => priority.dealer_id === ownerId);
178
+ const value = (0, lodash_1.get)(entry, 'meta_push_priority', '');
179
+ return fb_constants_1.META_PUSH_PRIORITY_ALLOWED_VALUES.includes(value) ? value : fb_constants_1.META_PUSH_PRIORITY_STANDARD;
180
+ }
181
+ getYear(car) {
182
+ const firstRegistration = (0, lodash_1.get)(car, 'mainData.firstRegistration', 0);
183
+ return firstRegistration ? moment(firstRegistration * 1000).format('YYYY') : moment().format('YYYY');
58
184
  }
59
185
  getCondition(car) {
60
186
  const available = {
61
- selector_condition_new: 'New',
62
- selector_condition_used: 'Used',
63
- selector_unknown: 'New',
187
+ selector_condition_new: 'new',
188
+ selector_condition_used: 'used',
189
+ selector_unknown: 'used',
64
190
  };
65
191
  const condition = (0, lodash_1.get)(car, 'mainData.condition', 'selector_unknown');
66
192
  return (0, lodash_1.get)(available, condition);
@@ -68,9 +194,8 @@ let FacebookShopTransformer = class FacebookShopTransformer {
68
194
  getCarLink(car) {
69
195
  return `https://${this.configService.config.domain}/search/vehicle/${car._id}`;
70
196
  }
71
- getPrice(car) {
72
- const price = (0, lodash_1.get)(car, 'price.currentSalesPrice', 0);
73
- return `${(0, lodash_1.round)(price, 2)} EUR`;
197
+ getPriceValue(car) {
198
+ return (0, lodash_1.round)((0, lodash_1.get)(car, 'price.currentSalesPrice', 0), 2);
74
199
  }
75
200
  getColor(car) {
76
201
  let colorSelection = (0, lodash_1.get)(car, 'exterior.exteriorColor', 'selector_unknown');
@@ -79,13 +204,12 @@ let FacebookShopTransformer = class FacebookShopTransformer {
79
204
  }
80
205
  return this.translator.translateVal(colorSelection);
81
206
  }
82
- getDescription(car) {
83
- return fb_description_transformer_1.FbDescription.create(car, this.translator, new fb_equipment_transformer_1.FbEquipment()).getDescriptionArray();
84
- }
85
207
  };
86
208
  exports.FacebookShopTransformer = FacebookShopTransformer;
87
209
  exports.FacebookShopTransformer = FacebookShopTransformer = __decorate([
88
210
  (0, common_1.Injectable)(),
89
- __metadata("design:paramtypes", [services_1.ConfigService, services_1.ImagesService])
211
+ __metadata("design:paramtypes", [services_1.ConfigService,
212
+ services_1.ImagesService,
213
+ services_1.MappingService])
90
214
  ], FacebookShopTransformer);
91
215
  //# sourceMappingURL=facebook-shop.transformer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"facebook-shop.transformer.js","sourceRoot":"","sources":["../../src/transformers/facebook-shop.transformer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"facebook-shop.transformer.js","sourceRoot":"","sources":["../../src/transformers/facebook-shop.transformer.ts"],"names":[],"mappings":"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"}