@empathyco/x-adapter-platform 1.0.0-alpha.14 → 1.0.0-alpha.17

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.
Files changed (231) hide show
  1. package/dist/cjs/endpoint-adapters/related-tags.endpoint-adapter.js +12 -8
  2. package/dist/cjs/endpoint-adapters/related-tags.endpoint-adapter.js.map +1 -1
  3. package/dist/cjs/endpoint-adapters/search.endpoint-adapter.js +6 -7
  4. package/dist/cjs/endpoint-adapters/search.endpoint-adapter.js.map +1 -1
  5. package/dist/cjs/mappers/requests/index.js +2 -2
  6. package/dist/cjs/mappers/requests/index.js.map +1 -1
  7. package/dist/cjs/mappers/requests/related-tags-request.mapper.js +8 -0
  8. package/dist/cjs/mappers/requests/related-tags-request.mapper.js.map +1 -0
  9. package/dist/cjs/mappers/requests/search-request.mapper.js +3 -86
  10. package/dist/cjs/mappers/requests/search-request.mapper.js.map +1 -1
  11. package/dist/cjs/mappers/responses/index.js +3 -3
  12. package/dist/cjs/mappers/responses/index.js.map +1 -1
  13. package/dist/cjs/mappers/responses/related-tags-response.mapper.js +4 -10
  14. package/dist/cjs/mappers/responses/related-tags-response.mapper.js.map +1 -1
  15. package/dist/cjs/mappers/responses/search-response.mapper.js +52 -34
  16. package/dist/cjs/mappers/responses/search-response.mapper.js.map +1 -1
  17. package/dist/cjs/schemas/facets/index.js +6 -0
  18. package/dist/cjs/schemas/facets/index.js.map +1 -0
  19. package/dist/cjs/{types/models.types.js → schemas/facets/types.js} +1 -1
  20. package/dist/cjs/schemas/facets/types.js.map +1 -0
  21. package/dist/cjs/schemas/facets/utils.js +16 -0
  22. package/dist/cjs/schemas/facets/utils.js.map +1 -0
  23. package/dist/cjs/schemas/filters/number-filter.schema.js +4 -5
  24. package/dist/cjs/schemas/filters/number-filter.schema.js.map +1 -1
  25. package/dist/cjs/schemas/filters/simple-filter.schema.js +4 -5
  26. package/dist/cjs/schemas/filters/simple-filter.schema.js.map +1 -1
  27. package/dist/cjs/schemas/index.js +1 -5
  28. package/dist/cjs/schemas/index.js.map +1 -1
  29. package/dist/cjs/schemas/{banner.schema.js → models/banner.schema.js} +3 -4
  30. package/dist/cjs/schemas/models/banner.schema.js.map +1 -0
  31. package/dist/cjs/schemas/models/facet.schema.js +52 -0
  32. package/dist/cjs/schemas/models/facet.schema.js.map +1 -0
  33. package/dist/cjs/schemas/models/index.js +6 -1
  34. package/dist/cjs/schemas/models/index.js.map +1 -1
  35. package/dist/cjs/schemas/{promoted.schema.js → models/promoted.schema.js} +3 -4
  36. package/dist/cjs/schemas/models/promoted.schema.js.map +1 -0
  37. package/dist/cjs/schemas/{redirection.schema.js → models/redirection.schema.js} +2 -3
  38. package/dist/cjs/schemas/models/redirection.schema.js.map +1 -0
  39. package/dist/cjs/schemas/{related-tag.schema.js → models/related-tag.schema.js} +3 -4
  40. package/dist/cjs/schemas/models/related-tag.schema.js.map +1 -0
  41. package/dist/cjs/schemas/requests/index.js +4 -2
  42. package/dist/cjs/schemas/requests/index.js.map +1 -1
  43. package/dist/cjs/schemas/requests/related-tags-request.schema.js +9 -0
  44. package/dist/cjs/schemas/requests/related-tags-request.schema.js.map +1 -0
  45. package/dist/cjs/schemas/requests/search-request.schema.js +83 -0
  46. package/dist/cjs/schemas/requests/search-request.schema.js.map +1 -0
  47. package/dist/cjs/schemas/responses/index.js +4 -2
  48. package/dist/cjs/schemas/responses/index.js.map +1 -1
  49. package/dist/cjs/schemas/responses/related-tags-response.schema.js +12 -0
  50. package/dist/cjs/schemas/responses/related-tags-response.schema.js.map +1 -0
  51. package/dist/cjs/schemas/responses/search-response.schema.js +36 -0
  52. package/dist/cjs/schemas/responses/search-response.schema.js.map +1 -0
  53. package/dist/cjs/types/index.js +0 -3
  54. package/dist/cjs/types/index.js.map +1 -1
  55. package/dist/cjs/types/{request.types.js → models/banner.model.js} +1 -1
  56. package/dist/cjs/types/models/banner.model.js.map +1 -0
  57. package/dist/cjs/types/{response.types.js → models/facet.model.js} +1 -1
  58. package/dist/cjs/types/models/facet.model.js.map +1 -0
  59. package/dist/cjs/types/models/index.js +6 -1
  60. package/dist/cjs/types/models/index.js.map +1 -1
  61. package/dist/cjs/types/models/promoted.model.js +3 -0
  62. package/dist/cjs/types/models/promoted.model.js.map +1 -0
  63. package/dist/cjs/types/models/redirection.model.js +3 -0
  64. package/dist/cjs/types/models/redirection.model.js.map +1 -0
  65. package/dist/cjs/types/models/related-tag.model.js +3 -0
  66. package/dist/cjs/types/models/related-tag.model.js.map +1 -0
  67. package/dist/cjs/types/platform-adapter.types.js.map +1 -1
  68. package/dist/cjs/types/requests/index.js +3 -1
  69. package/dist/cjs/types/requests/index.js.map +1 -1
  70. package/dist/cjs/types/requests/related-tags-request.model.js +3 -0
  71. package/dist/cjs/types/requests/related-tags-request.model.js.map +1 -0
  72. package/dist/cjs/types/requests/request.types.js.map +1 -1
  73. package/dist/cjs/types/requests/search-request.model.js +3 -0
  74. package/dist/cjs/types/requests/search-request.model.js.map +1 -0
  75. package/dist/cjs/types/responses/index.js +3 -1
  76. package/dist/cjs/types/responses/index.js.map +1 -1
  77. package/dist/cjs/types/responses/related-tags-response.model.js +3 -0
  78. package/dist/cjs/types/responses/related-tags-response.model.js.map +1 -0
  79. package/dist/cjs/types/responses/search-response.model.js +3 -0
  80. package/dist/cjs/types/responses/search-response.model.js.map +1 -0
  81. package/dist/esm/endpoint-adapters/related-tags.endpoint-adapter.js +11 -7
  82. package/dist/esm/endpoint-adapters/related-tags.endpoint-adapter.js.map +1 -1
  83. package/dist/esm/endpoint-adapters/search.endpoint-adapter.js +6 -7
  84. package/dist/esm/endpoint-adapters/search.endpoint-adapter.js.map +1 -1
  85. package/dist/esm/mappers/requests/index.js +2 -2
  86. package/dist/esm/mappers/requests/index.js.map +1 -1
  87. package/dist/esm/mappers/requests/related-tags-request.mapper.js +5 -0
  88. package/dist/esm/mappers/requests/related-tags-request.mapper.js.map +1 -0
  89. package/dist/esm/mappers/requests/search-request.mapper.js +2 -85
  90. package/dist/esm/mappers/requests/search-request.mapper.js.map +1 -1
  91. package/dist/esm/mappers/responses/index.js +3 -3
  92. package/dist/esm/mappers/responses/index.js.map +1 -1
  93. package/dist/esm/mappers/responses/related-tags-response.mapper.js +3 -9
  94. package/dist/esm/mappers/responses/related-tags-response.mapper.js.map +1 -1
  95. package/dist/esm/mappers/responses/search-response.mapper.js +51 -34
  96. package/dist/esm/mappers/responses/search-response.mapper.js.map +1 -1
  97. package/dist/esm/schemas/facets/index.js +3 -0
  98. package/dist/esm/schemas/facets/index.js.map +1 -0
  99. package/dist/esm/schemas/facets/types.js +2 -0
  100. package/dist/esm/schemas/facets/types.js.map +1 -0
  101. package/dist/esm/schemas/facets/utils.js +12 -0
  102. package/dist/esm/schemas/facets/utils.js.map +1 -0
  103. package/dist/esm/schemas/filters/number-filter.schema.js +3 -4
  104. package/dist/esm/schemas/filters/number-filter.schema.js.map +1 -1
  105. package/dist/esm/schemas/filters/simple-filter.schema.js +3 -4
  106. package/dist/esm/schemas/filters/simple-filter.schema.js.map +1 -1
  107. package/dist/esm/schemas/index.js +1 -5
  108. package/dist/esm/schemas/index.js.map +1 -1
  109. package/dist/esm/schemas/{banner.schema.js → models/banner.schema.js} +2 -3
  110. package/dist/esm/schemas/models/banner.schema.js.map +1 -0
  111. package/dist/esm/schemas/models/facet.schema.js +49 -0
  112. package/dist/esm/schemas/models/facet.schema.js.map +1 -0
  113. package/dist/esm/schemas/models/index.js +6 -1
  114. package/dist/esm/schemas/models/index.js.map +1 -1
  115. package/dist/esm/schemas/{promoted.schema.js → models/promoted.schema.js} +2 -3
  116. package/dist/esm/schemas/models/promoted.schema.js.map +1 -0
  117. package/dist/esm/schemas/{redirection.schema.js → models/redirection.schema.js} +2 -3
  118. package/dist/esm/schemas/models/redirection.schema.js.map +1 -0
  119. package/dist/esm/schemas/{related-tag.schema.js → models/related-tag.schema.js} +2 -3
  120. package/dist/esm/schemas/models/related-tag.schema.js.map +1 -0
  121. package/dist/esm/schemas/requests/index.js +4 -2
  122. package/dist/esm/schemas/requests/index.js.map +1 -1
  123. package/dist/esm/schemas/requests/related-tags-request.schema.js +6 -0
  124. package/dist/esm/schemas/requests/related-tags-request.schema.js.map +1 -0
  125. package/dist/esm/schemas/requests/search-request.schema.js +80 -0
  126. package/dist/esm/schemas/requests/search-request.schema.js.map +1 -0
  127. package/dist/esm/schemas/responses/index.js +4 -2
  128. package/dist/esm/schemas/responses/index.js.map +1 -1
  129. package/dist/esm/schemas/responses/related-tags-response.schema.js +9 -0
  130. package/dist/esm/schemas/responses/related-tags-response.schema.js.map +1 -0
  131. package/dist/esm/schemas/responses/search-response.schema.js +33 -0
  132. package/dist/esm/schemas/responses/search-response.schema.js.map +1 -0
  133. package/dist/esm/types/index.js +0 -3
  134. package/dist/esm/types/index.js.map +1 -1
  135. package/dist/esm/types/models/banner.model.js +2 -0
  136. package/dist/esm/types/models/banner.model.js.map +1 -0
  137. package/dist/esm/types/models/facet.model.js +2 -0
  138. package/dist/esm/types/models/facet.model.js.map +1 -0
  139. package/dist/esm/types/models/index.js +6 -1
  140. package/dist/esm/types/models/index.js.map +1 -1
  141. package/dist/esm/types/models/promoted.model.js +2 -0
  142. package/dist/esm/types/models/promoted.model.js.map +1 -0
  143. package/dist/esm/types/models/redirection.model.js +2 -0
  144. package/dist/esm/types/models/redirection.model.js.map +1 -0
  145. package/dist/esm/types/models/related-tag.model.js +2 -0
  146. package/dist/esm/types/models/related-tag.model.js.map +1 -0
  147. package/dist/esm/types/platform-adapter.types.js.map +1 -1
  148. package/dist/esm/types/requests/index.js +3 -1
  149. package/dist/esm/types/requests/index.js.map +1 -1
  150. package/dist/esm/types/requests/related-tags-request.model.js +2 -0
  151. package/dist/esm/types/requests/related-tags-request.model.js.map +1 -0
  152. package/dist/esm/types/requests/request.types.js.map +1 -1
  153. package/dist/esm/types/requests/search-request.model.js +2 -0
  154. package/dist/esm/types/requests/search-request.model.js.map +1 -0
  155. package/dist/esm/types/responses/index.js +3 -1
  156. package/dist/esm/types/responses/index.js.map +1 -1
  157. package/dist/esm/types/responses/related-tags-response.model.js +2 -0
  158. package/dist/esm/types/responses/related-tags-response.model.js.map +1 -0
  159. package/dist/esm/types/responses/search-response.model.js +2 -0
  160. package/dist/esm/types/responses/search-response.model.js.map +1 -0
  161. package/dist/types/endpoint-adapters/related-tags.endpoint-adapter.d.ts +7 -5
  162. package/dist/types/endpoint-adapters/search.endpoint-adapter.d.ts +1 -2
  163. package/dist/types/mappers/requests/index.d.ts +2 -2
  164. package/dist/types/mappers/requests/related-tags-request.mapper.d.ts +3 -0
  165. package/dist/types/mappers/requests/search-request.mapper.d.ts +2 -4
  166. package/dist/types/mappers/responses/index.d.ts +3 -3
  167. package/dist/types/mappers/responses/related-tags-response.mapper.d.ts +2 -4
  168. package/dist/types/mappers/responses/search-response.mapper.d.ts +22 -5
  169. package/dist/types/schemas/facets/index.d.ts +2 -0
  170. package/dist/types/schemas/facets/types.d.ts +15 -0
  171. package/dist/types/schemas/facets/utils.d.ts +8 -0
  172. package/dist/types/schemas/filters/number-filter.schema.d.ts +2 -3
  173. package/dist/types/schemas/filters/simple-filter.schema.d.ts +2 -3
  174. package/dist/types/schemas/index.d.ts +1 -5
  175. package/dist/types/schemas/{banner.schema.d.ts → models/banner.schema.d.ts} +1 -2
  176. package/dist/types/schemas/{facet.schema.d.ts → models/facet.schema.d.ts} +3 -3
  177. package/dist/types/schemas/models/index.d.ts +6 -1
  178. package/dist/types/schemas/{promoted.schema.d.ts → models/promoted.schema.d.ts} +1 -2
  179. package/dist/types/schemas/{redirection.schema.d.ts → models/redirection.schema.d.ts} +1 -1
  180. package/dist/types/schemas/{related-tag.schema.d.ts → models/related-tag.schema.d.ts} +1 -2
  181. package/dist/types/schemas/requests/index.d.ts +4 -2
  182. package/dist/types/schemas/requests/related-tags-request.schema.d.ts +4 -0
  183. package/dist/types/schemas/requests/search-request.schema.d.ts +4 -0
  184. package/dist/types/schemas/responses/index.d.ts +4 -2
  185. package/dist/types/schemas/responses/related-tags-response.schema.d.ts +4 -0
  186. package/dist/types/schemas/responses/search-response.schema.d.ts +4 -0
  187. package/dist/types/types/index.d.ts +0 -3
  188. package/dist/types/types/models/banner.model.d.ts +14 -0
  189. package/dist/types/types/models/facet.model.d.ts +53 -0
  190. package/dist/types/types/models/index.d.ts +6 -1
  191. package/dist/types/types/models/promoted.model.d.ts +14 -0
  192. package/dist/types/types/models/redirection.model.d.ts +12 -0
  193. package/dist/types/types/models/related-tag.model.d.ts +11 -0
  194. package/dist/types/types/platform-adapter.types.d.ts +2 -4
  195. package/dist/types/types/requests/index.d.ts +3 -1
  196. package/dist/types/types/requests/related-tags-request.model.d.ts +8 -0
  197. package/dist/types/types/requests/request.types.d.ts +16 -0
  198. package/dist/types/types/requests/search-request.model.d.ts +8 -0
  199. package/dist/types/types/responses/index.d.ts +3 -1
  200. package/dist/types/types/responses/related-tags-response.model.d.ts +12 -0
  201. package/dist/types/types/responses/search-response.model.d.ts +30 -0
  202. package/package.json +2 -2
  203. package/dist/cjs/mappers/requests/base-request.mapper.js +0 -17
  204. package/dist/cjs/mappers/requests/base-request.mapper.js.map +0 -1
  205. package/dist/cjs/schemas/banner.schema.js.map +0 -1
  206. package/dist/cjs/schemas/facet.schema.js +0 -68
  207. package/dist/cjs/schemas/facet.schema.js.map +0 -1
  208. package/dist/cjs/schemas/promoted.schema.js.map +0 -1
  209. package/dist/cjs/schemas/redirection.schema.js.map +0 -1
  210. package/dist/cjs/schemas/related-tag.schema.js.map +0 -1
  211. package/dist/cjs/types/models.types.js.map +0 -1
  212. package/dist/cjs/types/request.types.js.map +0 -1
  213. package/dist/cjs/types/response.types.js.map +0 -1
  214. package/dist/esm/mappers/requests/base-request.mapper.js +0 -14
  215. package/dist/esm/mappers/requests/base-request.mapper.js.map +0 -1
  216. package/dist/esm/schemas/banner.schema.js.map +0 -1
  217. package/dist/esm/schemas/facet.schema.js +0 -65
  218. package/dist/esm/schemas/facet.schema.js.map +0 -1
  219. package/dist/esm/schemas/promoted.schema.js.map +0 -1
  220. package/dist/esm/schemas/redirection.schema.js.map +0 -1
  221. package/dist/esm/schemas/related-tag.schema.js.map +0 -1
  222. package/dist/esm/types/models.types.js +0 -2
  223. package/dist/esm/types/models.types.js.map +0 -1
  224. package/dist/esm/types/request.types.js +0 -2
  225. package/dist/esm/types/request.types.js.map +0 -1
  226. package/dist/esm/types/response.types.js +0 -2
  227. package/dist/esm/types/response.types.js.map +0 -1
  228. package/dist/types/mappers/requests/base-request.mapper.d.ts +0 -5
  229. package/dist/types/types/models.types.d.ts +0 -56
  230. package/dist/types/types/request.types.d.ts +0 -37
  231. package/dist/types/types/response.types.d.ts +0 -27
@@ -1,13 +1,17 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.relatedTagsEndpointAdapter = exports.relatedTagsEndpointAdapterOptions = void 0;
3
+ exports.relatedTagsEndpointAdapter = void 0;
4
4
  const x_adapter_next_1 = require("@empathyco/x-adapter-next");
5
+ const related_tags_request_mapper_1 = require("../mappers/requests/related-tags-request.mapper");
5
6
  const related_tags_response_mapper_1 = require("../mappers/responses/related-tags-response.mapper");
6
- const base_request_mapper_1 = require("../mappers/requests/base-request.mapper");
7
- exports.relatedTagsEndpointAdapterOptions = {
8
- endpoint: 'https://api.{env(.)}empathy.co/relatedtags/{instance}',
9
- responseMapper: related_tags_response_mapper_1.relatedTagsResponseMapper,
10
- requestMapper: base_request_mapper_1.baseRequestMapper
11
- };
12
- exports.relatedTagsEndpointAdapter = (0, x_adapter_next_1.endpointAdapterFactory)(exports.relatedTagsEndpointAdapterOptions);
7
+ /**
8
+ * This endpoint does not support pagination in the request.
9
+ *
10
+ * @public
11
+ */
12
+ exports.relatedTagsEndpointAdapter = (0, x_adapter_next_1.endpointAdapterFactory)({
13
+ endpoint: 'https://api.{extraParams.env(.)}empathy.co/relatedtags/{extraParams.instance}',
14
+ requestMapper: related_tags_request_mapper_1.relatedTagsRequestMapper,
15
+ responseMapper: related_tags_response_mapper_1.relatedTagsResponseMapper
16
+ });
13
17
  //# sourceMappingURL=related-tags.endpoint-adapter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"related-tags.endpoint-adapter.js","sourceRoot":"","sources":["../../../src/endpoint-adapters/related-tags.endpoint-adapter.ts"],"names":[],"mappings":";;;AAAA,8DAA2F;AAG3F,oGAA8F;AAC9F,iFAA4E;AAE/D,QAAA,iCAAiC,GAG1C;IACF,QAAQ,EAAE,uDAAuD;IACjE,cAAc,EAAE,wDAAyB;IACzC,aAAa,EAAE,uCAAiB;CACjC,CAAC;AAEW,QAAA,0BAA0B,GAAG,IAAA,uCAAsB,EAAC,yCAAiC,CAAC,CAAC","sourcesContent":["import { endpointAdapterFactory, EndpointAdapterOptions } from '@empathyco/x-adapter-next';\nimport { BaseRequest } from '../types/request.types';\nimport { RelatedTagsResponse } from '../types/response.types';\nimport { relatedTagsResponseMapper } from '../mappers/responses/related-tags-response.mapper';\nimport { baseRequestMapper } from '../mappers/requests/base-request.mapper';\n\nexport const relatedTagsEndpointAdapterOptions: EndpointAdapterOptions<\n BaseRequest,\n RelatedTagsResponse\n> = {\n endpoint: 'https://api.{env(.)}empathy.co/relatedtags/{instance}',\n responseMapper: relatedTagsResponseMapper,\n requestMapper: baseRequestMapper\n};\n\nexport const relatedTagsEndpointAdapter = endpointAdapterFactory(relatedTagsEndpointAdapterOptions);\n"]}
1
+ {"version":3,"file":"related-tags.endpoint-adapter.js","sourceRoot":"","sources":["../../../src/endpoint-adapters/related-tags.endpoint-adapter.ts"],"names":[],"mappings":";;;AAAA,8DAAmE;AAEnE,iGAA2F;AAC3F,oGAA8F;AAE9F;;;;GAIG;AACU,QAAA,0BAA0B,GAAG,IAAA,uCAAsB,EAG9D;IACA,QAAQ,EAAE,+EAA+E;IACzF,aAAa,EAAE,sDAAwB;IACvC,cAAc,EAAE,wDAAyB;CAC1C,CAAC,CAAC","sourcesContent":["import { endpointAdapterFactory } from '@empathyco/x-adapter-next';\nimport { RelatedTagsRequest, RelatedTagsResponse } from '@empathyco/x-types';\nimport { relatedTagsRequestMapper } from '../mappers/requests/related-tags-request.mapper';\nimport { relatedTagsResponseMapper } from '../mappers/responses/related-tags-response.mapper';\n\n/**\n * This endpoint does not support pagination in the request.\n *\n * @public\n */\nexport const relatedTagsEndpointAdapter = endpointAdapterFactory<\n RelatedTagsRequest,\n RelatedTagsResponse\n>({\n endpoint: 'https://api.{extraParams.env(.)}empathy.co/relatedtags/{extraParams.instance}',\n requestMapper: relatedTagsRequestMapper,\n responseMapper: relatedTagsResponseMapper\n});\n"]}
@@ -2,12 +2,11 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.searchEndpointAdapter = void 0;
4
4
  const x_adapter_next_1 = require("@empathyco/x-adapter-next");
5
- const search_response_mapper_1 = require("../mappers/responses/search-response.mapper");
6
5
  const search_request_mapper_1 = require("../mappers/requests/search-request.mapper");
7
- const adapterOptions = {
8
- endpoint: 'https://api.{env(.)}empathy.co/search/v1/query/{instance}/search',
9
- responseMapper: search_response_mapper_1.searchResponseMapper,
10
- requestMapper: search_request_mapper_1.searchRequestMapper
11
- };
12
- exports.searchEndpointAdapter = (0, x_adapter_next_1.endpointAdapterFactory)(adapterOptions);
6
+ const search_response_mapper_1 = require("../mappers/responses/search-response.mapper");
7
+ exports.searchEndpointAdapter = (0, x_adapter_next_1.endpointAdapterFactory)({
8
+ endpoint: 'https://api.{extraParams.env(.)}empathy.co/search/v1/query/{extraParams.instance}/search',
9
+ requestMapper: search_request_mapper_1.searchRequestMapper,
10
+ responseMapper: search_response_mapper_1.searchResponseMapper
11
+ });
13
12
  //# sourceMappingURL=search.endpoint-adapter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"search.endpoint-adapter.js","sourceRoot":"","sources":["../../../src/endpoint-adapters/search.endpoint-adapter.ts"],"names":[],"mappings":";;;AAAA,8DAA2F;AAG3F,wFAAmF;AACnF,qFAAgF;AAEhF,MAAM,cAAc,GAA0D;IAC5E,QAAQ,EAAE,kEAAkE;IAC5E,cAAc,EAAE,6CAAoB;IACpC,aAAa,EAAE,2CAAmB;CACnC,CAAC;AAEW,QAAA,qBAAqB,GAAG,IAAA,uCAAsB,EACzD,cAAc,CACf,CAAC","sourcesContent":["import { endpointAdapterFactory, EndpointAdapterOptions } from '@empathyco/x-adapter-next';\nimport { SearchResponse } from '../types/response.types';\nimport { SearchRequest } from '../types/request.types';\nimport { searchResponseMapper } from '../mappers/responses/search-response.mapper';\nimport { searchRequestMapper } from '../mappers/requests/search-request.mapper';\n\nconst adapterOptions: EndpointAdapterOptions<SearchRequest, SearchResponse> = {\n endpoint: 'https://api.{env(.)}empathy.co/search/v1/query/{instance}/search',\n responseMapper: searchResponseMapper,\n requestMapper: searchRequestMapper\n};\n\nexport const searchEndpointAdapter = endpointAdapterFactory<SearchRequest, SearchResponse>(\n adapterOptions\n);\n"]}
1
+ {"version":3,"file":"search.endpoint-adapter.js","sourceRoot":"","sources":["../../../src/endpoint-adapters/search.endpoint-adapter.ts"],"names":[],"mappings":";;;AAAA,8DAAmE;AAEnE,qFAAgF;AAChF,wFAAmF;AAEtE,QAAA,qBAAqB,GAAG,IAAA,uCAAsB,EAAgC;IACzF,QAAQ,EACN,0FAA0F;IAC5F,aAAa,EAAE,2CAAmB;IAClC,cAAc,EAAE,6CAAoB;CACrC,CAAC,CAAC","sourcesContent":["import { endpointAdapterFactory } from '@empathyco/x-adapter-next';\nimport { SearchRequest, SearchResponse } from '@empathyco/x-types';\nimport { searchRequestMapper } from '../mappers/requests/search-request.mapper';\nimport { searchResponseMapper } from '../mappers/responses/search-response.mapper';\n\nexport const searchEndpointAdapter = endpointAdapterFactory<SearchRequest, SearchResponse>({\n endpoint:\n 'https://api.{extraParams.env(.)}empathy.co/search/v1/query/{extraParams.instance}/search',\n requestMapper: searchRequestMapper,\n responseMapper: searchResponseMapper\n});\n"]}
@@ -1,12 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
- tslib_1.__exportStar(require("./base-request.mapper"), exports);
5
4
  tslib_1.__exportStar(require("./identifier-results-request.mapper"), exports);
6
5
  tslib_1.__exportStar(require("./next-queries-request.mapper"), exports);
7
6
  tslib_1.__exportStar(require("./popular-searches-request.mapper"), exports);
8
7
  tslib_1.__exportStar(require("./query-suggestions-request.mapper"), exports);
8
+ tslib_1.__exportStar(require("./recommendations-request.mapper"), exports);
9
+ tslib_1.__exportStar(require("./related-tags-request.mapper"), exports);
9
10
  tslib_1.__exportStar(require("./search-request.mapper"), exports);
10
11
  tslib_1.__exportStar(require("./tagging-request.mapper"), exports);
11
- tslib_1.__exportStar(require("./recommendations-request.mapper"), exports);
12
12
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/mappers/requests/index.ts"],"names":[],"mappings":";;;AAAA,gEAAsC;AACtC,8EAAoD;AACpD,wEAA8C;AAC9C,4EAAkD;AAClD,6EAAmD;AACnD,kEAAwC;AACxC,mEAAyC;AACzC,2EAAiD","sourcesContent":["export * from './base-request.mapper';\nexport * from './identifier-results-request.mapper';\nexport * from './next-queries-request.mapper';\nexport * from './popular-searches-request.mapper';\nexport * from './query-suggestions-request.mapper';\nexport * from './search-request.mapper';\nexport * from './tagging-request.mapper';\nexport * from './recommendations-request.mapper';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/mappers/requests/index.ts"],"names":[],"mappings":";;;AAAA,8EAAoD;AACpD,wEAA8C;AAC9C,4EAAkD;AAClD,6EAAmD;AACnD,2EAAiD;AACjD,wEAA8C;AAC9C,kEAAwC;AACxC,mEAAyC","sourcesContent":["export * from './identifier-results-request.mapper';\nexport * from './next-queries-request.mapper';\nexport * from './popular-searches-request.mapper';\nexport * from './query-suggestions-request.mapper';\nexport * from './recommendations-request.mapper';\nexport * from './related-tags-request.mapper';\nexport * from './search-request.mapper';\nexport * from './tagging-request.mapper';\n"]}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.relatedTagsRequestMapper = void 0;
4
+ const x_adapter_next_1 = require("@empathyco/x-adapter-next");
5
+ // eslint-disable-next-line max-len
6
+ const related_tags_request_schema_1 = require("../../schemas/requests/related-tags-request.schema");
7
+ exports.relatedTagsRequestMapper = (0, x_adapter_next_1.schemaMapperFactory)(related_tags_request_schema_1.relatedTagsRequestMutableSchema);
8
+ //# sourceMappingURL=related-tags-request.mapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"related-tags-request.mapper.js","sourceRoot":"","sources":["../../../../src/mappers/requests/related-tags-request.mapper.ts"],"names":[],"mappings":";;;AAAA,8DAAgE;AAEhE,mCAAmC;AACnC,oGAAqG;AAGxF,QAAA,wBAAwB,GAAG,IAAA,oCAAmB,EAGzD,6DAA+B,CAAC,CAAC","sourcesContent":["import { schemaMapperFactory } from '@empathyco/x-adapter-next';\nimport { RelatedTagsRequest } from '@empathyco/x-types';\n// eslint-disable-next-line max-len\nimport { relatedTagsRequestMutableSchema } from '../../schemas/requests/related-tags-request.schema';\nimport { PlatformRelatedTagsRequest } from '../../types/requests/related-tags-request.model';\n\nexport const relatedTagsRequestMapper = schemaMapperFactory<\n RelatedTagsRequest,\n PlatformRelatedTagsRequest\n>(relatedTagsRequestMutableSchema);\n"]}
@@ -1,90 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.searchRequestMapper = exports.searchRequestMutableSchema = exports.searchRequestSchema = void 0;
3
+ exports.searchRequestMapper = void 0;
4
4
  const x_adapter_next_1 = require("@empathyco/x-adapter-next");
5
- const x_utils_1 = require("@empathyco/x-utils");
6
- const x_types_1 = require("@empathyco/x-types");
7
- exports.searchRequestSchema = {
8
- device: 'device',
9
- query: 'query',
10
- env: 'env',
11
- scope: 'scope',
12
- origin: 'origin',
13
- start: 'start',
14
- rows: 'rows',
15
- lang: 'lang',
16
- sort: 'sort',
17
- filter: mapFilters
18
- };
19
- exports.searchRequestMutableSchema = (0, x_adapter_next_1.createMutableSchema)(exports.searchRequestSchema);
20
- exports.searchRequestMapper = (0, x_adapter_next_1.schemaMapperFactory)(exports.searchRequestMutableSchema);
21
- /**
22
- * Converts the filters to the shape the Platform's API is expecting.
23
- *
24
- * @param filters.filters
25
- * @param filters - The filters from our internal request.
26
- * @example
27
- * ```ts
28
- * const filters = {
29
- * offer: [
30
- * {
31
- * facetId: 'offer',
32
- * modelName: 'SimpleFilter',
33
- * id: 'price:[0 TO 10]',
34
- * selected: true,
35
- * label: 'In Offer'
36
- * } as SimpleFilter
37
- * ],
38
- * categoryPaths: [
39
- * {
40
- * facetId: 'categoryPaths',
41
- * id: 'categoryIds:ffc61e1e9__be257cb26',
42
- * label: 'Fragrance',
43
- * modelName: 'HierarchicalFilter',
44
- * parentId: 'categoryIds:ffc61e1e9',
45
- * selected: true,
46
- * totalResults: 1
47
- * },
48
- * {
49
- * facetId: 'categoryPaths',
50
- * id: 'categoryIds:ffc61e1e9__fa5ef54f2',
51
- * label: 'Fragrance',
52
- * modelName: 'HierarchicalFilter',
53
- * parentId: 'categoryIds:ffc61e1e9',
54
- * selected: true,
55
- * totalResults: 1
56
- * },
57
- * {
58
- * children: ['categoryIds:ffc61e1e9__be257cb26', 'categoryIds:ffc61e1e9__fa5ef54f2'],
59
- * facetId: 'categoryPaths',
60
- * id: 'categoryIds:ffc61e1e9',
61
- * label: 'Personal Care',
62
- * modelName: 'HierarchicalFilter',
63
- * parentId: null,
64
- * selected: true,
65
- * totalResults: 1
66
- * }]
67
- * };
68
- *
69
- * const mappedFilters = mapFilters({ filters });
70
- * // mappedFilters is [
71
- * // 'price:[0 TO 10]',
72
- * // 'categoryIds:ffc61e1e9__be257cb26',
73
- * // 'categoryIds:ffc61e1e9__fa5ef54f2'
74
- * // ];
75
- *
76
- * ```
77
- * @returns The filters ready for the API.
78
- */
79
- function mapFilters({ filters }) {
80
- return (0, x_utils_1.reduce)(filters, (accumulator, _, filters) => {
81
- if (Array.isArray(filters)) {
82
- accumulator.push(...filters
83
- .filter(filter => !(0, x_types_1.isHierarchicalFilter)(filter) ||
84
- !filters.some(f => (0, x_types_1.isHierarchicalFilter)(f) && f.parentId === filter.id))
85
- .map(filter => filter.id.toString()));
86
- }
87
- return accumulator;
88
- }, []);
89
- }
5
+ const search_request_schema_1 = require("../../schemas/requests/search-request.schema");
6
+ exports.searchRequestMapper = (0, x_adapter_next_1.schemaMapperFactory)(search_request_schema_1.searchRequestMutableSchema);
90
7
  //# sourceMappingURL=search-request.mapper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"search-request.mapper.js","sourceRoot":"","sources":["../../../../src/mappers/requests/search-request.mapper.ts"],"names":[],"mappings":";;;AAAA,8DAA6F;AAC7F,gDAA4C;AAC5C,gDAA0D;AAG7C,QAAA,mBAAmB,GAAiD;IAC/E,MAAM,EAAE,QAAQ;IAChB,KAAK,EAAE,OAAO;IACd,GAAG,EAAE,KAAK;IACV,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,QAAQ;IAChB,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,UAAU;CACnB,CAAC;AAEW,QAAA,0BAA0B,GAAG,IAAA,oCAAmB,EAAC,2BAAmB,CAAC,CAAC;AACtE,QAAA,mBAAmB,GAAG,IAAA,oCAAmB,EACpD,kCAA0B,CAC3B,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyDG;AACH,SAAS,UAAU,CAAC,EAAE,OAAO,EAAiB;IAC5C,OAAO,IAAA,gBAAM,EACX,OAAO,EACP,CAAC,WAAW,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE;QAC1B,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YAC1B,WAAW,CAAC,IAAI,CACd,GAAG,OAAO;iBACP,MAAM,CACL,MAAM,CAAC,EAAE,CACP,CAAC,IAAA,8BAAoB,EAAC,MAAM,CAAC;gBAC7B,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAA,8BAAoB,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,EAAE,CAAC,CAC1E;iBACA,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CACvC,CAAC;SACH;QACD,OAAO,WAAW,CAAC;IACrB,CAAC,EACD,EAAc,CACf,CAAC;AACJ,CAAC","sourcesContent":["import { createMutableSchema, Schema, schemaMapperFactory } from '@empathyco/x-adapter-next';\nimport { reduce } from '@empathyco/x-utils';\nimport { isHierarchicalFilter } from '@empathyco/x-types';\nimport { PlatformSearchRequest, SearchRequest } from '../../types/request.types';\n\nexport const searchRequestSchema: Schema<SearchRequest, PlatformSearchRequest> = {\n device: 'device',\n query: 'query',\n env: 'env',\n scope: 'scope',\n origin: 'origin',\n start: 'start',\n rows: 'rows',\n lang: 'lang',\n sort: 'sort',\n filter: mapFilters\n};\n\nexport const searchRequestMutableSchema = createMutableSchema(searchRequestSchema);\nexport const searchRequestMapper = schemaMapperFactory<SearchRequest, PlatformSearchRequest>(\n searchRequestMutableSchema\n);\n\n/**\n * Converts the filters to the shape the Platform's API is expecting.\n *\n * @param filters.filters\n * @param filters - The filters from our internal request.\n * @example\n * ```ts\n * const filters = {\n * offer: [\n * {\n * facetId: 'offer',\n * modelName: 'SimpleFilter',\n * id: 'price:[0 TO 10]',\n * selected: true,\n * label: 'In Offer'\n * } as SimpleFilter\n * ],\n * categoryPaths: [\n * {\n * facetId: 'categoryPaths',\n * id: 'categoryIds:ffc61e1e9__be257cb26',\n * label: 'Fragrance',\n * modelName: 'HierarchicalFilter',\n * parentId: 'categoryIds:ffc61e1e9',\n * selected: true,\n * totalResults: 1\n * },\n * {\n * facetId: 'categoryPaths',\n * id: 'categoryIds:ffc61e1e9__fa5ef54f2',\n * label: 'Fragrance',\n * modelName: 'HierarchicalFilter',\n * parentId: 'categoryIds:ffc61e1e9',\n * selected: true,\n * totalResults: 1\n * },\n * {\n * children: ['categoryIds:ffc61e1e9__be257cb26', 'categoryIds:ffc61e1e9__fa5ef54f2'],\n * facetId: 'categoryPaths',\n * id: 'categoryIds:ffc61e1e9',\n * label: 'Personal Care',\n * modelName: 'HierarchicalFilter',\n * parentId: null,\n * selected: true,\n * totalResults: 1\n * }]\n * };\n *\n * const mappedFilters = mapFilters({ filters });\n * // mappedFilters is [\n * // 'price:[0 TO 10]',\n * // 'categoryIds:ffc61e1e9__be257cb26',\n * // 'categoryIds:ffc61e1e9__fa5ef54f2'\n * // ];\n *\n * ```\n * @returns The filters ready for the API.\n */\nfunction mapFilters({ filters }: SearchRequest): string[] {\n return reduce(\n filters,\n (accumulator, _, filters) => {\n if (Array.isArray(filters)) {\n accumulator.push(\n ...filters\n .filter(\n filter =>\n !isHierarchicalFilter(filter) ||\n !filters.some(f => isHierarchicalFilter(f) && f.parentId === filter.id)\n )\n .map(filter => filter.id.toString())\n );\n }\n return accumulator;\n },\n [] as string[]\n );\n}\n"]}
1
+ {"version":3,"file":"search-request.mapper.js","sourceRoot":"","sources":["../../../../src/mappers/requests/search-request.mapper.ts"],"names":[],"mappings":";;;AAAA,8DAAgE;AAEhE,wFAA0F;AAG7E,QAAA,mBAAmB,GAAG,IAAA,oCAAmB,EACpD,kDAA0B,CAC3B,CAAC","sourcesContent":["import { schemaMapperFactory } from '@empathyco/x-adapter-next';\nimport { SearchRequest } from '@empathyco/x-types';\nimport { searchRequestMutableSchema } from '../../schemas/requests/search-request.schema';\nimport { PlatformSearchRequest } from '../../types/requests/search-request.model';\n\nexport const searchRequestMapper = schemaMapperFactory<SearchRequest, PlatformSearchRequest>(\n searchRequestMutableSchema\n);\n"]}
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
- tslib_1.__exportStar(require("./search-response.mapper"), exports);
5
- tslib_1.__exportStar(require("./query-suggestions-response.mapper"), exports);
6
4
  tslib_1.__exportStar(require("./identifier-results-response.mapper"), exports);
7
- tslib_1.__exportStar(require("./popular-searches-response.mapper"), exports);
8
5
  tslib_1.__exportStar(require("./next-queries-response.mapper"), exports);
6
+ tslib_1.__exportStar(require("./query-suggestions-response.mapper"), exports);
7
+ tslib_1.__exportStar(require("./popular-searches-response.mapper"), exports);
9
8
  tslib_1.__exportStar(require("./recommendations-response.mapper"), exports);
10
9
  tslib_1.__exportStar(require("./related-tags-response.mapper"), exports);
10
+ tslib_1.__exportStar(require("./search-response.mapper"), exports);
11
11
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/mappers/responses/index.ts"],"names":[],"mappings":";;;AAAA,mEAAyC;AACzC,8EAAoD;AACpD,+EAAqD;AACrD,6EAAmD;AACnD,yEAA+C;AAC/C,4EAAkD;AAClD,yEAA+C","sourcesContent":["export * from './search-response.mapper';\nexport * from './query-suggestions-response.mapper';\nexport * from './identifier-results-response.mapper';\nexport * from './popular-searches-response.mapper';\nexport * from './next-queries-response.mapper';\nexport * from './recommendations-response.mapper';\nexport * from './related-tags-response.mapper';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/mappers/responses/index.ts"],"names":[],"mappings":";;;AAAA,+EAAqD;AACrD,yEAA+C;AAC/C,8EAAoD;AACpD,6EAAmD;AACnD,4EAAkD;AAClD,yEAA+C;AAC/C,mEAAyC","sourcesContent":["export * from './identifier-results-response.mapper';\nexport * from './next-queries-response.mapper';\nexport * from './query-suggestions-response.mapper';\nexport * from './popular-searches-response.mapper';\nexport * from './recommendations-response.mapper';\nexport * from './related-tags-response.mapper';\nexport * from './search-response.mapper';\n"]}
@@ -1,14 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.relatedTagsResponseMapper = exports.relatedTagsResponseMutableSchema = exports.relatedTagsResponseSchema = void 0;
3
+ exports.relatedTagsResponseMapper = void 0;
4
4
  const x_adapter_next_1 = require("@empathyco/x-adapter-next");
5
- const related_tag_schema_1 = require("../../schemas/related-tag.schema");
6
- exports.relatedTagsResponseSchema = {
7
- relatedTags: {
8
- $path: 'data.relatedtags',
9
- $subSchema: related_tag_schema_1.relatedTagMutableSchema
10
- }
11
- };
12
- exports.relatedTagsResponseMutableSchema = (0, x_adapter_next_1.createMutableSchema)(exports.relatedTagsResponseSchema);
13
- exports.relatedTagsResponseMapper = (0, x_adapter_next_1.schemaMapperFactory)(exports.relatedTagsResponseMutableSchema);
5
+ // eslint-disable-next-line max-len
6
+ const related_tags_response_schema_1 = require("../../schemas/responses/related-tags-response.schema");
7
+ exports.relatedTagsResponseMapper = (0, x_adapter_next_1.schemaMapperFactory)(related_tags_response_schema_1.relatedTagsResponseMutableSchema);
14
8
  //# sourceMappingURL=related-tags-response.mapper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"related-tags-response.mapper.js","sourceRoot":"","sources":["../../../../src/mappers/responses/related-tags-response.mapper.ts"],"names":[],"mappings":";;;AAAA,8DAA6F;AAE7F,yEAA2E;AAE9D,QAAA,yBAAyB,GAA6D;IACjG,WAAW,EAAE;QACX,KAAK,EAAE,kBAAkB;QACzB,UAAU,EAAE,4CAAuB;KACpC;CACF,CAAC;AAEW,QAAA,gCAAgC,GAAG,IAAA,oCAAmB,EAAC,iCAAyB,CAAC,CAAC;AAElF,QAAA,yBAAyB,GAAG,IAAA,oCAAmB,EAG1D,wCAAgC,CAAC,CAAC","sourcesContent":["import { createMutableSchema, Schema, schemaMapperFactory } from '@empathyco/x-adapter-next';\nimport { PlatformRelatedTagsResponse, RelatedTagsResponse } from '../../types/response.types';\nimport { relatedTagMutableSchema } from '../../schemas/related-tag.schema';\n\nexport const relatedTagsResponseSchema: Schema<PlatformRelatedTagsResponse, RelatedTagsResponse> = {\n relatedTags: {\n $path: 'data.relatedtags',\n $subSchema: relatedTagMutableSchema\n }\n};\n\nexport const relatedTagsResponseMutableSchema = createMutableSchema(relatedTagsResponseSchema);\n\nexport const relatedTagsResponseMapper = schemaMapperFactory<\n PlatformRelatedTagsResponse,\n RelatedTagsResponse\n>(relatedTagsResponseMutableSchema);\n"]}
1
+ {"version":3,"file":"related-tags-response.mapper.js","sourceRoot":"","sources":["../../../../src/mappers/responses/related-tags-response.mapper.ts"],"names":[],"mappings":";;;AAAA,8DAAgE;AAEhE,mCAAmC;AACnC,uGAAwG;AAG3F,QAAA,yBAAyB,GAAG,IAAA,oCAAmB,EAG1D,+DAAgC,CAAC,CAAC","sourcesContent":["import { schemaMapperFactory } from '@empathyco/x-adapter-next';\nimport { RelatedTagsResponse } from '@empathyco/x-types';\n// eslint-disable-next-line max-len\nimport { relatedTagsResponseMutableSchema } from '../../schemas/responses/related-tags-response.schema';\nimport { PlatformRelatedTagsResponse } from '../../types/responses/related-tags-response.model';\n\nexport const relatedTagsResponseMapper = schemaMapperFactory<\n PlatformRelatedTagsResponse,\n RelatedTagsResponse\n>(relatedTagsResponseMutableSchema);\n"]}
@@ -1,38 +1,56 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.searchResponseMapper = exports.mutableSearchResponseSchema = exports.searchResponseSchema = void 0;
3
+ exports.searchResponseFacetsMapper = exports.searchResponseMapper = void 0;
4
4
  const x_adapter_next_1 = require("@empathyco/x-adapter-next");
5
- const x_utils_1 = require("@empathyco/x-utils");
6
- const result_schema_1 = require("../../schemas/models/result.schema");
7
- const facet_schema_1 = require("../../schemas/facet.schema");
8
- const promoted_schema_1 = require("../../schemas/promoted.schema");
9
- const banner_schema_1 = require("../../schemas/banner.schema");
10
- const redirection_schema_1 = require("../../schemas/redirection.schema");
11
- exports.searchResponseSchema = {
12
- results: {
13
- $path: 'catalog.content',
14
- $subSchema: result_schema_1.resultSchema
15
- },
16
- facets: {
17
- $path: 'catalog.facets',
18
- $subSchema: facet_schema_1.facetMutableSchema
19
- },
20
- totalResults: 'catalog.numFound',
21
- spellcheck: 'catalog.spellchecked',
22
- banners: {
23
- $path: 'banner.content',
24
- $subSchema: banner_schema_1.bannerMutableSchema
25
- },
26
- promoted: {
27
- $path: 'promoted.content',
28
- $subSchema: promoted_schema_1.promotedMutableSchema
29
- },
30
- redirections: {
31
- $path: 'direct.content',
32
- $subSchema: redirection_schema_1.redirectionMutableSchema
33
- },
34
- queryTagging: ({ catalog }) => { var _a; return (0, x_utils_1.getTaggingInfoFromUrl)((_a = catalog === null || catalog === void 0 ? void 0 : catalog.tagging) === null || _a === void 0 ? void 0 : _a.query); }
35
- };
36
- exports.mutableSearchResponseSchema = (0, x_adapter_next_1.createMutableSchema)(exports.searchResponseSchema);
37
- exports.searchResponseMapper = (0, x_adapter_next_1.schemaMapperFactory)(exports.mutableSearchResponseSchema);
5
+ const search_response_schema_1 = require("../../schemas/responses/search-response.schema");
6
+ exports.searchResponseMapper = (0, x_adapter_next_1.combineMappers)((0, x_adapter_next_1.schemaMapperFactory)(search_response_schema_1.searchResponseMutableSchema), searchResponseFacetsMapper);
7
+ /**
8
+ * Mapper to flatten hierarchical facet filters.
9
+ *
10
+ * @param from - The Platform search response.
11
+ * @param context - The context from the mapper.
12
+ * @returns The mapped facets.
13
+ */
14
+ function searchResponseFacetsMapper(from, { mappedValue }) {
15
+ var _a;
16
+ const facets = (_a = mappedValue.facets) === null || _a === void 0 ? void 0 : _a.map(facet => facet.modelName === 'HierarchicalFacet'
17
+ ? flattenHierarchicalFacet(facet)
18
+ : facet);
19
+ return { facets };
20
+ }
21
+ exports.searchResponseFacetsMapper = searchResponseFacetsMapper;
22
+ /**
23
+ * Returns a hierarchical facet with its filters flattened.
24
+ *
25
+ * @param facet - The hierarchical facet.
26
+ * @returns The flattened hierarchical facet.
27
+ */
28
+ function flattenHierarchicalFacet(facet) {
29
+ const filters = facet.filters.reduce((flattenedFilters, filter) => {
30
+ return mapHierarchicalFilter(filter, flattenedFilters);
31
+ }, []);
32
+ return {
33
+ ...facet,
34
+ filters
35
+ };
36
+ }
37
+ /**
38
+ * Map recursively the hierarchical facet filters.
39
+ *
40
+ * @param rawFilter - The hierarchical filter to map.
41
+ * @param filters - The filters array to fill with the facet filters.
42
+ * @returns The filter id.
43
+ */
44
+ function mapHierarchicalFilter(rawFilter, filters) {
45
+ var _a;
46
+ const filter = {
47
+ ...rawFilter,
48
+ children: (_a = rawFilter.children) === null || _a === void 0 ? void 0 : _a.map(rawFilterChild => {
49
+ mapHierarchicalFilter(rawFilterChild, filters);
50
+ return rawFilterChild.id;
51
+ })
52
+ };
53
+ filters.push(filter);
54
+ return filters;
55
+ }
38
56
  //# sourceMappingURL=search-response.mapper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"search-response.mapper.js","sourceRoot":"","sources":["../../../../src/mappers/responses/search-response.mapper.ts"],"names":[],"mappings":";;;AAAA,8DAA6F;AAC7F,gDAA2D;AAE3D,sEAAkE;AAClE,6DAAgE;AAChE,mEAAsE;AACtE,+DAAkE;AAClE,yEAA4E;AAE/D,QAAA,oBAAoB,GAAmD;IAClF,OAAO,EAAE;QACP,KAAK,EAAE,iBAAiB;QACxB,UAAU,EAAE,4BAAY;KACzB;IACD,MAAM,EAAE;QACN,KAAK,EAAE,gBAAgB;QACvB,UAAU,EAAE,iCAAkB;KAC/B;IACD,YAAY,EAAE,kBAAkB;IAChC,UAAU,EAAE,sBAAsB;IAClC,OAAO,EAAE;QACP,KAAK,EAAE,gBAAgB;QACvB,UAAU,EAAE,mCAAmB;KAChC;IACD,QAAQ,EAAE;QACR,KAAK,EAAE,kBAAkB;QACzB,UAAU,EAAE,uCAAqB;KAClC;IACD,YAAY,EAAE;QACZ,KAAK,EAAE,gBAAgB;QACvB,UAAU,EAAE,6CAAwB;KACrC;IACD,YAAY,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,WAAC,OAAA,IAAA,+BAAqB,EAAC,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,0CAAE,KAAK,CAAC,CAAA,EAAA;CAC9E,CAAC;AAEW,QAAA,2BAA2B,GAAG,IAAA,oCAAmB,EAAC,4BAAoB,CAAC,CAAC;AAExE,QAAA,oBAAoB,GAAG,IAAA,oCAAmB,EACrD,mCAA2B,CAC5B,CAAC","sourcesContent":["import { createMutableSchema, Schema, schemaMapperFactory } from '@empathyco/x-adapter-next';\nimport { getTaggingInfoFromUrl } from '@empathyco/x-utils';\nimport { PlatformSearchResponse, SearchResponse } from '../../types/response.types';\nimport { resultSchema } from '../../schemas/models/result.schema';\nimport { facetMutableSchema } from '../../schemas/facet.schema';\nimport { promotedMutableSchema } from '../../schemas/promoted.schema';\nimport { bannerMutableSchema } from '../../schemas/banner.schema';\nimport { redirectionMutableSchema } from '../../schemas/redirection.schema';\n\nexport const searchResponseSchema: Schema<PlatformSearchResponse, SearchResponse> = {\n results: {\n $path: 'catalog.content',\n $subSchema: resultSchema\n },\n facets: {\n $path: 'catalog.facets',\n $subSchema: facetMutableSchema\n },\n totalResults: 'catalog.numFound',\n spellcheck: 'catalog.spellchecked',\n banners: {\n $path: 'banner.content',\n $subSchema: bannerMutableSchema\n },\n promoted: {\n $path: 'promoted.content',\n $subSchema: promotedMutableSchema\n },\n redirections: {\n $path: 'direct.content',\n $subSchema: redirectionMutableSchema\n },\n queryTagging: ({ catalog }) => getTaggingInfoFromUrl(catalog?.tagging?.query)\n};\n\nexport const mutableSearchResponseSchema = createMutableSchema(searchResponseSchema);\n\nexport const searchResponseMapper = schemaMapperFactory<PlatformSearchResponse, SearchResponse>(\n mutableSearchResponseSchema\n);\n"]}
1
+ {"version":3,"file":"search-response.mapper.js","sourceRoot":"","sources":["../../../../src/mappers/responses/search-response.mapper.ts"],"names":[],"mappings":";;;AAAA,8DAA+F;AAG/F,2FAA6F;AAMhF,QAAA,oBAAoB,GAAG,IAAA,+BAAc,EAChD,IAAA,oCAAmB,EAAyC,oDAA2B,CAAC,EACxF,0BAA0B,CAC3B,CAAC;AAEF;;;;;;GAMG;AACH,SAAgB,0BAA0B,CACxC,IAA4B,EAC5B,EAAE,WAAW,EAAiB;;IAE9B,MAAM,MAAM,GAAG,MAAC,WAA8B,CAAC,MAAM,0CAAE,GAAG,CAAC,KAAK,CAAC,EAAE,CACjE,KAAK,CAAC,SAAS,KAAK,mBAAmB;QACrC,CAAC,CAAC,wBAAwB,CAAC,KAAiC,CAAC;QAC7D,CAAC,CAAC,KAAK,CACV,CAAC;IACF,OAAO,EAAE,MAAM,EAAE,CAAC;AACpB,CAAC;AAVD,gEAUC;AAED;;;;;GAKG;AACH,SAAS,wBAAwB,CAAC,KAA+B;IAC/D,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,gBAAgB,EAAE,MAAM,EAAE,EAAE;QAChE,OAAO,qBAAqB,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IACzD,CAAC,EAAE,EAA0B,CAAC,CAAC;IAE/B,OAAO;QACL,GAAG,KAAK;QACR,OAAO;KACR,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,SAAS,qBAAqB,CAC5B,SAAoC,EACpC,OAA6B;;IAE7B,MAAM,MAAM,GAAuB;QACjC,GAAG,SAAS;QACZ,QAAQ,EAAE,MAAA,SAAS,CAAC,QAAQ,0CAAE,GAAG,CAAC,cAAc,CAAC,EAAE;YACjD,qBAAqB,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;YAC/C,OAAO,cAAc,CAAC,EAAE,CAAC;QAC3B,CAAC,CAAC;KACH,CAAC;IACF,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACrB,OAAO,OAAO,CAAC;AACjB,CAAC","sourcesContent":["import { schemaMapperFactory, combineMappers, MapperContext } from '@empathyco/x-adapter-next';\nimport { SearchResponse, HierarchicalFacet, HierarchicalFilter } from '@empathyco/x-types';\nimport { PlatformSearchResponse } from '../../types/responses/search-response.model';\nimport { searchResponseMutableSchema } from '../../schemas/responses/search-response.schema';\nimport {\n AdapterHierarchicalFacet,\n AdapterHierarchicalFilter\n} from '../../types/models/facet.model';\n\nexport const searchResponseMapper = combineMappers(\n schemaMapperFactory<PlatformSearchResponse, SearchResponse>(searchResponseMutableSchema),\n searchResponseFacetsMapper\n);\n\n/**\n * Mapper to flatten hierarchical facet filters.\n *\n * @param from - The Platform search response.\n * @param context - The context from the mapper.\n * @returns The mapped facets.\n */\nexport function searchResponseFacetsMapper(\n from: PlatformSearchResponse,\n { mappedValue }: MapperContext\n): Partial<SearchResponse> {\n const facets = (mappedValue as SearchResponse).facets?.map(facet =>\n facet.modelName === 'HierarchicalFacet'\n ? flattenHierarchicalFacet(facet as AdapterHierarchicalFacet)\n : facet\n );\n return { facets };\n}\n\n/**\n * Returns a hierarchical facet with its filters flattened.\n *\n * @param facet - The hierarchical facet.\n * @returns The flattened hierarchical facet.\n */\nfunction flattenHierarchicalFacet(facet: AdapterHierarchicalFacet): HierarchicalFacet {\n const filters = facet.filters.reduce((flattenedFilters, filter) => {\n return mapHierarchicalFilter(filter, flattenedFilters);\n }, [] as HierarchicalFilter[]);\n\n return {\n ...facet,\n filters\n };\n}\n\n/**\n * Map recursively the hierarchical facet filters.\n *\n * @param rawFilter - The hierarchical filter to map.\n * @param filters - The filters array to fill with the facet filters.\n * @returns The filter id.\n */\nfunction mapHierarchicalFilter(\n rawFilter: AdapterHierarchicalFilter,\n filters: HierarchicalFilter[]\n): HierarchicalFilter[] {\n const filter: HierarchicalFilter = {\n ...rawFilter,\n children: rawFilter.children?.map(rawFilterChild => {\n mapHierarchicalFilter(rawFilterChild, filters);\n return rawFilterChild.id;\n })\n };\n filters.push(filter);\n return filters;\n}\n"]}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./types"), exports);
5
+ tslib_1.__exportStar(require("./utils"), exports);
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/schemas/facets/index.ts"],"names":[],"mappings":";;;AAAA,kDAAwB;AACxB,kDAAwB","sourcesContent":["export * from './types';\nexport * from './utils';\n"]}
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=models.types.js.map
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/schemas/facets/types.ts"],"names":[],"mappings":"","sourcesContent":["import { FacetModelName, Facet } from '@empathyco/x-types';\nimport { Schema } from '@empathyco/x-adapter-next';\n\n/**\n * Facet configuration containing the model name and the schema.\n */\nexport interface FacetConfig {\n modelName: FacetModelName;\n schema: Schema;\n}\n\n/**\n * Dictionary grouping facets configurations.\n */\nexport interface FacetsConfig {\n [key: Facet['id']]: FacetConfig;\n}\n"]}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getFacetConfig = void 0;
4
+ const facet_schema_1 = require("../models/facet.schema");
5
+ /**
6
+ * Returns the facet's config.
7
+ *
8
+ * @param facet - The facet to resolve the configuration.
9
+ * @returns The facet's config.
10
+ */
11
+ function getFacetConfig(facet) {
12
+ var _a;
13
+ return (_a = facet_schema_1.facetsConfig[facet]) !== null && _a !== void 0 ? _a : facet_schema_1.facetsConfig.default;
14
+ }
15
+ exports.getFacetConfig = getFacetConfig;
16
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/schemas/facets/utils.ts"],"names":[],"mappings":";;;AAAA,yDAAsD;AAGtD;;;;;GAKG;AACH,SAAgB,cAAc,CAAC,KAAa;;IAC1C,OAAO,MAAA,2BAAY,CAAC,KAAK,CAAC,mCAAI,2BAAY,CAAC,OAAO,CAAC;AACrD,CAAC;AAFD,wCAEC","sourcesContent":["import { facetsConfig } from '../models/facet.schema';\nimport { FacetConfig } from './types';\n\n/**\n * Returns the facet's config.\n *\n * @param facet - The facet to resolve the configuration.\n * @returns The facet's config.\n */\nexport function getFacetConfig(facet: string): FacetConfig {\n return facetsConfig[facet] ?? facetsConfig.default;\n}\n"]}
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.numberFilterMutableSchema = exports.numberFilterSchema = void 0;
3
+ exports.numberFilterMutableSchema = void 0;
4
4
  const x_adapter_next_1 = require("@empathyco/x-adapter-next");
5
- exports.numberFilterSchema = {
5
+ exports.numberFilterMutableSchema = (0, x_adapter_next_1.createMutableSchema)({
6
6
  id: 'filter',
7
- facetId: 'id',
7
+ facetId: (_, $context) => $context === null || $context === void 0 ? void 0 : $context.facetId,
8
8
  label: 'value',
9
9
  totalResults: 'count',
10
10
  selected: () => false,
@@ -13,6 +13,5 @@ exports.numberFilterSchema = {
13
13
  min: ({ value }) => Number(value.split('-')[0]),
14
14
  max: ({ value }) => Number(value.split('-')[1])
15
15
  }
16
- };
17
- exports.numberFilterMutableSchema = (0, x_adapter_next_1.createMutableSchema)(exports.numberFilterSchema);
16
+ });
18
17
  //# sourceMappingURL=number-filter.schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"number-filter.schema.js","sourceRoot":"","sources":["../../../../src/schemas/filters/number-filter.schema.ts"],"names":[],"mappings":";;;AAAA,8DAAwE;AAI3D,QAAA,kBAAkB,GAAmD;IAChF,EAAE,EAAE,QAAQ;IACZ,OAAO,EAAE,IAAI;IACb,KAAK,EAAE,OAAO;IACd,YAAY,EAAE,OAAO;IACrB,QAAQ,EAAE,GAAG,EAAE,CAAC,KAAK;IACrB,SAAS,EAAE,GAAG,EAAE,CAAC,mBAAmB;IACpC,KAAK,EAAE;QACL,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/C,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;KAChD;CACF,CAAC;AAEW,QAAA,yBAAyB,GAAG,IAAA,oCAAmB,EAAC,0BAAkB,CAAC,CAAC","sourcesContent":["import { createMutableSchema, Schema } from '@empathyco/x-adapter-next';\nimport { NumberRangeFilter } from '@empathyco/x-types';\nimport { PlatformFacetFilter } from '../../types';\n\nexport const numberFilterSchema: Schema<PlatformFacetFilter, NumberRangeFilter> = {\n id: 'filter',\n facetId: 'id',\n label: 'value',\n totalResults: 'count',\n selected: () => false,\n modelName: () => 'NumberRangeFilter',\n range: {\n min: ({ value }) => Number(value.split('-')[0]),\n max: ({ value }) => Number(value.split('-')[1])\n }\n};\n\nexport const numberFilterMutableSchema = createMutableSchema(numberFilterSchema);\n"]}
1
+ {"version":3,"file":"number-filter.schema.js","sourceRoot":"","sources":["../../../../src/schemas/filters/number-filter.schema.ts"],"names":[],"mappings":";;;AAAA,8DAAwE;AAI3D,QAAA,yBAAyB,GAAG,IAAA,oCAAmB,EAE1D;IACA,EAAE,EAAE,QAAQ;IACZ,OAAO,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAiB;IACrD,KAAK,EAAE,OAAO;IACd,YAAY,EAAE,OAAO;IACrB,QAAQ,EAAE,GAAG,EAAE,CAAC,KAAK;IACrB,SAAS,EAAE,GAAG,EAAE,CAAC,mBAAmB;IACpC,KAAK,EAAE;QACL,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/C,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;KAChD;CACF,CAAC,CAAC","sourcesContent":["import { createMutableSchema, Schema } from '@empathyco/x-adapter-next';\nimport { NumberRangeFilter } from '@empathyco/x-types';\nimport { PlatformFilter } from '../../types/models/facet.model';\n\nexport const numberFilterMutableSchema = createMutableSchema<\n Schema<PlatformFilter, NumberRangeFilter>\n>({\n id: 'filter',\n facetId: (_, $context) => $context?.facetId as string,\n label: 'value',\n totalResults: 'count',\n selected: () => false,\n modelName: () => 'NumberRangeFilter',\n range: {\n min: ({ value }) => Number(value.split('-')[0]),\n max: ({ value }) => Number(value.split('-')[1])\n }\n});\n"]}
@@ -1,14 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.simpleMutableFilterSchema = exports.simpleFilterSchema = void 0;
3
+ exports.simpleFilterMutableSchema = void 0;
4
4
  const x_adapter_next_1 = require("@empathyco/x-adapter-next");
5
- exports.simpleFilterSchema = {
6
- facetId: 'filter',
5
+ exports.simpleFilterMutableSchema = (0, x_adapter_next_1.createMutableSchema)({
6
+ facetId: (_, $context) => $context === null || $context === void 0 ? void 0 : $context.facetId,
7
7
  label: 'value',
8
8
  id: 'filter',
9
9
  totalResults: 'count',
10
10
  selected: () => false,
11
11
  modelName: () => 'SimpleFilter'
12
- };
13
- exports.simpleMutableFilterSchema = (0, x_adapter_next_1.createMutableSchema)(exports.simpleFilterSchema);
12
+ });
14
13
  //# sourceMappingURL=simple-filter.schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"simple-filter.schema.js","sourceRoot":"","sources":["../../../../src/schemas/filters/simple-filter.schema.ts"],"names":[],"mappings":";;;AAAA,8DAAwE;AAI3D,QAAA,kBAAkB,GAA8C;IAC3E,OAAO,EAAE,QAAQ;IACjB,KAAK,EAAE,OAAO;IACd,EAAE,EAAE,QAAQ;IACZ,YAAY,EAAE,OAAO;IACrB,QAAQ,EAAE,GAAG,EAAE,CAAC,KAAK;IACrB,SAAS,EAAE,GAAG,EAAE,CAAC,cAAc;CAChC,CAAC;AAEW,QAAA,yBAAyB,GAAG,IAAA,oCAAmB,EAAC,0BAAkB,CAAC,CAAC","sourcesContent":["import { createMutableSchema, Schema } from '@empathyco/x-adapter-next';\nimport { SimpleFilter } from '@empathyco/x-types';\nimport { PlatformFacetFilter } from '../../types';\n\nexport const simpleFilterSchema: Schema<PlatformFacetFilter, SimpleFilter> = {\n facetId: 'filter',\n label: 'value',\n id: 'filter',\n totalResults: 'count',\n selected: () => false,\n modelName: () => 'SimpleFilter'\n};\n\nexport const simpleMutableFilterSchema = createMutableSchema(simpleFilterSchema);\n"]}
1
+ {"version":3,"file":"simple-filter.schema.js","sourceRoot":"","sources":["../../../../src/schemas/filters/simple-filter.schema.ts"],"names":[],"mappings":";;;AAAA,8DAAwE;AAI3D,QAAA,yBAAyB,GAAG,IAAA,oCAAmB,EAAuC;IACjG,OAAO,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAiB;IACrD,KAAK,EAAE,OAAO;IACd,EAAE,EAAE,QAAQ;IACZ,YAAY,EAAE,OAAO;IACrB,QAAQ,EAAE,GAAG,EAAE,CAAC,KAAK;IACrB,SAAS,EAAE,GAAG,EAAE,CAAC,cAAc;CAChC,CAAC,CAAC","sourcesContent":["import { createMutableSchema, Schema } from '@empathyco/x-adapter-next';\nimport { SimpleFilter } from '@empathyco/x-types';\nimport { PlatformFilter } from '../../types/models/facet.model';\n\nexport const simpleFilterMutableSchema = createMutableSchema<Schema<PlatformFilter, SimpleFilter>>({\n facetId: (_, $context) => $context?.facetId as string,\n label: 'value',\n id: 'filter',\n totalResults: 'count',\n selected: () => false,\n modelName: () => 'SimpleFilter'\n});\n"]}
@@ -1,13 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./facets"), exports);
4
5
  tslib_1.__exportStar(require("./filters"), exports);
5
6
  tslib_1.__exportStar(require("./models"), exports);
6
7
  tslib_1.__exportStar(require("./requests"), exports);
7
8
  tslib_1.__exportStar(require("./responses"), exports);
8
- tslib_1.__exportStar(require("./banner.schema"), exports);
9
- tslib_1.__exportStar(require("./facet.schema"), exports);
10
- tslib_1.__exportStar(require("./promoted.schema"), exports);
11
- tslib_1.__exportStar(require("./redirection.schema"), exports);
12
- tslib_1.__exportStar(require("./related-tag.schema"), exports);
13
9
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/schemas/index.ts"],"names":[],"mappings":";;;AAAA,oDAA0B;AAC1B,mDAAyB;AACzB,qDAA2B;AAC3B,sDAA4B;AAC5B,0DAAgC;AAChC,yDAA+B;AAC/B,4DAAkC;AAClC,+DAAqC;AACrC,+DAAqC","sourcesContent":["export * from './filters';\nexport * from './models';\nexport * from './requests';\nexport * from './responses';\nexport * from './banner.schema';\nexport * from './facet.schema';\nexport * from './promoted.schema';\nexport * from './redirection.schema';\nexport * from './related-tag.schema';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/schemas/index.ts"],"names":[],"mappings":";;;AAAA,mDAAyB;AACzB,oDAA0B;AAC1B,mDAAyB;AACzB,qDAA2B;AAC3B,sDAA4B","sourcesContent":["export * from './facets';\nexport * from './filters';\nexport * from './models';\nexport * from './requests';\nexport * from './responses';\n"]}
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.bannerMutableSchema = exports.bannerSchema = void 0;
3
+ exports.bannerMutableSchema = void 0;
4
4
  const x_adapter_next_1 = require("@empathyco/x-adapter-next");
5
5
  const x_utils_1 = require("@empathyco/x-utils");
6
- exports.bannerSchema = {
6
+ exports.bannerMutableSchema = (0, x_adapter_next_1.createMutableSchema)({
7
7
  id: 'id',
8
8
  title: 'title',
9
9
  url: 'url',
@@ -12,6 +12,5 @@ exports.bannerSchema = {
12
12
  tagging: {
13
13
  query: ({ tagging }) => { var _a; return (0, x_utils_1.getTaggingInfoFromUrl)((_a = tagging === null || tagging === void 0 ? void 0 : tagging.query) !== null && _a !== void 0 ? _a : ''); }
14
14
  }
15
- };
16
- exports.bannerMutableSchema = (0, x_adapter_next_1.createMutableSchema)(exports.bannerSchema);
15
+ });
17
16
  //# sourceMappingURL=banner.schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"banner.schema.js","sourceRoot":"","sources":["../../../../src/schemas/models/banner.schema.ts"],"names":[],"mappings":";;;AAAA,8DAAwE;AAExE,gDAA2D;AAG9C,QAAA,mBAAmB,GAAG,IAAA,oCAAmB,EAAiC;IACrF,EAAE,EAAE,IAAI;IACR,KAAK,EAAE,OAAO;IACd,GAAG,EAAE,KAAK;IACV,KAAK,EAAE,WAAW;IAClB,SAAS,EAAE,GAAG,EAAE,CAAC,QAAQ;IACzB,OAAO,EAAE;QACP,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,WAAC,OAAA,IAAA,+BAAqB,EAAC,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,KAAK,mCAAI,EAAE,CAAC,CAAA,EAAA;KACpE;CACF,CAAC,CAAC","sourcesContent":["import { createMutableSchema, Schema } from '@empathyco/x-adapter-next';\nimport { Banner } from '@empathyco/x-types';\nimport { getTaggingInfoFromUrl } from '@empathyco/x-utils';\nimport { PlatformBanner } from '../../types/models/banner.model';\n\nexport const bannerMutableSchema = createMutableSchema<Schema<PlatformBanner, Banner>>({\n id: 'id',\n title: 'title',\n url: 'url',\n image: 'image_url',\n modelName: () => 'Banner',\n tagging: {\n query: ({ tagging }) => getTaggingInfoFromUrl(tagging?.query ?? '')\n }\n});\n"]}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.facetsConfig = exports.hierarchicalFilterMutableSchema = exports.facetMutableSchema = void 0;
4
+ const x_adapter_next_1 = require("@empathyco/x-adapter-next");
5
+ const number_filter_schema_1 = require("../filters/number-filter.schema");
6
+ const simple_filter_schema_1 = require("../filters/simple-filter.schema");
7
+ const utils_1 = require("../facets/utils");
8
+ exports.facetMutableSchema = (0, x_adapter_next_1.createMutableSchema)({
9
+ id: 'facet',
10
+ label: 'facet',
11
+ modelName: source => {
12
+ return (0, utils_1.getFacetConfig)(source.facet).modelName;
13
+ },
14
+ filters: {
15
+ $path: 'values',
16
+ $subSchema: ({ facet }) => (0, utils_1.getFacetConfig)(facet).schema,
17
+ $context: {
18
+ facetId: 'facet'
19
+ }
20
+ }
21
+ });
22
+ exports.hierarchicalFilterMutableSchema = (0, x_adapter_next_1.createMutableSchema)({
23
+ facetId: (_, $context) => $context === null || $context === void 0 ? void 0 : $context.facetId,
24
+ label: 'value',
25
+ id: 'filter',
26
+ totalResults: 'count',
27
+ parentId: (_, $context) => { var _a; return (_a = $context === null || $context === void 0 ? void 0 : $context.parentId) !== null && _a !== void 0 ? _a : null; },
28
+ selected: () => false,
29
+ modelName: () => 'HierarchicalFilter',
30
+ children: {
31
+ $path: 'children.values',
32
+ $subSchema: '$self',
33
+ $context: {
34
+ parentId: 'filter'
35
+ }
36
+ }
37
+ });
38
+ exports.facetsConfig = {
39
+ categoryPaths: {
40
+ modelName: 'HierarchicalFacet',
41
+ schema: exports.hierarchicalFilterMutableSchema
42
+ },
43
+ price: {
44
+ modelName: 'NumberRangeFacet',
45
+ schema: number_filter_schema_1.numberFilterMutableSchema
46
+ },
47
+ default: {
48
+ modelName: 'SimpleFacet',
49
+ schema: simple_filter_schema_1.simpleFilterMutableSchema
50
+ }
51
+ };
52
+ //# sourceMappingURL=facet.schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"facet.schema.js","sourceRoot":"","sources":["../../../../src/schemas/models/facet.schema.ts"],"names":[],"mappings":";;;AAAA,8DAAwE;AAQxE,0EAA4E;AAC5E,0EAA4E;AAE5E,2CAAiD;AAGpC,QAAA,kBAAkB,GAAG,IAAA,oCAAmB,EAKnD;IACA,EAAE,EAAE,OAAO;IACX,KAAK,EAAE,OAAO;IACd,SAAS,EAAE,MAAM,CAAC,EAAE;QAClB,OAAO,IAAA,sBAAc,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,SAAgB,CAAC;IACvD,CAAC;IACD,OAAO,EAAE;QACP,KAAK,EAAE,QAAQ;QACf,UAAU,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,IAAA,sBAAc,EAAC,KAAK,CAAC,CAAC,MAAa;QAC9D,QAAQ,EAAE;YACR,OAAO,EAAE,OAAO;SACjB;KACF;CACF,CAAC,CAAC;AAEU,QAAA,+BAA+B,GAAG,IAAA,oCAAmB,EAEhE;IACA,OAAO,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAiB;IACrD,KAAK,EAAE,OAAO;IACd,EAAE,EAAE,QAAQ;IACZ,YAAY,EAAE,OAAO;IACrB,QAAQ,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,WAAC,OAAA,MAAC,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,QAAmB,mCAAI,IAAI,CAAA,EAAA;IACjE,QAAQ,EAAE,GAAG,EAAE,CAAC,KAAK;IACrB,SAAS,EAAE,GAAG,EAAE,CAAC,oBAAoB;IACrC,QAAQ,EAAE;QACR,KAAK,EAAE,iBAAiB;QACxB,UAAU,EAAE,OAAO;QACnB,QAAQ,EAAE;YACR,QAAQ,EAAE,QAAQ;SACnB;KACF;CACF,CAAC,CAAC;AAEU,QAAA,YAAY,GAAiB;IACxC,aAAa,EAAE;QACb,SAAS,EAAE,mBAAmB;QAC9B,MAAM,EAAE,uCAA+B;KACxC;IACD,KAAK,EAAE;QACL,SAAS,EAAE,kBAAkB;QAC7B,MAAM,EAAE,gDAAyB;KAClC;IACD,OAAO,EAAE;QACP,SAAS,EAAE,aAAa;QACxB,MAAM,EAAE,gDAAyB;KAClC;CACF,CAAC","sourcesContent":["import { createMutableSchema, Schema } from '@empathyco/x-adapter-next';\nimport {\n EditableNumberRangeFacet,\n HierarchicalFacet,\n HierarchicalFilter,\n NumberRangeFacet,\n SimpleFacet\n} from '@empathyco/x-types';\nimport { numberFilterMutableSchema } from '../filters/number-filter.schema';\nimport { simpleFilterMutableSchema } from '../filters/simple-filter.schema';\nimport { PlatformFacet, PlatformHierarchicalFilter } from '../../types/models/facet.model';\nimport { getFacetConfig } from '../facets/utils';\nimport { FacetsConfig } from '../facets/types';\n\nexport const facetMutableSchema = createMutableSchema<\n Schema<\n PlatformFacet,\n HierarchicalFacet | NumberRangeFacet | SimpleFacet | EditableNumberRangeFacet\n >\n>({\n id: 'facet',\n label: 'facet',\n modelName: source => {\n return getFacetConfig(source.facet).modelName as any;\n },\n filters: {\n $path: 'values',\n $subSchema: ({ facet }) => getFacetConfig(facet).schema as any,\n $context: {\n facetId: 'facet'\n }\n }\n});\n\nexport const hierarchicalFilterMutableSchema = createMutableSchema<\n Schema<PlatformHierarchicalFilter, HierarchicalFilter>\n>({\n facetId: (_, $context) => $context?.facetId as string,\n label: 'value',\n id: 'filter',\n totalResults: 'count',\n parentId: (_, $context) => ($context?.parentId as string) ?? null,\n selected: () => false,\n modelName: () => 'HierarchicalFilter',\n children: {\n $path: 'children.values',\n $subSchema: '$self',\n $context: {\n parentId: 'filter'\n }\n }\n});\n\nexport const facetsConfig: FacetsConfig = {\n categoryPaths: {\n modelName: 'HierarchicalFacet',\n schema: hierarchicalFilterMutableSchema\n },\n price: {\n modelName: 'NumberRangeFacet',\n schema: numberFilterMutableSchema\n },\n default: {\n modelName: 'SimpleFacet',\n schema: simpleFilterMutableSchema\n }\n};\n"]}