@empathyco/x-adapter 7.0.0-alpha.2 → 7.0.0-alpha.6
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/cjs/empathy/mappers/request/params/empathy-request-related-tags-query.mapper.js +7 -1
- package/dist/cjs/empathy/mappers/request/params/empathy-request-related-tags-query.mapper.js.map +1 -1
- package/dist/cjs/empathy/mappers/response/empathy-banner.mapper.js.map +1 -1
- package/dist/cjs/empathy/mappers/response/empathy-promoted.mapper.js.map +1 -1
- package/dist/cjs/empathy/mappers/response/empathy-redirection.mapper.js +1 -1
- package/dist/cjs/empathy/mappers/response/empathy-redirection.mapper.js.map +1 -1
- package/dist/cjs/empathy/mappers/response/empathy-tagging.mapper.js.map +1 -1
- package/dist/cjs/empathy/mappers/response/results/empathy-result.mapper.js +2 -2
- package/dist/cjs/empathy/mappers/response/results/empathy-result.mapper.js.map +1 -1
- package/dist/cjs/empathy/models/entities/empathy-direct.model.js.map +1 -1
- package/dist/cjs/types/response.types.js.map +1 -1
- package/dist/esm/empathy/mappers/request/params/empathy-request-related-tags-query.mapper.js +7 -1
- package/dist/esm/empathy/mappers/request/params/empathy-request-related-tags-query.mapper.js.map +1 -1
- package/dist/esm/empathy/mappers/response/empathy-banner.mapper.js.map +1 -1
- package/dist/esm/empathy/mappers/response/empathy-promoted.mapper.js.map +1 -1
- package/dist/esm/empathy/mappers/response/empathy-redirection.mapper.js +1 -1
- package/dist/esm/empathy/mappers/response/empathy-redirection.mapper.js.map +1 -1
- package/dist/esm/empathy/mappers/response/empathy-tagging.mapper.js.map +1 -1
- package/dist/esm/empathy/mappers/response/results/empathy-result.mapper.js +2 -2
- package/dist/esm/empathy/mappers/response/results/empathy-result.mapper.js.map +1 -1
- package/dist/esm/empathy/models/entities/empathy-direct.model.js.map +1 -1
- package/dist/esm/types/response.types.js.map +1 -1
- package/package.json +7 -7
- package/report/tsdoc-metadata.json +1 -1
- package/report/x-adapter.api.json +19 -45
- package/report/x-adapter.api.md +10 -11
- package/types/empathy/mappers/response/empathy-banner.mapper.d.ts +2 -2
- package/types/empathy/mappers/response/empathy-promoted.mapper.d.ts +2 -2
- package/types/empathy/mappers/response/empathy-redirection.mapper.d.ts +2 -2
- package/types/empathy/mappers/response/empathy-tagging.mapper.d.ts +3 -3
- package/types/empathy/mappers/response/results/empathy-result.mapper.d.ts +2 -2
- package/types/empathy/models/entities/empathy-direct.model.d.ts +0 -1
- package/types/types/response.types.d.ts +3 -3
package/dist/cjs/empathy/mappers/request/params/empathy-request-related-tags-query.mapper.js
CHANGED
|
@@ -13,7 +13,13 @@ var EmpathyRequestRelatedTagsQueryMapper = /** @class */ (function () {
|
|
|
13
13
|
}
|
|
14
14
|
EmpathyRequestRelatedTagsQueryMapper.prototype.map = function (_a, query) {
|
|
15
15
|
var _b = _a.relatedTags, relatedTags = _b === void 0 ? [] : _b;
|
|
16
|
-
return relatedTags.reduce(function (
|
|
16
|
+
return relatedTags.reduce(function (partialQuery, _a) {
|
|
17
|
+
var tag = _a.tag, relatedTagQuery = _a.query;
|
|
18
|
+
return relatedTagQuery.startsWith(tag)
|
|
19
|
+
? tag + " " + partialQuery
|
|
20
|
+
: partialQuery + " " + tag;
|
|
21
|
+
}, query)
|
|
22
|
+
.trim();
|
|
17
23
|
};
|
|
18
24
|
EmpathyRequestRelatedTagsQueryMapper = tslib_1.__decorate([
|
|
19
25
|
inversify_1.injectable()
|
package/dist/cjs/empathy/mappers/request/params/empathy-request-related-tags-query.mapper.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"empathy-request-related-tags-query.mapper.js","sourceRoot":"","sources":["../../../../../../src/empathy/mappers/request/params/empathy-request-related-tags-query.mapper.ts"],"names":[],"mappings":";;;;AAAA,uCAAuC;AAIvC;;;;GAIG;AAEH;IAAA;
|
|
1
|
+
{"version":3,"file":"empathy-request-related-tags-query.mapper.js","sourceRoot":"","sources":["../../../../../../src/empathy/mappers/request/params/empathy-request-related-tags-query.mapper.ts"],"names":[],"mappings":";;;;AAAA,uCAAuC;AAIvC;;;;GAIG;AAEH;IAAA;IAYA,CAAC;IAVC,kDAAG,GAAH,UAAI,EAAsC,EAAE,KAAa;YAAnD,mBAAgB,EAAhB,WAAW,mBAAG,EAAE,KAAA;QACpB,OAAO,WAAW,CAAC,MAAM,CACvB,UAAC,YAAY,EAAE,EAA+B;gBAA7B,GAAG,SAAA,EAAS,eAAe,WAAA;YAC1C,OAAA,eAAe,CAAC,UAAU,CAAC,GAAG,CAAC;gBAC7B,CAAC,CAAI,GAAG,SAAI,YAAc;gBAC1B,CAAC,CAAI,YAAY,SAAI,GAAK;QAF5B,CAE4B,EAC9B,KAAK,CACN;aACA,IAAI,EAAE,CAAC;IACV,CAAC;IAXU,oCAAoC;QADhD,sBAAU,EAAE;OACA,oCAAoC,CAYhD;IAAD,2CAAC;CAAA,AAZD,IAYC;AAZY,oFAAoC","sourcesContent":["import { injectable } from 'inversify';\nimport { QueryableRequest } from '../../../../types';\nimport { RequestMapper } from '../../../empathy-adapter.types';\n\n/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\n@injectable()\nexport class EmpathyRequestRelatedTagsQueryMapper implements RequestMapper<QueryableRequest, string>\n{\n map({ relatedTags = [] }: QueryableRequest, query: string): string {\n return relatedTags.reduce(\n (partialQuery, { tag, query: relatedTagQuery }) =>\n relatedTagQuery.startsWith(tag)\n ? `${tag} ${partialQuery}`\n : `${partialQuery} ${tag}`,\n query\n )\n .trim();\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"empathy-banner.mapper.js","sourceRoot":"","sources":["../../../../../src/empathy/mappers/response/empathy-banner.mapper.ts"],"names":[],"mappings":";;;;AACA,uCAAoD;AACpD,mEAA+D;AAG/D,gDAA8C;AAE9C;;;;GAIG;AAEH;IAGE,
|
|
1
|
+
{"version":3,"file":"empathy-banner.mapper.js","sourceRoot":"","sources":["../../../../../src/empathy/mappers/response/empathy-banner.mapper.ts"],"names":[],"mappings":";;;;AACA,uCAAoD;AACpD,mEAA+D;AAG/D,gDAA8C;AAE9C;;;;GAIG;AAEH;IAGE,6BAEE,cAAqD;QAErD,IAAI,CAAC,UAAU,GAAG,0BAAW,eAAI,cAAc,CAAC,CAAC;IACnD,CAAC;IAED,iCAAG,GAAH,UAAI,SAAwB,EAAE,MAAc,EAAE,OAA8B;QAC1E,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE;YAC3B,SAAS,EAAE,QAAQ;YACnB,EAAE,EAAE,SAAS,CAAC,EAAE;YAChB,KAAK,EAAE,SAAS,CAAC,KAAK;YACtB,GAAG,EAAE,SAAS,CAAC,GAAG;YAClB,KAAK,EAAE,SAAS,CAAC,SAAS;YAC1B,OAAO,EAAE;gBACP,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,aAAa,EAAE,EAAiB,EAAE,OAAO,CAAC;aAC5E;SACF,CAAC,CAAC;IACL,CAAC;IArBU,mBAAmB;QAD/B,sBAAU,EAAE;QAKR,mBAAA,uBAAW,CAAC,8BAAY,CAAC,eAAe,CAAC,YAAY,CAAC,CAAA;;OAJ9C,mBAAmB,CAsB/B;IAAD,0BAAC;CAAA,AAtBD,IAsBC;AAtBY,kDAAmB","sourcesContent":["import { Banner, TaggingInfo } from '@empathyco/x-types';\nimport { injectable, multiInject } from 'inversify';\nimport { DEPENDENCIES } from '../../container/container.const';\nimport { MapFn, ResponseMapper, ResponseMapperContext } from '../../empathy-adapter.types';\nimport { EmpathyBanner } from '../../models/entities/empathy-banner.model';\nimport { pipeMappers } from '../pipe-mappers';\n\n/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\n@injectable()\nexport class EmpathyBannerMapper implements ResponseMapper<EmpathyBanner, Banner> {\n private readonly mapTagging: MapFn<string, TaggingInfo>;\n\n constructor(\n @multiInject(DEPENDENCIES.ResponseMappers.queryTagging)\n taggingMappers: ResponseMapper<string, TaggingInfo>[]\n ) {\n this.mapTagging = pipeMappers(...taggingMappers);\n }\n\n map(rawBanner: EmpathyBanner, banner: Banner, context: ResponseMapperContext): Banner {\n return Object.assign(banner, {\n modelName: 'Banner',\n id: rawBanner.id,\n title: rawBanner.title,\n url: rawBanner.url,\n image: rawBanner.imagename,\n tagging: {\n click: this.mapTagging(rawBanner.trackable_url, {} as TaggingInfo, context)\n }\n });\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"empathy-promoted.mapper.js","sourceRoot":"","sources":["../../../../../src/empathy/mappers/response/empathy-promoted.mapper.ts"],"names":[],"mappings":";;;;AACA,uCAAoD;AACpD,mEAA+D;AAG/D,gDAA8C;AAE9C;;;;GAIG;AAEH;IAGE,+
|
|
1
|
+
{"version":3,"file":"empathy-promoted.mapper.js","sourceRoot":"","sources":["../../../../../src/empathy/mappers/response/empathy-promoted.mapper.ts"],"names":[],"mappings":";;;;AACA,uCAAoD;AACpD,mEAA+D;AAG/D,gDAA8C;AAE9C;;;;GAIG;AAEH;IAGE,+BAEE,cAAqD;QAErD,IAAI,CAAC,UAAU,GAAG,0BAAW,eAAI,cAAc,CAAC,CAAC;IACnD,CAAC;IAED,mCAAG,GAAH,UAAI,WAA4B,EAAE,QAAkB,EAAE,OAA8B;QAClF,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE;YAC7B,SAAS,EAAE,UAAU;YACrB,EAAE,EAAE,WAAW,CAAC,EAAE;YAClB,KAAK,EAAE,WAAW,CAAC,KAAK;YACxB,GAAG,EAAE,WAAW,CAAC,GAAG;YACpB,KAAK,EAAE,WAAW,CAAC,SAAS;YAC5B,OAAO,EAAE;gBACP,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,aAAa,EAAE,EAAiB,EAAE,OAAO,CAAC;aAC9E;SACF,CAAC,CAAC;IACL,CAAC;IArBU,qBAAqB;QADjC,sBAAU,EAAE;QAKR,mBAAA,uBAAW,CAAC,8BAAY,CAAC,eAAe,CAAC,YAAY,CAAC,CAAA;;OAJ9C,qBAAqB,CAsBjC;IAAD,4BAAC;CAAA,AAtBD,IAsBC;AAtBY,sDAAqB","sourcesContent":["import { Promoted, TaggingInfo } from '@empathyco/x-types';\nimport { injectable, multiInject } from 'inversify';\nimport { DEPENDENCIES } from '../../container/container.const';\nimport { MapFn, ResponseMapper, ResponseMapperContext } from '../../empathy-adapter.types';\nimport { EmpathyPromoted } from '../../models';\nimport { pipeMappers } from '../pipe-mappers';\n\n/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\n@injectable()\nexport class EmpathyPromotedMapper implements ResponseMapper<EmpathyPromoted, Promoted> {\n private readonly mapTagging: MapFn<string, TaggingInfo>;\n\n constructor(\n @multiInject(DEPENDENCIES.ResponseMappers.queryTagging)\n taggingMappers: ResponseMapper<string, TaggingInfo>[]\n ) {\n this.mapTagging = pipeMappers(...taggingMappers);\n }\n\n map(rawPromoted: EmpathyPromoted, promoted: Promoted, context: ResponseMapperContext): Promoted {\n return Object.assign(promoted, {\n modelName: 'Promoted',\n id: rawPromoted.id,\n title: rawPromoted.title,\n url: rawPromoted.url,\n image: rawPromoted.imagename,\n tagging: {\n click: this.mapTagging(rawPromoted.trackable_url, {} as TaggingInfo, context)\n }\n });\n }\n}\n"]}
|
|
@@ -16,8 +16,8 @@ var EmpathyRedirectionMapper = /** @class */ (function () {
|
|
|
16
16
|
}
|
|
17
17
|
EmpathyRedirectionMapper.prototype.map = function (rawDirect, redirection, context) {
|
|
18
18
|
return Object.assign(redirection, {
|
|
19
|
+
modelName: 'Redirection',
|
|
19
20
|
id: rawDirect.id,
|
|
20
|
-
title: rawDirect.title,
|
|
21
21
|
url: rawDirect.url,
|
|
22
22
|
tagging: {
|
|
23
23
|
click: this.mapTagging(rawDirect.trackable_url, {}, context)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"empathy-redirection.mapper.js","sourceRoot":"","sources":["../../../../../src/empathy/mappers/response/empathy-redirection.mapper.ts"],"names":[],"mappings":";;;;AACA,uCAAoD;AACpD,mEAA+D;AAG/D,gDAA8C;AAE9C;;;;GAIG;AAEH;IAGE,
|
|
1
|
+
{"version":3,"file":"empathy-redirection.mapper.js","sourceRoot":"","sources":["../../../../../src/empathy/mappers/response/empathy-redirection.mapper.ts"],"names":[],"mappings":";;;;AACA,uCAAoD;AACpD,mEAA+D;AAG/D,gDAA8C;AAE9C;;;;GAIG;AAEH;IAGE,kCAEE,cAAqD;QAErD,IAAI,CAAC,UAAU,GAAG,0BAAW,eAAI,cAAc,CAAC,CAAC;IACnD,CAAC;IAED,sCAAG,GAAH,UACE,SAAwB,EACxB,WAAwB,EACxB,OAA8B;QAE9B,OAAO,MAAM,CAAC,MAAM,CAAoC,WAAW,EAAE;YACnE,SAAS,EAAE,aAAa;YACxB,EAAE,EAAE,SAAS,CAAC,EAAE;YAChB,GAAG,EAAE,SAAS,CAAC,GAAG;YAClB,OAAO,EAAE;gBACP,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,aAAa,EAAE,EAAiB,EAAE,OAAO,CAAC;aAC5E;SACF,CAAC,CAAC;IACL,CAAC;IAvBU,wBAAwB;QADpC,sBAAU,EAAE;QAKR,mBAAA,uBAAW,CAAC,8BAAY,CAAC,eAAe,CAAC,YAAY,CAAC,CAAA;;OAJ9C,wBAAwB,CAwBpC;IAAD,+BAAC;CAAA,AAxBD,IAwBC;AAxBY,4DAAwB","sourcesContent":["import { Redirection, TaggingInfo } from '@empathyco/x-types';\nimport { injectable, multiInject } from 'inversify';\nimport { DEPENDENCIES } from '../../container/container.const';\nimport { MapFn, ResponseMapper, ResponseMapperContext } from '../../empathy-adapter.types';\nimport { EmpathyDirect } from '../../models/entities/empathy-direct.model';\nimport { pipeMappers } from '../pipe-mappers';\n\n/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\n@injectable()\nexport class EmpathyRedirectionMapper implements ResponseMapper<EmpathyDirect, Redirection> {\n private readonly mapTagging: MapFn<string, TaggingInfo>;\n\n constructor(\n @multiInject(DEPENDENCIES.ResponseMappers.queryTagging)\n taggingMappers: ResponseMapper<string, TaggingInfo>[]\n ) {\n this.mapTagging = pipeMappers(...taggingMappers);\n }\n\n map(\n rawDirect: EmpathyDirect,\n redirection: Redirection,\n context: ResponseMapperContext\n ): Redirection {\n return Object.assign<Redirection, Partial<Redirection>>(redirection, {\n modelName: 'Redirection',\n id: rawDirect.id,\n url: rawDirect.url,\n tagging: {\n click: this.mapTagging(rawDirect.trackable_url, {} as TaggingInfo, context)\n }\n });\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"empathy-tagging.mapper.js","sourceRoot":"","sources":["../../../../../src/empathy/mappers/response/empathy-tagging.mapper.ts"],"names":[],"mappings":";;;;AACA,uCAAuC;AAGvC,uCAAsC;AAEtC;;;;GAIG;AAEH;IAAA;QACmB,WAAM,GAAG,eAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;IA+BjE,CAAC;IA7BC,kCAAG,GAAH,UAAI,UAAkB,EAAE,
|
|
1
|
+
{"version":3,"file":"empathy-tagging.mapper.js","sourceRoot":"","sources":["../../../../../src/empathy/mappers/response/empathy-tagging.mapper.ts"],"names":[],"mappings":";;;;AACA,uCAAuC;AAGvC,uCAAsC;AAEtC;;;;GAIG;AAEH;IAAA;QACmB,WAAM,GAAG,eAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;IA+BjE,CAAC;IA7BC,kCAAG,GAAH,UAAI,UAAkB,EAAE,OAAoB;QAC1C,IAAI;YACI,IAAA,KAAkB,IAAI,CAAC,oBAAoB,CAAC,UAAU,CAAC,EAArD,GAAG,SAAA,EAAE,MAAM,YAA0C,CAAC;YAC9D,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,GAAG,KAAA,EAAE,MAAM,QAAA,EAAE,CAAC,CAAC;SACzC;QAAC,OAAO,CAAC,EAAE;YACV,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,8BAA8B,EAAE,uBAAuB,EAAE,UAAU,CAAC,CAAC;SACvF;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,mDAAoB,GAA5B,UAA6B,UAAkB;QAC7C,IAAM,MAAM,GAAe,EAAE,CAAC;QAC9B,IAAM,GAAG,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC;QAChC,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,UAAC,KAAK,EAAE,GAAG;YAClC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE;gBAC9B,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aACzB;iBAAM,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE;gBACtB,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;aACpC;iBAAM;gBACL,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;aACrB;QACH,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC;QACtB,OAAO;YACL,GAAG,EAAE,KAAG,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,QAAU;YACnC,MAAM,QAAA;SACP,CAAC;IACJ,CAAC;IA/BU,oBAAoB;QADhC,sBAAU,EAAE;OACA,oBAAoB,CAgChC;IAAD,2BAAC;CAAA,AAhCD,IAgCC;AAhCY,oDAAoB","sourcesContent":["import { TaggingInfo } from '@empathyco/x-types';\nimport { injectable } from 'inversify';\nimport { Dictionary } from '../../../types';\nimport { ResponseMapper } from '../../empathy-adapter.types';\nimport { Logger } from '../../logger';\n\n/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\n@injectable()\nexport class EmpathyTaggingMapper implements ResponseMapper<string, TaggingInfo> {\n private readonly logger = Logger.child('EmpathyTaggingMapper');\n\n map(taggingUrl: string, tagging: TaggingInfo): TaggingInfo {\n try {\n const { url, params } = this.extractUrlParameters(taggingUrl);\n Object.assign(tagging, { url, params });\n } catch (e) {\n this.logger.warn('[EmpathyBrokerTaggingMapper]', 'Invalid tagging url: ', taggingUrl);\n }\n\n return tagging;\n }\n\n private extractUrlParameters(taggingUrl: string): TaggingInfo {\n const params: Dictionary = {};\n const url = new URL(taggingUrl);\n url.searchParams.forEach((value, key) => {\n if (Array.isArray(params[key])) {\n params[key].push(value);\n } else if (params[key]) {\n params[key] = [params[key], value];\n } else {\n params[key] = value;\n }\n });\n params.follow = false;\n return {\n url: `${url.origin}${url.pathname}`,\n params\n };\n }\n}\n"]}
|
|
@@ -19,7 +19,7 @@ var EmpathyResultMapper = /** @class */ (function () {
|
|
|
19
19
|
this.trackingResultConfig = config.mappings.tracking.result;
|
|
20
20
|
}
|
|
21
21
|
EmpathyResultMapper.prototype.map = function (rawResult, result, context) {
|
|
22
|
-
var value = Number.parseFloat(
|
|
22
|
+
var value = Number.parseFloat(rawResult.price);
|
|
23
23
|
var originalValue = Number.parseFloat((rawResult.originalPrice || rawResult.price));
|
|
24
24
|
var sku = rawResult.eb_sku || '';
|
|
25
25
|
return Object.assign(result, {
|
|
@@ -35,7 +35,7 @@ var EmpathyResultMapper = /** @class */ (function () {
|
|
|
35
35
|
hasDiscount: value < originalValue
|
|
36
36
|
},
|
|
37
37
|
rating: {
|
|
38
|
-
value: rawResult.rating !== undefined ? Number.parseFloat(
|
|
38
|
+
value: rawResult.rating !== undefined ? Number.parseFloat(rawResult.rating) : null
|
|
39
39
|
},
|
|
40
40
|
identifier: {
|
|
41
41
|
value: sku
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"empathy-result.mapper.js","sourceRoot":"","sources":["../../../../../../src/empathy/mappers/response/results/empathy-result.mapper.ts"],"names":[],"mappings":";;;;AAAA,kFAA4E;AAE5E,uCAA4D;
|
|
1
|
+
{"version":3,"file":"empathy-result.mapper.js","sourceRoot":"","sources":["../../../../../../src/empathy/mappers/response/results/empathy-result.mapper.ts"],"names":[],"mappings":"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","sourcesContent":["import { getSafePropertyChain } from '@empathyco/x-get-safe-property-chain';\nimport { Result, Tagging, TaggingInfo } from '@empathyco/x-types';\nimport { inject, injectable, multiInject } from 'inversify';\nimport {\n EmpathyAdapterConfig,\n TrackingResultConfig\n} from '../../../config/empathy-adapter-config.types';\nimport { DEPENDENCIES } from '../../../container/container.const';\nimport { MapFn, ResponseMapper, ResponseMapperContext } from '../../../empathy-adapter.types';\nimport { Logger } from '../../../logger';\nimport { EmpathyResult } from '../../../models';\nimport { pipeMappers } from '../../pipe-mappers';\n\n/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\n@injectable()\nexport class EmpathyResultMapper implements ResponseMapper<EmpathyResult, Result> {\n private readonly logger = Logger.child('EmpathyResultMapper');\n private readonly mapTagging: MapFn<string, TaggingInfo>;\n private readonly trackingResultConfig: TrackingResultConfig;\n\n constructor(\n @inject(DEPENDENCIES.config) config: EmpathyAdapterConfig,\n @multiInject(DEPENDENCIES.ResponseMappers.Helpers.tagging)\n taggingMappers: ResponseMapper<string, TaggingInfo>[]\n ) {\n this.mapTagging = pipeMappers(...taggingMappers);\n this.trackingResultConfig = config.mappings.tracking.result;\n }\n\n map(rawResult: EmpathyResult, result: Result, context: ResponseMapperContext): Result {\n const value = Number.parseFloat(rawResult.price as string);\n const originalValue = Number.parseFloat((rawResult.originalPrice || rawResult.price) as string);\n const sku = rawResult.eb_sku || '';\n return Object.assign<Result, Result>(result, {\n modelName: 'Result',\n type: 'default',\n id: rawResult.id,\n name: rawResult.name || '',\n url: rawResult.url,\n images: rawResult.image ? [rawResult.image] : [],\n price: {\n value,\n originalValue,\n hasDiscount: value < originalValue\n },\n rating: {\n value: rawResult.rating !== undefined ? Number.parseFloat(rawResult.rating as string) : null\n },\n identifier: {\n value: sku\n },\n tagging: this.createResultTagging(rawResult, result.tagging || {}, context),\n isWishlisted: rawResult.isWishlisted || false\n });\n }\n\n private createResultTagging(\n rawResult: EmpathyResult,\n initialResultTagging: Tagging,\n context: ResponseMapperContext\n ): Tagging {\n return Object.entries(this.trackingResultConfig).reduce((resultTagging, [key, path]) => {\n const rawTagging = getSafePropertyChain(rawResult, path);\n if (rawTagging) {\n resultTagging[key] = this.mapTagging(rawTagging, {} as TaggingInfo, context);\n } else {\n if (process.env.NODE_ENV !== 'production') {\n this.logger.warn(\n `Tagging for event \"${key}\" at path \"${path}\" not found when mapping for feature \"${context.feature}\"`\n );\n }\n }\n return resultTagging;\n }, initialResultTagging);\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"empathy-direct.model.js","sourceRoot":"","sources":["../../../../../src/empathy/models/entities/empathy-direct.model.ts"],"names":[],"mappings":"","sourcesContent":["/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\nexport interface EmpathyDirect {\n id: string;\n
|
|
1
|
+
{"version":3,"file":"empathy-direct.model.js","sourceRoot":"","sources":["../../../../../src/empathy/models/entities/empathy-direct.model.ts"],"names":[],"mappings":"","sourcesContent":["/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\nexport interface EmpathyDirect {\n id: string;\n trackable_url: string;\n url: string;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"response.types.js","sourceRoot":"","sources":["../../../src/types/response.types.ts"],"names":[],"mappings":"","sourcesContent":["import {\n Banner,\n Facet,\n NextQuery,\n PartialResult,\n Promoted,\n Redirection,\n RelatedTag,\n Result,\n Suggestion,\n
|
|
1
|
+
{"version":3,"file":"response.types.js","sourceRoot":"","sources":["../../../src/types/response.types.ts"],"names":[],"mappings":"","sourcesContent":["import {\n Banner,\n Facet,\n NextQuery,\n PartialResult,\n Promoted,\n Redirection,\n RelatedTag,\n Result,\n Suggestion,\n TaggingInfo\n} from '@empathyco/x-types';\n\n/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\nexport interface RelatedTagsResponse {\n relatedTags: RelatedTag[];\n}\n\n/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\nexport interface SuggestionsResponse {\n suggestions: Suggestion[];\n}\n\n/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\nexport interface SearchByIdResponse {\n results: Result[];\n}\n\n/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\nexport interface TrackableShowResponse {\n showTagging: TaggingInfo;\n}\n\n/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\nexport interface SearchResponse {\n banners: Banner[];\n facets?: Facet[];\n partialResults: PartialResult[];\n promoteds: Promoted[];\n queryTagging: TaggingInfo;\n redirections: Redirection[];\n results: Result[];\n spellcheck: string;\n totalResults: number;\n}\n\n/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\nexport interface NextQueriesResponse {\n nextQueries: NextQuery[];\n}\n\n/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\nexport interface TopRecommendationsResponse {\n results: Result[];\n}\n\n/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\nexport interface SectionRecommendationsResponse extends TrackableShowResponse {\n results: Result[];\n}\n\n/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\nexport interface ClicksRecommendationsResponse extends TrackableShowResponse {\n results: Result[];\n totalResults: number;\n}\n\n/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\nexport interface QueriesRecommendationsResponse extends TrackableShowResponse {\n results: Result[];\n totalResults: number;\n}\n\n/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\nexport interface UserRecommendationsResponse extends TrackableShowResponse {\n results: Result[];\n totalResults: number;\n}\n"]}
|
package/dist/esm/empathy/mappers/request/params/empathy-request-related-tags-query.mapper.js
CHANGED
|
@@ -10,7 +10,13 @@ var EmpathyRequestRelatedTagsQueryMapper = /** @class */ (function () {
|
|
|
10
10
|
}
|
|
11
11
|
EmpathyRequestRelatedTagsQueryMapper.prototype.map = function (_a, query) {
|
|
12
12
|
var _b = _a.relatedTags, relatedTags = _b === void 0 ? [] : _b;
|
|
13
|
-
return relatedTags.reduce(function (
|
|
13
|
+
return relatedTags.reduce(function (partialQuery, _a) {
|
|
14
|
+
var tag = _a.tag, relatedTagQuery = _a.query;
|
|
15
|
+
return relatedTagQuery.startsWith(tag)
|
|
16
|
+
? tag + " " + partialQuery
|
|
17
|
+
: partialQuery + " " + tag;
|
|
18
|
+
}, query)
|
|
19
|
+
.trim();
|
|
14
20
|
};
|
|
15
21
|
EmpathyRequestRelatedTagsQueryMapper = __decorate([
|
|
16
22
|
injectable()
|
package/dist/esm/empathy/mappers/request/params/empathy-request-related-tags-query.mapper.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"empathy-request-related-tags-query.mapper.js","sourceRoot":"","sources":["../../../../../../src/empathy/mappers/request/params/empathy-request-related-tags-query.mapper.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAIvC;;;;GAIG;AAEH;IAAA;
|
|
1
|
+
{"version":3,"file":"empathy-request-related-tags-query.mapper.js","sourceRoot":"","sources":["../../../../../../src/empathy/mappers/request/params/empathy-request-related-tags-query.mapper.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAIvC;;;;GAIG;AAEH;IAAA;IAYA,CAAC;IAVC,kDAAG,GAAH,UAAI,EAAsC,EAAE,KAAa;YAAnD,mBAAgB,EAAhB,WAAW,mBAAG,EAAE,KAAA;QACpB,OAAO,WAAW,CAAC,MAAM,CACvB,UAAC,YAAY,EAAE,EAA+B;gBAA7B,GAAG,SAAA,EAAS,eAAe,WAAA;YAC1C,OAAA,eAAe,CAAC,UAAU,CAAC,GAAG,CAAC;gBAC7B,CAAC,CAAI,GAAG,SAAI,YAAc;gBAC1B,CAAC,CAAI,YAAY,SAAI,GAAK;QAF5B,CAE4B,EAC9B,KAAK,CACN;aACA,IAAI,EAAE,CAAC;IACV,CAAC;IAXU,oCAAoC;QADhD,UAAU,EAAE;OACA,oCAAoC,CAYhD;IAAD,2CAAC;CAAA,AAZD,IAYC;SAZY,oCAAoC","sourcesContent":["import { injectable } from 'inversify';\nimport { QueryableRequest } from '../../../../types';\nimport { RequestMapper } from '../../../empathy-adapter.types';\n\n/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\n@injectable()\nexport class EmpathyRequestRelatedTagsQueryMapper implements RequestMapper<QueryableRequest, string>\n{\n map({ relatedTags = [] }: QueryableRequest, query: string): string {\n return relatedTags.reduce(\n (partialQuery, { tag, query: relatedTagQuery }) =>\n relatedTagQuery.startsWith(tag)\n ? `${tag} ${partialQuery}`\n : `${partialQuery} ${tag}`,\n query\n )\n .trim();\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"empathy-banner.mapper.js","sourceRoot":"","sources":["../../../../../src/empathy/mappers/response/empathy-banner.mapper.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAG/D,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C;;;;GAIG;AAEH;IAGE,
|
|
1
|
+
{"version":3,"file":"empathy-banner.mapper.js","sourceRoot":"","sources":["../../../../../src/empathy/mappers/response/empathy-banner.mapper.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAG/D,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C;;;;GAIG;AAEH;IAGE,6BAEE,cAAqD;QAErD,IAAI,CAAC,UAAU,GAAG,WAAW,eAAI,cAAc,CAAC,CAAC;IACnD,CAAC;IAED,iCAAG,GAAH,UAAI,SAAwB,EAAE,MAAc,EAAE,OAA8B;QAC1E,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE;YAC3B,SAAS,EAAE,QAAQ;YACnB,EAAE,EAAE,SAAS,CAAC,EAAE;YAChB,KAAK,EAAE,SAAS,CAAC,KAAK;YACtB,GAAG,EAAE,SAAS,CAAC,GAAG;YAClB,KAAK,EAAE,SAAS,CAAC,SAAS;YAC1B,OAAO,EAAE;gBACP,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,aAAa,EAAE,EAAiB,EAAE,OAAO,CAAC;aAC5E;SACF,CAAC,CAAC;IACL,CAAC;IArBU,mBAAmB;QAD/B,UAAU,EAAE;QAKR,WAAA,WAAW,CAAC,YAAY,CAAC,eAAe,CAAC,YAAY,CAAC,CAAA;;OAJ9C,mBAAmB,CAsB/B;IAAD,0BAAC;CAAA,AAtBD,IAsBC;SAtBY,mBAAmB","sourcesContent":["import { Banner, TaggingInfo } from '@empathyco/x-types';\nimport { injectable, multiInject } from 'inversify';\nimport { DEPENDENCIES } from '../../container/container.const';\nimport { MapFn, ResponseMapper, ResponseMapperContext } from '../../empathy-adapter.types';\nimport { EmpathyBanner } from '../../models/entities/empathy-banner.model';\nimport { pipeMappers } from '../pipe-mappers';\n\n/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\n@injectable()\nexport class EmpathyBannerMapper implements ResponseMapper<EmpathyBanner, Banner> {\n private readonly mapTagging: MapFn<string, TaggingInfo>;\n\n constructor(\n @multiInject(DEPENDENCIES.ResponseMappers.queryTagging)\n taggingMappers: ResponseMapper<string, TaggingInfo>[]\n ) {\n this.mapTagging = pipeMappers(...taggingMappers);\n }\n\n map(rawBanner: EmpathyBanner, banner: Banner, context: ResponseMapperContext): Banner {\n return Object.assign(banner, {\n modelName: 'Banner',\n id: rawBanner.id,\n title: rawBanner.title,\n url: rawBanner.url,\n image: rawBanner.imagename,\n tagging: {\n click: this.mapTagging(rawBanner.trackable_url, {} as TaggingInfo, context)\n }\n });\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"empathy-promoted.mapper.js","sourceRoot":"","sources":["../../../../../src/empathy/mappers/response/empathy-promoted.mapper.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAG/D,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C;;;;GAIG;AAEH;IAGE,+
|
|
1
|
+
{"version":3,"file":"empathy-promoted.mapper.js","sourceRoot":"","sources":["../../../../../src/empathy/mappers/response/empathy-promoted.mapper.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAG/D,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C;;;;GAIG;AAEH;IAGE,+BAEE,cAAqD;QAErD,IAAI,CAAC,UAAU,GAAG,WAAW,eAAI,cAAc,CAAC,CAAC;IACnD,CAAC;IAED,mCAAG,GAAH,UAAI,WAA4B,EAAE,QAAkB,EAAE,OAA8B;QAClF,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE;YAC7B,SAAS,EAAE,UAAU;YACrB,EAAE,EAAE,WAAW,CAAC,EAAE;YAClB,KAAK,EAAE,WAAW,CAAC,KAAK;YACxB,GAAG,EAAE,WAAW,CAAC,GAAG;YACpB,KAAK,EAAE,WAAW,CAAC,SAAS;YAC5B,OAAO,EAAE;gBACP,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,aAAa,EAAE,EAAiB,EAAE,OAAO,CAAC;aAC9E;SACF,CAAC,CAAC;IACL,CAAC;IArBU,qBAAqB;QADjC,UAAU,EAAE;QAKR,WAAA,WAAW,CAAC,YAAY,CAAC,eAAe,CAAC,YAAY,CAAC,CAAA;;OAJ9C,qBAAqB,CAsBjC;IAAD,4BAAC;CAAA,AAtBD,IAsBC;SAtBY,qBAAqB","sourcesContent":["import { Promoted, TaggingInfo } from '@empathyco/x-types';\nimport { injectable, multiInject } from 'inversify';\nimport { DEPENDENCIES } from '../../container/container.const';\nimport { MapFn, ResponseMapper, ResponseMapperContext } from '../../empathy-adapter.types';\nimport { EmpathyPromoted } from '../../models';\nimport { pipeMappers } from '../pipe-mappers';\n\n/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\n@injectable()\nexport class EmpathyPromotedMapper implements ResponseMapper<EmpathyPromoted, Promoted> {\n private readonly mapTagging: MapFn<string, TaggingInfo>;\n\n constructor(\n @multiInject(DEPENDENCIES.ResponseMappers.queryTagging)\n taggingMappers: ResponseMapper<string, TaggingInfo>[]\n ) {\n this.mapTagging = pipeMappers(...taggingMappers);\n }\n\n map(rawPromoted: EmpathyPromoted, promoted: Promoted, context: ResponseMapperContext): Promoted {\n return Object.assign(promoted, {\n modelName: 'Promoted',\n id: rawPromoted.id,\n title: rawPromoted.title,\n url: rawPromoted.url,\n image: rawPromoted.imagename,\n tagging: {\n click: this.mapTagging(rawPromoted.trackable_url, {} as TaggingInfo, context)\n }\n });\n }\n}\n"]}
|
|
@@ -13,8 +13,8 @@ var EmpathyRedirectionMapper = /** @class */ (function () {
|
|
|
13
13
|
}
|
|
14
14
|
EmpathyRedirectionMapper.prototype.map = function (rawDirect, redirection, context) {
|
|
15
15
|
return Object.assign(redirection, {
|
|
16
|
+
modelName: 'Redirection',
|
|
16
17
|
id: rawDirect.id,
|
|
17
|
-
title: rawDirect.title,
|
|
18
18
|
url: rawDirect.url,
|
|
19
19
|
tagging: {
|
|
20
20
|
click: this.mapTagging(rawDirect.trackable_url, {}, context)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"empathy-redirection.mapper.js","sourceRoot":"","sources":["../../../../../src/empathy/mappers/response/empathy-redirection.mapper.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAG/D,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C;;;;GAIG;AAEH;IAGE,
|
|
1
|
+
{"version":3,"file":"empathy-redirection.mapper.js","sourceRoot":"","sources":["../../../../../src/empathy/mappers/response/empathy-redirection.mapper.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAG/D,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C;;;;GAIG;AAEH;IAGE,kCAEE,cAAqD;QAErD,IAAI,CAAC,UAAU,GAAG,WAAW,eAAI,cAAc,CAAC,CAAC;IACnD,CAAC;IAED,sCAAG,GAAH,UACE,SAAwB,EACxB,WAAwB,EACxB,OAA8B;QAE9B,OAAO,MAAM,CAAC,MAAM,CAAoC,WAAW,EAAE;YACnE,SAAS,EAAE,aAAa;YACxB,EAAE,EAAE,SAAS,CAAC,EAAE;YAChB,GAAG,EAAE,SAAS,CAAC,GAAG;YAClB,OAAO,EAAE;gBACP,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,aAAa,EAAE,EAAiB,EAAE,OAAO,CAAC;aAC5E;SACF,CAAC,CAAC;IACL,CAAC;IAvBU,wBAAwB;QADpC,UAAU,EAAE;QAKR,WAAA,WAAW,CAAC,YAAY,CAAC,eAAe,CAAC,YAAY,CAAC,CAAA;;OAJ9C,wBAAwB,CAwBpC;IAAD,+BAAC;CAAA,AAxBD,IAwBC;SAxBY,wBAAwB","sourcesContent":["import { Redirection, TaggingInfo } from '@empathyco/x-types';\nimport { injectable, multiInject } from 'inversify';\nimport { DEPENDENCIES } from '../../container/container.const';\nimport { MapFn, ResponseMapper, ResponseMapperContext } from '../../empathy-adapter.types';\nimport { EmpathyDirect } from '../../models/entities/empathy-direct.model';\nimport { pipeMappers } from '../pipe-mappers';\n\n/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\n@injectable()\nexport class EmpathyRedirectionMapper implements ResponseMapper<EmpathyDirect, Redirection> {\n private readonly mapTagging: MapFn<string, TaggingInfo>;\n\n constructor(\n @multiInject(DEPENDENCIES.ResponseMappers.queryTagging)\n taggingMappers: ResponseMapper<string, TaggingInfo>[]\n ) {\n this.mapTagging = pipeMappers(...taggingMappers);\n }\n\n map(\n rawDirect: EmpathyDirect,\n redirection: Redirection,\n context: ResponseMapperContext\n ): Redirection {\n return Object.assign<Redirection, Partial<Redirection>>(redirection, {\n modelName: 'Redirection',\n id: rawDirect.id,\n url: rawDirect.url,\n tagging: {\n click: this.mapTagging(rawDirect.trackable_url, {} as TaggingInfo, context)\n }\n });\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"empathy-tagging.mapper.js","sourceRoot":"","sources":["../../../../../src/empathy/mappers/response/empathy-tagging.mapper.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAGvC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC;;;;GAIG;AAEH;IAAA;QACmB,WAAM,GAAG,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;IA+BjE,CAAC;IA7BC,kCAAG,GAAH,UAAI,UAAkB,EAAE,
|
|
1
|
+
{"version":3,"file":"empathy-tagging.mapper.js","sourceRoot":"","sources":["../../../../../src/empathy/mappers/response/empathy-tagging.mapper.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAGvC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC;;;;GAIG;AAEH;IAAA;QACmB,WAAM,GAAG,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;IA+BjE,CAAC;IA7BC,kCAAG,GAAH,UAAI,UAAkB,EAAE,OAAoB;QAC1C,IAAI;YACI,IAAA,KAAkB,IAAI,CAAC,oBAAoB,CAAC,UAAU,CAAC,EAArD,GAAG,SAAA,EAAE,MAAM,YAA0C,CAAC;YAC9D,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,GAAG,KAAA,EAAE,MAAM,QAAA,EAAE,CAAC,CAAC;SACzC;QAAC,OAAO,CAAC,EAAE;YACV,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,8BAA8B,EAAE,uBAAuB,EAAE,UAAU,CAAC,CAAC;SACvF;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,mDAAoB,GAA5B,UAA6B,UAAkB;QAC7C,IAAM,MAAM,GAAe,EAAE,CAAC;QAC9B,IAAM,GAAG,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC;QAChC,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,UAAC,KAAK,EAAE,GAAG;YAClC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE;gBAC9B,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aACzB;iBAAM,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE;gBACtB,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;aACpC;iBAAM;gBACL,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;aACrB;QACH,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC;QACtB,OAAO;YACL,GAAG,EAAE,KAAG,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,QAAU;YACnC,MAAM,QAAA;SACP,CAAC;IACJ,CAAC;IA/BU,oBAAoB;QADhC,UAAU,EAAE;OACA,oBAAoB,CAgChC;IAAD,2BAAC;CAAA,AAhCD,IAgCC;SAhCY,oBAAoB","sourcesContent":["import { TaggingInfo } from '@empathyco/x-types';\nimport { injectable } from 'inversify';\nimport { Dictionary } from '../../../types';\nimport { ResponseMapper } from '../../empathy-adapter.types';\nimport { Logger } from '../../logger';\n\n/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\n@injectable()\nexport class EmpathyTaggingMapper implements ResponseMapper<string, TaggingInfo> {\n private readonly logger = Logger.child('EmpathyTaggingMapper');\n\n map(taggingUrl: string, tagging: TaggingInfo): TaggingInfo {\n try {\n const { url, params } = this.extractUrlParameters(taggingUrl);\n Object.assign(tagging, { url, params });\n } catch (e) {\n this.logger.warn('[EmpathyBrokerTaggingMapper]', 'Invalid tagging url: ', taggingUrl);\n }\n\n return tagging;\n }\n\n private extractUrlParameters(taggingUrl: string): TaggingInfo {\n const params: Dictionary = {};\n const url = new URL(taggingUrl);\n url.searchParams.forEach((value, key) => {\n if (Array.isArray(params[key])) {\n params[key].push(value);\n } else if (params[key]) {\n params[key] = [params[key], value];\n } else {\n params[key] = value;\n }\n });\n params.follow = false;\n return {\n url: `${url.origin}${url.pathname}`,\n params\n };\n }\n}\n"]}
|
|
@@ -16,7 +16,7 @@ var EmpathyResultMapper = /** @class */ (function () {
|
|
|
16
16
|
this.trackingResultConfig = config.mappings.tracking.result;
|
|
17
17
|
}
|
|
18
18
|
EmpathyResultMapper.prototype.map = function (rawResult, result, context) {
|
|
19
|
-
var value = Number.parseFloat(
|
|
19
|
+
var value = Number.parseFloat(rawResult.price);
|
|
20
20
|
var originalValue = Number.parseFloat((rawResult.originalPrice || rawResult.price));
|
|
21
21
|
var sku = rawResult.eb_sku || '';
|
|
22
22
|
return Object.assign(result, {
|
|
@@ -32,7 +32,7 @@ var EmpathyResultMapper = /** @class */ (function () {
|
|
|
32
32
|
hasDiscount: value < originalValue
|
|
33
33
|
},
|
|
34
34
|
rating: {
|
|
35
|
-
value: rawResult.rating !== undefined ? Number.parseFloat(
|
|
35
|
+
value: rawResult.rating !== undefined ? Number.parseFloat(rawResult.rating) : null
|
|
36
36
|
},
|
|
37
37
|
identifier: {
|
|
38
38
|
value: sku
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"empathy-result.mapper.js","sourceRoot":"","sources":["../../../../../../src/empathy/mappers/response/results/empathy-result.mapper.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAE5E,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"empathy-result.mapper.js","sourceRoot":"","sources":["../../../../../../src/empathy/mappers/response/results/empathy-result.mapper.ts"],"names":[],"mappings":"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","sourcesContent":["import { getSafePropertyChain } from '@empathyco/x-get-safe-property-chain';\nimport { Result, Tagging, TaggingInfo } from '@empathyco/x-types';\nimport { inject, injectable, multiInject } from 'inversify';\nimport {\n EmpathyAdapterConfig,\n TrackingResultConfig\n} from '../../../config/empathy-adapter-config.types';\nimport { DEPENDENCIES } from '../../../container/container.const';\nimport { MapFn, ResponseMapper, ResponseMapperContext } from '../../../empathy-adapter.types';\nimport { Logger } from '../../../logger';\nimport { EmpathyResult } from '../../../models';\nimport { pipeMappers } from '../../pipe-mappers';\n\n/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\n@injectable()\nexport class EmpathyResultMapper implements ResponseMapper<EmpathyResult, Result> {\n private readonly logger = Logger.child('EmpathyResultMapper');\n private readonly mapTagging: MapFn<string, TaggingInfo>;\n private readonly trackingResultConfig: TrackingResultConfig;\n\n constructor(\n @inject(DEPENDENCIES.config) config: EmpathyAdapterConfig,\n @multiInject(DEPENDENCIES.ResponseMappers.Helpers.tagging)\n taggingMappers: ResponseMapper<string, TaggingInfo>[]\n ) {\n this.mapTagging = pipeMappers(...taggingMappers);\n this.trackingResultConfig = config.mappings.tracking.result;\n }\n\n map(rawResult: EmpathyResult, result: Result, context: ResponseMapperContext): Result {\n const value = Number.parseFloat(rawResult.price as string);\n const originalValue = Number.parseFloat((rawResult.originalPrice || rawResult.price) as string);\n const sku = rawResult.eb_sku || '';\n return Object.assign<Result, Result>(result, {\n modelName: 'Result',\n type: 'default',\n id: rawResult.id,\n name: rawResult.name || '',\n url: rawResult.url,\n images: rawResult.image ? [rawResult.image] : [],\n price: {\n value,\n originalValue,\n hasDiscount: value < originalValue\n },\n rating: {\n value: rawResult.rating !== undefined ? Number.parseFloat(rawResult.rating as string) : null\n },\n identifier: {\n value: sku\n },\n tagging: this.createResultTagging(rawResult, result.tagging || {}, context),\n isWishlisted: rawResult.isWishlisted || false\n });\n }\n\n private createResultTagging(\n rawResult: EmpathyResult,\n initialResultTagging: Tagging,\n context: ResponseMapperContext\n ): Tagging {\n return Object.entries(this.trackingResultConfig).reduce((resultTagging, [key, path]) => {\n const rawTagging = getSafePropertyChain(rawResult, path);\n if (rawTagging) {\n resultTagging[key] = this.mapTagging(rawTagging, {} as TaggingInfo, context);\n } else {\n if (process.env.NODE_ENV !== 'production') {\n this.logger.warn(\n `Tagging for event \"${key}\" at path \"${path}\" not found when mapping for feature \"${context.feature}\"`\n );\n }\n }\n return resultTagging;\n }, initialResultTagging);\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"empathy-direct.model.js","sourceRoot":"","sources":["../../../../../src/empathy/models/entities/empathy-direct.model.ts"],"names":[],"mappings":"","sourcesContent":["/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\nexport interface EmpathyDirect {\n id: string;\n
|
|
1
|
+
{"version":3,"file":"empathy-direct.model.js","sourceRoot":"","sources":["../../../../../src/empathy/models/entities/empathy-direct.model.ts"],"names":[],"mappings":"","sourcesContent":["/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\nexport interface EmpathyDirect {\n id: string;\n trackable_url: string;\n url: string;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"response.types.js","sourceRoot":"","sources":["../../../src/types/response.types.ts"],"names":[],"mappings":"","sourcesContent":["import {\n Banner,\n Facet,\n NextQuery,\n PartialResult,\n Promoted,\n Redirection,\n RelatedTag,\n Result,\n Suggestion,\n
|
|
1
|
+
{"version":3,"file":"response.types.js","sourceRoot":"","sources":["../../../src/types/response.types.ts"],"names":[],"mappings":"","sourcesContent":["import {\n Banner,\n Facet,\n NextQuery,\n PartialResult,\n Promoted,\n Redirection,\n RelatedTag,\n Result,\n Suggestion,\n TaggingInfo\n} from '@empathyco/x-types';\n\n/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\nexport interface RelatedTagsResponse {\n relatedTags: RelatedTag[];\n}\n\n/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\nexport interface SuggestionsResponse {\n suggestions: Suggestion[];\n}\n\n/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\nexport interface SearchByIdResponse {\n results: Result[];\n}\n\n/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\nexport interface TrackableShowResponse {\n showTagging: TaggingInfo;\n}\n\n/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\nexport interface SearchResponse {\n banners: Banner[];\n facets?: Facet[];\n partialResults: PartialResult[];\n promoteds: Promoted[];\n queryTagging: TaggingInfo;\n redirections: Redirection[];\n results: Result[];\n spellcheck: string;\n totalResults: number;\n}\n\n/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\nexport interface NextQueriesResponse {\n nextQueries: NextQuery[];\n}\n\n/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\nexport interface TopRecommendationsResponse {\n results: Result[];\n}\n\n/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\nexport interface SectionRecommendationsResponse extends TrackableShowResponse {\n results: Result[];\n}\n\n/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\nexport interface ClicksRecommendationsResponse extends TrackableShowResponse {\n results: Result[];\n totalResults: number;\n}\n\n/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\nexport interface QueriesRecommendationsResponse extends TrackableShowResponse {\n results: Result[];\n totalResults: number;\n}\n\n/**\n * TODO https://searchbroker.atlassian.net/browse/EX-2163\n *\n * @public\n */\nexport interface UserRecommendationsResponse extends TrackableShowResponse {\n results: Result[];\n totalResults: number;\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@empathyco/x-adapter",
|
|
3
|
-
"version": "7.0.0-alpha.
|
|
3
|
+
"version": "7.0.0-alpha.6",
|
|
4
4
|
"description": "A search client for the Empathy search API ",
|
|
5
5
|
"author": "Empathy Systems Corporation S.L.",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -40,17 +40,17 @@
|
|
|
40
40
|
"test:coverage": "jest --coverage"
|
|
41
41
|
},
|
|
42
42
|
"dependencies": {
|
|
43
|
-
"@empathyco/x-deep-merge": "^1.
|
|
44
|
-
"@empathyco/x-get-safe-property-chain": "^1.
|
|
43
|
+
"@empathyco/x-deep-merge": "^1.3.0-alpha.0",
|
|
44
|
+
"@empathyco/x-get-safe-property-chain": "^1.3.0-alpha.0",
|
|
45
45
|
"@empathyco/x-logger": "^1.1.0",
|
|
46
|
-
"@empathyco/x-storage-service": "^1.
|
|
47
|
-
"@empathyco/x-types": "^10.0.0-alpha.
|
|
46
|
+
"@empathyco/x-storage-service": "^1.4.0-alpha.0",
|
|
47
|
+
"@empathyco/x-types": "^10.0.0-alpha.11",
|
|
48
48
|
"inversify": "~5.0.1",
|
|
49
49
|
"reflect-metadata": "~0.1.13",
|
|
50
50
|
"tslib": "~2.3.0"
|
|
51
51
|
},
|
|
52
52
|
"devDependencies": {
|
|
53
|
-
"@empathyco/x-jest-utils": "^1.
|
|
53
|
+
"@empathyco/x-jest-utils": "^1.4.0-alpha.0",
|
|
54
54
|
"@microsoft/api-documenter": "~7.13.33",
|
|
55
55
|
"@microsoft/api-extractor": "~7.18.4",
|
|
56
56
|
"@types/jest": "~24.0.13",
|
|
@@ -62,5 +62,5 @@
|
|
|
62
62
|
"publishConfig": {
|
|
63
63
|
"access": "public"
|
|
64
64
|
},
|
|
65
|
-
"gitHead": "
|
|
65
|
+
"gitHead": "86cecedd0d76dc5db810bba830adea137154e33d"
|
|
66
66
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"metadata": {
|
|
3
3
|
"toolPackage": "@microsoft/api-extractor",
|
|
4
|
-
"toolVersion": "7.18.
|
|
4
|
+
"toolVersion": "7.18.16",
|
|
5
5
|
"schemaVersion": 1004,
|
|
6
6
|
"oldestForwardsCompatibleVersion": 1001,
|
|
7
7
|
"tsdocConfig": {
|
|
@@ -5761,8 +5761,8 @@
|
|
|
5761
5761
|
},
|
|
5762
5762
|
{
|
|
5763
5763
|
"kind": "Reference",
|
|
5764
|
-
"text": "
|
|
5765
|
-
"canonicalReference": "@empathyco/x-adapter!
|
|
5764
|
+
"text": "TaggingInfo",
|
|
5765
|
+
"canonicalReference": "@empathyco/x-adapter!TaggingInfo:interface"
|
|
5766
5766
|
},
|
|
5767
5767
|
{
|
|
5768
5768
|
"kind": "Content",
|
|
@@ -6687,32 +6687,6 @@
|
|
|
6687
6687
|
"endIndex": 2
|
|
6688
6688
|
}
|
|
6689
6689
|
},
|
|
6690
|
-
{
|
|
6691
|
-
"kind": "PropertySignature",
|
|
6692
|
-
"canonicalReference": "@empathyco/x-adapter!EmpathyDirect#title:member",
|
|
6693
|
-
"docComment": "",
|
|
6694
|
-
"excerptTokens": [
|
|
6695
|
-
{
|
|
6696
|
-
"kind": "Content",
|
|
6697
|
-
"text": "title: "
|
|
6698
|
-
},
|
|
6699
|
-
{
|
|
6700
|
-
"kind": "Content",
|
|
6701
|
-
"text": "string"
|
|
6702
|
-
},
|
|
6703
|
-
{
|
|
6704
|
-
"kind": "Content",
|
|
6705
|
-
"text": ";"
|
|
6706
|
-
}
|
|
6707
|
-
],
|
|
6708
|
-
"isOptional": false,
|
|
6709
|
-
"releaseTag": "Public",
|
|
6710
|
-
"name": "title",
|
|
6711
|
-
"propertyTypeTokenRange": {
|
|
6712
|
-
"startIndex": 1,
|
|
6713
|
-
"endIndex": 2
|
|
6714
|
-
}
|
|
6715
|
-
},
|
|
6716
6690
|
{
|
|
6717
6691
|
"kind": "PropertySignature",
|
|
6718
6692
|
"canonicalReference": "@empathyco/x-adapter!EmpathyDirect#trackable_url:member",
|
|
@@ -9189,8 +9163,8 @@
|
|
|
9189
9163
|
},
|
|
9190
9164
|
{
|
|
9191
9165
|
"kind": "Reference",
|
|
9192
|
-
"text": "
|
|
9193
|
-
"canonicalReference": "@empathyco/x-adapter!
|
|
9166
|
+
"text": "TaggingInfo",
|
|
9167
|
+
"canonicalReference": "@empathyco/x-adapter!TaggingInfo:interface"
|
|
9194
9168
|
},
|
|
9195
9169
|
{
|
|
9196
9170
|
"kind": "Content",
|
|
@@ -9801,8 +9775,8 @@
|
|
|
9801
9775
|
},
|
|
9802
9776
|
{
|
|
9803
9777
|
"kind": "Reference",
|
|
9804
|
-
"text": "
|
|
9805
|
-
"canonicalReference": "@empathyco/x-adapter!
|
|
9778
|
+
"text": "TaggingInfo",
|
|
9779
|
+
"canonicalReference": "@empathyco/x-adapter!TaggingInfo:interface"
|
|
9806
9780
|
},
|
|
9807
9781
|
{
|
|
9808
9782
|
"kind": "Content",
|
|
@@ -11340,8 +11314,8 @@
|
|
|
11340
11314
|
},
|
|
11341
11315
|
{
|
|
11342
11316
|
"kind": "Reference",
|
|
11343
|
-
"text": "
|
|
11344
|
-
"canonicalReference": "@empathyco/x-adapter!
|
|
11317
|
+
"text": "TaggingInfo",
|
|
11318
|
+
"canonicalReference": "@empathyco/x-adapter!TaggingInfo:interface"
|
|
11345
11319
|
},
|
|
11346
11320
|
{
|
|
11347
11321
|
"kind": "Content",
|
|
@@ -13825,8 +13799,8 @@
|
|
|
13825
13799
|
},
|
|
13826
13800
|
{
|
|
13827
13801
|
"kind": "Reference",
|
|
13828
|
-
"text": "
|
|
13829
|
-
"canonicalReference": "@empathyco/x-adapter!
|
|
13802
|
+
"text": "TaggingInfo",
|
|
13803
|
+
"canonicalReference": "@empathyco/x-adapter!TaggingInfo:interface"
|
|
13830
13804
|
},
|
|
13831
13805
|
{
|
|
13832
13806
|
"kind": "Content",
|
|
@@ -13855,8 +13829,8 @@
|
|
|
13855
13829
|
},
|
|
13856
13830
|
{
|
|
13857
13831
|
"kind": "Reference",
|
|
13858
|
-
"text": "
|
|
13859
|
-
"canonicalReference": "@empathyco/x-adapter!
|
|
13832
|
+
"text": "TaggingInfo",
|
|
13833
|
+
"canonicalReference": "@empathyco/x-adapter!TaggingInfo:interface"
|
|
13860
13834
|
},
|
|
13861
13835
|
{
|
|
13862
13836
|
"kind": "Content",
|
|
@@ -13864,8 +13838,8 @@
|
|
|
13864
13838
|
},
|
|
13865
13839
|
{
|
|
13866
13840
|
"kind": "Reference",
|
|
13867
|
-
"text": "
|
|
13868
|
-
"canonicalReference": "@empathyco/x-adapter!
|
|
13841
|
+
"text": "TaggingInfo",
|
|
13842
|
+
"canonicalReference": "@empathyco/x-adapter!TaggingInfo:interface"
|
|
13869
13843
|
},
|
|
13870
13844
|
{
|
|
13871
13845
|
"kind": "Content",
|
|
@@ -22360,8 +22334,8 @@
|
|
|
22360
22334
|
},
|
|
22361
22335
|
{
|
|
22362
22336
|
"kind": "Reference",
|
|
22363
|
-
"text": "
|
|
22364
|
-
"canonicalReference": "@empathyco/x-adapter!
|
|
22337
|
+
"text": "TaggingInfo",
|
|
22338
|
+
"canonicalReference": "@empathyco/x-adapter!TaggingInfo:interface"
|
|
22365
22339
|
},
|
|
22366
22340
|
{
|
|
22367
22341
|
"kind": "Content",
|
|
@@ -23021,8 +22995,8 @@
|
|
|
23021
22995
|
},
|
|
23022
22996
|
{
|
|
23023
22997
|
"kind": "Reference",
|
|
23024
|
-
"text": "
|
|
23025
|
-
"canonicalReference": "@empathyco/x-adapter!
|
|
22998
|
+
"text": "TaggingInfo",
|
|
22999
|
+
"canonicalReference": "@empathyco/x-adapter!TaggingInfo:interface"
|
|
23026
23000
|
},
|
|
23027
23001
|
{
|
|
23028
23002
|
"kind": "Content",
|
package/report/x-adapter.api.md
CHANGED
|
@@ -372,8 +372,8 @@ export interface EmpathyBanner {
|
|
|
372
372
|
//
|
|
373
373
|
// @public
|
|
374
374
|
export class EmpathyBannerMapper implements ResponseMapper<EmpathyBanner, Banner> {
|
|
375
|
-
// Warning: (ae-forgotten-export) The symbol "
|
|
376
|
-
constructor(taggingMappers: ResponseMapper<string,
|
|
375
|
+
// Warning: (ae-forgotten-export) The symbol "TaggingInfo" needs to be exported by the entry point index.d.ts
|
|
376
|
+
constructor(taggingMappers: ResponseMapper<string, TaggingInfo>[]);
|
|
377
377
|
// (undocumented)
|
|
378
378
|
map(rawBanner: EmpathyBanner, banner: Banner, context: ResponseMapperContext): Banner;
|
|
379
379
|
}
|
|
@@ -428,8 +428,6 @@ export interface EmpathyDirect {
|
|
|
428
428
|
// (undocumented)
|
|
429
429
|
id: string;
|
|
430
430
|
// (undocumented)
|
|
431
|
-
title: string;
|
|
432
|
-
// (undocumented)
|
|
433
431
|
trackable_url: string;
|
|
434
432
|
// (undocumented)
|
|
435
433
|
url: string;
|
|
@@ -588,7 +586,7 @@ export interface EmpathyPromoted {
|
|
|
588
586
|
//
|
|
589
587
|
// @public
|
|
590
588
|
export class EmpathyPromotedMapper implements ResponseMapper<EmpathyPromoted, Promoted> {
|
|
591
|
-
constructor(taggingMappers: ResponseMapper<string,
|
|
589
|
+
constructor(taggingMappers: ResponseMapper<string, TaggingInfo>[]);
|
|
592
590
|
// (undocumented)
|
|
593
591
|
map(rawPromoted: EmpathyPromoted, promoted: Promoted, context: ResponseMapperContext): Promoted;
|
|
594
592
|
}
|
|
@@ -617,7 +615,7 @@ export class EmpathyQueryableRequestMapper implements RequestMapper<QueryableReq
|
|
|
617
615
|
//
|
|
618
616
|
// @public
|
|
619
617
|
export class EmpathyRedirectionMapper implements ResponseMapper<EmpathyDirect, Redirection> {
|
|
620
|
-
constructor(taggingMappers: ResponseMapper<string,
|
|
618
|
+
constructor(taggingMappers: ResponseMapper<string, TaggingInfo>[]);
|
|
621
619
|
// (undocumented)
|
|
622
620
|
map(rawDirect: EmpathyDirect, redirection: Redirection, context: ResponseMapperContext): Redirection;
|
|
623
621
|
}
|
|
@@ -721,13 +719,14 @@ export interface EmpathyResult {
|
|
|
721
719
|
|
|
722
720
|
// @public
|
|
723
721
|
export class EmpathyResultMapper implements ResponseMapper<EmpathyResult, Result> {
|
|
724
|
-
constructor(config: EmpathyAdapterConfig, taggingMappers: ResponseMapper<string,
|
|
722
|
+
constructor(config: EmpathyAdapterConfig, taggingMappers: ResponseMapper<string, TaggingInfo>[]);
|
|
725
723
|
// (undocumented)
|
|
726
724
|
map(rawResult: EmpathyResult, result: Result, context: ResponseMapperContext): Result;
|
|
727
725
|
}
|
|
728
726
|
|
|
729
727
|
// @public
|
|
730
728
|
export class EmpathyResultQueryTaggingMapper implements ResponseMapper<EmpathyResult, Result> {
|
|
729
|
+
// Warning: (ae-forgotten-export) The symbol "Tagging" needs to be exported by the entry point index.d.ts
|
|
731
730
|
constructor(config: EmpathyAdapterConfig, queryTaggingMappers: ResponseMapper<string, Tagging>[]);
|
|
732
731
|
// (undocumented)
|
|
733
732
|
map(_rawResult: EmpathyResult, result: Result, context: ResponseMapperContext): Result;
|
|
@@ -871,9 +870,9 @@ export interface EmpathySuggestionsRequest {
|
|
|
871
870
|
}
|
|
872
871
|
|
|
873
872
|
// @public
|
|
874
|
-
export class EmpathyTaggingMapper implements ResponseMapper<string,
|
|
873
|
+
export class EmpathyTaggingMapper implements ResponseMapper<string, TaggingInfo> {
|
|
875
874
|
// (undocumented)
|
|
876
|
-
map(taggingUrl: string, tagging:
|
|
875
|
+
map(taggingUrl: string, tagging: TaggingInfo): TaggingInfo;
|
|
877
876
|
}
|
|
878
877
|
|
|
879
878
|
// @public
|
|
@@ -1349,7 +1348,7 @@ export interface SearchResponse {
|
|
|
1349
1348
|
// (undocumented)
|
|
1350
1349
|
promoteds: Promoted[];
|
|
1351
1350
|
// (undocumented)
|
|
1352
|
-
queryTagging:
|
|
1351
|
+
queryTagging: TaggingInfo;
|
|
1353
1352
|
// (undocumented)
|
|
1354
1353
|
redirections: Redirection[];
|
|
1355
1354
|
// (undocumented)
|
|
@@ -1407,7 +1406,7 @@ export interface TrackableRequest {
|
|
|
1407
1406
|
// @public
|
|
1408
1407
|
export interface TrackableShowResponse {
|
|
1409
1408
|
// (undocumented)
|
|
1410
|
-
showTagging:
|
|
1409
|
+
showTagging: TaggingInfo;
|
|
1411
1410
|
}
|
|
1412
1411
|
|
|
1413
1412
|
// @public
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Banner,
|
|
1
|
+
import { Banner, TaggingInfo } from '@empathyco/x-types';
|
|
2
2
|
import { ResponseMapper, ResponseMapperContext } from '../../empathy-adapter.types';
|
|
3
3
|
import { EmpathyBanner } from '../../models/entities/empathy-banner.model';
|
|
4
4
|
/**
|
|
@@ -8,6 +8,6 @@ import { EmpathyBanner } from '../../models/entities/empathy-banner.model';
|
|
|
8
8
|
*/
|
|
9
9
|
export declare class EmpathyBannerMapper implements ResponseMapper<EmpathyBanner, Banner> {
|
|
10
10
|
private readonly mapTagging;
|
|
11
|
-
constructor(taggingMappers: ResponseMapper<string,
|
|
11
|
+
constructor(taggingMappers: ResponseMapper<string, TaggingInfo>[]);
|
|
12
12
|
map(rawBanner: EmpathyBanner, banner: Banner, context: ResponseMapperContext): Banner;
|
|
13
13
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Promoted,
|
|
1
|
+
import { Promoted, TaggingInfo } from '@empathyco/x-types';
|
|
2
2
|
import { ResponseMapper, ResponseMapperContext } from '../../empathy-adapter.types';
|
|
3
3
|
import { EmpathyPromoted } from '../../models';
|
|
4
4
|
/**
|
|
@@ -8,6 +8,6 @@ import { EmpathyPromoted } from '../../models';
|
|
|
8
8
|
*/
|
|
9
9
|
export declare class EmpathyPromotedMapper implements ResponseMapper<EmpathyPromoted, Promoted> {
|
|
10
10
|
private readonly mapTagging;
|
|
11
|
-
constructor(taggingMappers: ResponseMapper<string,
|
|
11
|
+
constructor(taggingMappers: ResponseMapper<string, TaggingInfo>[]);
|
|
12
12
|
map(rawPromoted: EmpathyPromoted, promoted: Promoted, context: ResponseMapperContext): Promoted;
|
|
13
13
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Redirection,
|
|
1
|
+
import { Redirection, TaggingInfo } from '@empathyco/x-types';
|
|
2
2
|
import { ResponseMapper, ResponseMapperContext } from '../../empathy-adapter.types';
|
|
3
3
|
import { EmpathyDirect } from '../../models/entities/empathy-direct.model';
|
|
4
4
|
/**
|
|
@@ -8,6 +8,6 @@ import { EmpathyDirect } from '../../models/entities/empathy-direct.model';
|
|
|
8
8
|
*/
|
|
9
9
|
export declare class EmpathyRedirectionMapper implements ResponseMapper<EmpathyDirect, Redirection> {
|
|
10
10
|
private readonly mapTagging;
|
|
11
|
-
constructor(taggingMappers: ResponseMapper<string,
|
|
11
|
+
constructor(taggingMappers: ResponseMapper<string, TaggingInfo>[]);
|
|
12
12
|
map(rawDirect: EmpathyDirect, redirection: Redirection, context: ResponseMapperContext): Redirection;
|
|
13
13
|
}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { TaggingInfo } from '@empathyco/x-types';
|
|
2
2
|
import { ResponseMapper } from '../../empathy-adapter.types';
|
|
3
3
|
/**
|
|
4
4
|
* TODO https://searchbroker.atlassian.net/browse/EX-2163
|
|
5
5
|
*
|
|
6
6
|
* @public
|
|
7
7
|
*/
|
|
8
|
-
export declare class EmpathyTaggingMapper implements ResponseMapper<string,
|
|
8
|
+
export declare class EmpathyTaggingMapper implements ResponseMapper<string, TaggingInfo> {
|
|
9
9
|
private readonly logger;
|
|
10
|
-
map(taggingUrl: string, tagging:
|
|
10
|
+
map(taggingUrl: string, tagging: TaggingInfo): TaggingInfo;
|
|
11
11
|
private extractUrlParameters;
|
|
12
12
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Result,
|
|
1
|
+
import { Result, TaggingInfo } from '@empathyco/x-types';
|
|
2
2
|
import { EmpathyAdapterConfig } from '../../../config/empathy-adapter-config.types';
|
|
3
3
|
import { ResponseMapper, ResponseMapperContext } from '../../../empathy-adapter.types';
|
|
4
4
|
import { EmpathyResult } from '../../../models';
|
|
@@ -11,7 +11,7 @@ export declare class EmpathyResultMapper implements ResponseMapper<EmpathyResult
|
|
|
11
11
|
private readonly logger;
|
|
12
12
|
private readonly mapTagging;
|
|
13
13
|
private readonly trackingResultConfig;
|
|
14
|
-
constructor(config: EmpathyAdapterConfig, taggingMappers: ResponseMapper<string,
|
|
14
|
+
constructor(config: EmpathyAdapterConfig, taggingMappers: ResponseMapper<string, TaggingInfo>[]);
|
|
15
15
|
map(rawResult: EmpathyResult, result: Result, context: ResponseMapperContext): Result;
|
|
16
16
|
private createResultTagging;
|
|
17
17
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Banner, Facet, NextQuery, PartialResult, Promoted, Redirection, RelatedTag, Result, Suggestion,
|
|
1
|
+
import { Banner, Facet, NextQuery, PartialResult, Promoted, Redirection, RelatedTag, Result, Suggestion, TaggingInfo } from '@empathyco/x-types';
|
|
2
2
|
/**
|
|
3
3
|
* TODO https://searchbroker.atlassian.net/browse/EX-2163
|
|
4
4
|
*
|
|
@@ -29,7 +29,7 @@ export interface SearchByIdResponse {
|
|
|
29
29
|
* @public
|
|
30
30
|
*/
|
|
31
31
|
export interface TrackableShowResponse {
|
|
32
|
-
showTagging:
|
|
32
|
+
showTagging: TaggingInfo;
|
|
33
33
|
}
|
|
34
34
|
/**
|
|
35
35
|
* TODO https://searchbroker.atlassian.net/browse/EX-2163
|
|
@@ -41,7 +41,7 @@ export interface SearchResponse {
|
|
|
41
41
|
facets?: Facet[];
|
|
42
42
|
partialResults: PartialResult[];
|
|
43
43
|
promoteds: Promoted[];
|
|
44
|
-
queryTagging:
|
|
44
|
+
queryTagging: TaggingInfo;
|
|
45
45
|
redirections: Redirection[];
|
|
46
46
|
results: Result[];
|
|
47
47
|
spellcheck: string;
|