@coveo/headless 3.27.8-pre.5f8a67af1e → 3.27.8-pre.63fc406dfa

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 (206) hide show
  1. package/dist/cjs/case-assist/headless.cjs +1 -1
  2. package/dist/cjs/commerce/headless.cjs +1 -1
  3. package/dist/cjs/headless.cjs +1 -1
  4. package/dist/cjs/insight/headless.cjs +1 -1
  5. package/dist/cjs/recommendation/headless.cjs +1 -1
  6. package/dist/cjs/ssr/headless.cjs +1 -1
  7. package/dist/cjs/ssr-commerce/headless.cjs +1 -1
  8. package/dist/definitions/features/commerce/product-listing/product-listing-selectors.d.ts +2 -2
  9. package/dist/definitions/features/commerce/search/search-selectors.d.ts +2 -2
  10. package/dist/esm/utils/version.js +1 -1
  11. package/dist/quantic/case-assist/headless.js +1 -1
  12. package/dist/quantic/commerce/headless.js +1 -1
  13. package/dist/quantic/headless.js +1 -1
  14. package/dist/quantic/insight/headless.js +1 -1
  15. package/dist/quantic/recommendation/headless.js +1 -1
  16. package/package.json +1 -13
  17. package/dist/cjs/ssr-commerce-next/headless.cjs +0 -19530
  18. package/dist/cjs/ssr-commerce-next/node.cjs.stats.json +0 -1
  19. package/dist/cjs/ssr-next/headless.cjs +0 -22437
  20. package/dist/cjs/ssr-next/node.cjs.stats.json +0 -1
  21. package/dist/definitions/ssr-commerce-next.index.d.ts +0 -170
  22. package/dist/definitions/ssr-next/commerce/controller-utils.d.ts +0 -19
  23. package/dist/definitions/ssr-next/commerce/controllers/breadcrumb-manager/headless-core-breadcrumb-manager.ssr.d.ts +0 -10
  24. package/dist/definitions/ssr-next/commerce/controllers/cart/headless-cart.ssr.d.ts +0 -15
  25. package/dist/definitions/ssr-next/commerce/controllers/context/headless-context.ssr.d.ts +0 -12
  26. package/dist/definitions/ssr-next/commerce/controllers/did-you-mean/headless-did-you-mean.ssr.d.ts +0 -10
  27. package/dist/definitions/ssr-next/commerce/controllers/filter-suggestions/headless-filter-suggestions-generator.ssr.d.ts +0 -15
  28. package/dist/definitions/ssr-next/commerce/controllers/generator/headless-commerce-facet-generator.ssr.d.ts +0 -66
  29. package/dist/definitions/ssr-next/commerce/controllers/instant-products/headless-instant-products.ssr.d.ts +0 -12
  30. package/dist/definitions/ssr-next/commerce/controllers/pagination/headless-core-commerce-pagination.ssr.d.ts +0 -11
  31. package/dist/definitions/ssr-next/commerce/controllers/parameter-manager/headless-core-parameter-manager.ssr.d.ts +0 -25
  32. package/dist/definitions/ssr-next/commerce/controllers/product-list/headless-product-list.ssr.d.ts +0 -12
  33. package/dist/definitions/ssr-next/commerce/controllers/product-view/headless-product-view.ssr.d.ts +0 -20
  34. package/dist/definitions/ssr-next/commerce/controllers/recent-queries-list/headless-recent-queries-list.ssr.d.ts +0 -13
  35. package/dist/definitions/ssr-next/commerce/controllers/recommendations/headless-recommendations.ssr.d.ts +0 -17
  36. package/dist/definitions/ssr-next/commerce/controllers/search-box/headless-search-box.ssr.d.ts +0 -12
  37. package/dist/definitions/ssr-next/commerce/controllers/sort/headless-core-commerce-sort.ssr.d.ts +0 -11
  38. package/dist/definitions/ssr-next/commerce/controllers/standalone-search-box/headless-standalone-search-box.ssr.d.ts +0 -14
  39. package/dist/definitions/ssr-next/commerce/controllers/summary/headless-core-summary.ssr.d.ts +0 -13
  40. package/dist/definitions/ssr-next/commerce/controllers/triggers/headless-notify-trigger.ssr.d.ts +0 -12
  41. package/dist/definitions/ssr-next/commerce/controllers/triggers/headless-query-trigger.ssr.d.ts +0 -13
  42. package/dist/definitions/ssr-next/commerce/controllers/triggers/headless-redirection-trigger.ssr.d.ts +0 -12
  43. package/dist/definitions/ssr-next/commerce/engine/commerce-engine.ssr.d.ts +0 -25
  44. package/dist/definitions/ssr-next/commerce/factories/build-factory.d.ts +0 -22
  45. package/dist/definitions/ssr-next/commerce/factories/hydrated-state-factory.d.ts +0 -4
  46. package/dist/definitions/ssr-next/commerce/factories/recommendation-hydrated-state-factory.d.ts +0 -3
  47. package/dist/definitions/ssr-next/commerce/factories/recommendation-static-state-factory.d.ts +0 -3
  48. package/dist/definitions/ssr-next/commerce/factories/static-state-factory.d.ts +0 -4
  49. package/dist/definitions/ssr-next/commerce/types/build.d.ts +0 -10
  50. package/dist/definitions/ssr-next/commerce/types/controller-constants.d.ts +0 -7
  51. package/dist/definitions/ssr-next/commerce/types/controller-definitions.d.ts +0 -220
  52. package/dist/definitions/ssr-next/commerce/types/controller-inference.d.ts +0 -24
  53. package/dist/definitions/ssr-next/commerce/types/controller-scopes.d.ts +0 -71
  54. package/dist/definitions/ssr-next/commerce/types/engine.d.ts +0 -75
  55. package/dist/definitions/ssr-next/commerce/types/fetch-static-state.d.ts +0 -17
  56. package/dist/definitions/ssr-next/commerce/types/from-build-result.d.ts +0 -19
  57. package/dist/definitions/ssr-next/commerce/types/hydrate-static-state.d.ts +0 -20
  58. package/dist/definitions/ssr-next/commerce/types/kind.d.ts +0 -9
  59. package/dist/definitions/ssr-next/commerce/utils/recommendation-filter.d.ts +0 -11
  60. package/dist/definitions/ssr-next/common/augment-preprocess-request.d.ts +0 -9
  61. package/dist/definitions/ssr-next/common/controller-utils.d.ts +0 -16
  62. package/dist/definitions/ssr-next/common/errors.d.ts +0 -9
  63. package/dist/definitions/ssr-next/common/types/build.d.ts +0 -9
  64. package/dist/definitions/ssr-next/common/types/controllers.d.ts +0 -37
  65. package/dist/definitions/ssr-next/common/types/engine.d.ts +0 -60
  66. package/dist/definitions/ssr-next/common/types/fetch-static-state.d.ts +0 -17
  67. package/dist/definitions/ssr-next/common/types/from-build-result.d.ts +0 -8
  68. package/dist/definitions/ssr-next/common/types/hydrate-static-state.d.ts +0 -21
  69. package/dist/definitions/ssr-next/common/types/inference.d.ts +0 -19
  70. package/dist/definitions/ssr-next/common/types/utilities.d.ts +0 -14
  71. package/dist/definitions/ssr-next/search/controllers/breadcrumb-manager/headless-breadcrumb-manager.ssr.d.ts +0 -13
  72. package/dist/definitions/ssr-next/search/controllers/context/headless-context.ssr.d.ts +0 -14
  73. package/dist/definitions/ssr-next/search/controllers/dictionary-field-context/headless-dictionary-field-context.ssr.d.ts +0 -13
  74. package/dist/definitions/ssr-next/search/controllers/did-you-mean/headless-did-you-mean.ssr.d.ts +0 -13
  75. package/dist/definitions/ssr-next/search/controllers/facet-manager/headless-facet-manager.ssr.d.ts +0 -13
  76. package/dist/definitions/ssr-next/search/controllers/facets/automatic-facet-generator/headless-automatic-facet-generator.ssr.d.ts +0 -14
  77. package/dist/definitions/ssr-next/search/controllers/facets/category-facet/headless-category-facet.ssr.d.ts +0 -14
  78. package/dist/definitions/ssr-next/search/controllers/facets/facet/headless-facet.ssr.d.ts +0 -14
  79. package/dist/definitions/ssr-next/search/controllers/facets/range-facet/date-facet/headless-date-facet.ssr.d.ts +0 -15
  80. package/dist/definitions/ssr-next/search/controllers/facets/range-facet/date-facet/headless-date-filter.ssr.d.ts +0 -14
  81. package/dist/definitions/ssr-next/search/controllers/facets/range-facet/numeric-facet/headless-numeric-facet.ssr.d.ts +0 -15
  82. package/dist/definitions/ssr-next/search/controllers/facets/range-facet/numeric-facet/headless-numeric-filter.ssr.d.ts +0 -14
  83. package/dist/definitions/ssr-next/search/controllers/field-suggestions/category-facet/headless-category-field-suggestions.ssr.d.ts +0 -14
  84. package/dist/definitions/ssr-next/search/controllers/field-suggestions/facet/headless-field-suggestions.ssr.d.ts +0 -14
  85. package/dist/definitions/ssr-next/search/controllers/folded-result-list/headless-folded-result-list.ssr.d.ts +0 -14
  86. package/dist/definitions/ssr-next/search/controllers/history-manager/headless-history-manager.ssr.d.ts +0 -13
  87. package/dist/definitions/ssr-next/search/controllers/instant-results/instant-results.ssr.d.ts +0 -14
  88. package/dist/definitions/ssr-next/search/controllers/pager/headless-pager.ssr.d.ts +0 -14
  89. package/dist/definitions/ssr-next/search/controllers/query-error/headless-query-error.ssr.d.ts +0 -13
  90. package/dist/definitions/ssr-next/search/controllers/query-summary/headless-query-summary.ssr.d.ts +0 -13
  91. package/dist/definitions/ssr-next/search/controllers/quickview/headless-quickview.ssr.d.ts +0 -14
  92. package/dist/definitions/ssr-next/search/controllers/recent-queries-list/headless-recent-queries-list.ssr.d.ts +0 -14
  93. package/dist/definitions/ssr-next/search/controllers/recent-results-list/headless-recent-results-list.ssr.d.ts +0 -14
  94. package/dist/definitions/ssr-next/search/controllers/relevance-inspector/headless-relevance-inspector.ssr.d.ts +0 -14
  95. package/dist/definitions/ssr-next/search/controllers/result-list/headless-result-list.ssr.d.ts +0 -14
  96. package/dist/definitions/ssr-next/search/controllers/results-per-page/headless-results-per-page.ssr.d.ts +0 -14
  97. package/dist/definitions/ssr-next/search/controllers/search-box/headless-search-box.ssr.d.ts +0 -14
  98. package/dist/definitions/ssr-next/search/controllers/search-parameter-manager/headless-search-parameter-manager.ssr.d.ts +0 -16
  99. package/dist/definitions/ssr-next/search/controllers/search-status/headless-search-status.ssr.d.ts +0 -13
  100. package/dist/definitions/ssr-next/search/controllers/smart-snippet/headless-smart-snippet.ssr.d.ts +0 -14
  101. package/dist/definitions/ssr-next/search/controllers/smart-snippet-questions-list/headless-smart-snippet-questions-list.ssr.d.ts +0 -15
  102. package/dist/definitions/ssr-next/search/controllers/sort/headless-sort.ssr.d.ts +0 -14
  103. package/dist/definitions/ssr-next/search/controllers/standalone-search-box/headless-standalone-search-box.ssr.d.ts +0 -14
  104. package/dist/definitions/ssr-next/search/controllers/static-filter/headless-static-filter.ssr.d.ts +0 -15
  105. package/dist/definitions/ssr-next/search/controllers/tab/headless-tab.ssr.d.ts +0 -14
  106. package/dist/definitions/ssr-next/search/controllers/tab-manager/headless-tab-manager.ssr.d.ts +0 -13
  107. package/dist/definitions/ssr-next/search/controllers/triggers/headless-execute-trigger.ssr.d.ts +0 -13
  108. package/dist/definitions/ssr-next/search/controllers/triggers/headless-notify-trigger.ssr.d.ts +0 -13
  109. package/dist/definitions/ssr-next/search/controllers/triggers/headless-query-trigger.ssr.d.ts +0 -14
  110. package/dist/definitions/ssr-next/search/controllers/triggers/headless-redirection-trigger.ssr.d.ts +0 -13
  111. package/dist/definitions/ssr-next/search/controllers/url-manager/headless-url-manager.ssr.d.ts +0 -16
  112. package/dist/definitions/ssr-next/search/engine/search-engine.ssr.d.ts +0 -35
  113. package/dist/definitions/ssr-next.index.d.ts +0 -219
  114. package/dist/esm/ssr-commerce-next.index.js +0 -130
  115. package/dist/esm/ssr-next/commerce/controller-utils.js +0 -42
  116. package/dist/esm/ssr-next/commerce/controllers/breadcrumb-manager/headless-core-breadcrumb-manager.ssr.js +0 -21
  117. package/dist/esm/ssr-next/commerce/controllers/cart/headless-cart.ssr.js +0 -24
  118. package/dist/esm/ssr-next/commerce/controllers/context/headless-context.ssr.js +0 -24
  119. package/dist/esm/ssr-next/commerce/controllers/did-you-mean/headless-did-you-mean.ssr.js +0 -13
  120. package/dist/esm/ssr-next/commerce/controllers/filter-suggestions/headless-filter-suggestions-generator.ssr.js +0 -15
  121. package/dist/esm/ssr-next/commerce/controllers/generator/headless-commerce-facet-generator.ssr.js +0 -93
  122. package/dist/esm/ssr-next/commerce/controllers/instant-products/headless-instant-products.ssr.js +0 -15
  123. package/dist/esm/ssr-next/commerce/controllers/pagination/headless-core-commerce-pagination.ssr.js +0 -22
  124. package/dist/esm/ssr-next/commerce/controllers/parameter-manager/headless-core-parameter-manager.ssr.js +0 -70
  125. package/dist/esm/ssr-next/commerce/controllers/product-list/headless-product-list.ssr.js +0 -21
  126. package/dist/esm/ssr-next/commerce/controllers/product-view/headless-product-view.ssr.js +0 -29
  127. package/dist/esm/ssr-next/commerce/controllers/recent-queries-list/headless-recent-queries-list.ssr.js +0 -16
  128. package/dist/esm/ssr-next/commerce/controllers/recommendations/headless-recommendations.ssr.js +0 -25
  129. package/dist/esm/ssr-next/commerce/controllers/search-box/headless-search-box.ssr.js +0 -13
  130. package/dist/esm/ssr-next/commerce/controllers/sort/headless-core-commerce-sort.ssr.js +0 -22
  131. package/dist/esm/ssr-next/commerce/controllers/standalone-search-box/headless-standalone-search-box.ssr.js +0 -15
  132. package/dist/esm/ssr-next/commerce/controllers/summary/headless-core-summary.ssr.js +0 -21
  133. package/dist/esm/ssr-next/commerce/controllers/triggers/headless-notify-trigger.ssr.js +0 -14
  134. package/dist/esm/ssr-next/commerce/controllers/triggers/headless-query-trigger.ssr.js +0 -13
  135. package/dist/esm/ssr-next/commerce/controllers/triggers/headless-redirection-trigger.ssr.js +0 -13
  136. package/dist/esm/ssr-next/commerce/engine/commerce-engine.ssr.js +0 -68
  137. package/dist/esm/ssr-next/commerce/factories/build-factory.js +0 -90
  138. package/dist/esm/ssr-next/commerce/factories/hydrated-state-factory.js +0 -23
  139. package/dist/esm/ssr-next/commerce/factories/recommendation-hydrated-state-factory.js +0 -23
  140. package/dist/esm/ssr-next/commerce/factories/recommendation-static-state-factory.js +0 -36
  141. package/dist/esm/ssr-next/commerce/factories/static-state-factory.js +0 -41
  142. package/dist/esm/ssr-next/commerce/types/build.js +0 -1
  143. package/dist/esm/ssr-next/commerce/types/controller-constants.js +0 -9
  144. package/dist/esm/ssr-next/commerce/types/controller-definitions.js +0 -1
  145. package/dist/esm/ssr-next/commerce/types/controller-inference.js +0 -1
  146. package/dist/esm/ssr-next/commerce/types/controller-scopes.js +0 -1
  147. package/dist/esm/ssr-next/commerce/types/engine.js +0 -1
  148. package/dist/esm/ssr-next/commerce/types/fetch-static-state.js +0 -1
  149. package/dist/esm/ssr-next/commerce/types/from-build-result.js +0 -1
  150. package/dist/esm/ssr-next/commerce/types/hydrate-static-state.js +0 -1
  151. package/dist/esm/ssr-next/commerce/types/kind.js +0 -14
  152. package/dist/esm/ssr-next/commerce/utils/recommendation-filter.js +0 -49
  153. package/dist/esm/ssr-next/common/augment-preprocess-request.js +0 -23
  154. package/dist/esm/ssr-next/common/controller-utils.js +0 -29
  155. package/dist/esm/ssr-next/common/errors.js +0 -25
  156. package/dist/esm/ssr-next/common/types/build.js +0 -1
  157. package/dist/esm/ssr-next/common/types/controllers.js +0 -1
  158. package/dist/esm/ssr-next/common/types/engine.js +0 -1
  159. package/dist/esm/ssr-next/common/types/fetch-static-state.js +0 -1
  160. package/dist/esm/ssr-next/common/types/from-build-result.js +0 -1
  161. package/dist/esm/ssr-next/common/types/hydrate-static-state.js +0 -1
  162. package/dist/esm/ssr-next/common/types/inference.js +0 -1
  163. package/dist/esm/ssr-next/common/types/utilities.js +0 -1
  164. package/dist/esm/ssr-next/search/controllers/breadcrumb-manager/headless-breadcrumb-manager.ssr.js +0 -13
  165. package/dist/esm/ssr-next/search/controllers/context/headless-context.ssr.js +0 -19
  166. package/dist/esm/ssr-next/search/controllers/dictionary-field-context/headless-dictionary-field-context.ssr.js +0 -13
  167. package/dist/esm/ssr-next/search/controllers/did-you-mean/headless-did-you-mean.ssr.js +0 -13
  168. package/dist/esm/ssr-next/search/controllers/facet-manager/headless-facet-manager.ssr.js +0 -13
  169. package/dist/esm/ssr-next/search/controllers/facets/automatic-facet-generator/headless-automatic-facet-generator.ssr.js +0 -14
  170. package/dist/esm/ssr-next/search/controllers/facets/category-facet/headless-category-facet.ssr.js +0 -14
  171. package/dist/esm/ssr-next/search/controllers/facets/facet/headless-facet.ssr.js +0 -14
  172. package/dist/esm/ssr-next/search/controllers/facets/range-facet/date-facet/headless-date-facet.ssr.js +0 -15
  173. package/dist/esm/ssr-next/search/controllers/facets/range-facet/date-facet/headless-date-filter.ssr.js +0 -14
  174. package/dist/esm/ssr-next/search/controllers/facets/range-facet/numeric-facet/headless-numeric-facet.ssr.js +0 -15
  175. package/dist/esm/ssr-next/search/controllers/facets/range-facet/numeric-facet/headless-numeric-filter.ssr.js +0 -14
  176. package/dist/esm/ssr-next/search/controllers/field-suggestions/category-facet/headless-category-field-suggestions.ssr.js +0 -14
  177. package/dist/esm/ssr-next/search/controllers/field-suggestions/facet/headless-field-suggestions.ssr.js +0 -14
  178. package/dist/esm/ssr-next/search/controllers/folded-result-list/headless-folded-result-list.ssr.js +0 -14
  179. package/dist/esm/ssr-next/search/controllers/history-manager/headless-history-manager.ssr.js +0 -13
  180. package/dist/esm/ssr-next/search/controllers/instant-results/instant-results.ssr.js +0 -14
  181. package/dist/esm/ssr-next/search/controllers/pager/headless-pager.ssr.js +0 -14
  182. package/dist/esm/ssr-next/search/controllers/query-error/headless-query-error.ssr.js +0 -13
  183. package/dist/esm/ssr-next/search/controllers/query-summary/headless-query-summary.ssr.js +0 -13
  184. package/dist/esm/ssr-next/search/controllers/quickview/headless-quickview.ssr.js +0 -14
  185. package/dist/esm/ssr-next/search/controllers/recent-queries-list/headless-recent-queries-list.ssr.js +0 -14
  186. package/dist/esm/ssr-next/search/controllers/recent-results-list/headless-recent-results-list.ssr.js +0 -14
  187. package/dist/esm/ssr-next/search/controllers/relevance-inspector/headless-relevance-inspector.ssr.js +0 -14
  188. package/dist/esm/ssr-next/search/controllers/result-list/headless-result-list.ssr.js +0 -14
  189. package/dist/esm/ssr-next/search/controllers/results-per-page/headless-results-per-page.ssr.js +0 -14
  190. package/dist/esm/ssr-next/search/controllers/search-box/headless-search-box.ssr.js +0 -14
  191. package/dist/esm/ssr-next/search/controllers/search-parameter-manager/headless-search-parameter-manager.ssr.js +0 -58
  192. package/dist/esm/ssr-next/search/controllers/search-status/headless-search-status.ssr.js +0 -13
  193. package/dist/esm/ssr-next/search/controllers/smart-snippet/headless-smart-snippet.ssr.js +0 -14
  194. package/dist/esm/ssr-next/search/controllers/smart-snippet-questions-list/headless-smart-snippet-questions-list.ssr.js +0 -14
  195. package/dist/esm/ssr-next/search/controllers/sort/headless-sort.ssr.js +0 -14
  196. package/dist/esm/ssr-next/search/controllers/standalone-search-box/headless-standalone-search-box.ssr.js +0 -14
  197. package/dist/esm/ssr-next/search/controllers/static-filter/headless-static-filter.ssr.js +0 -15
  198. package/dist/esm/ssr-next/search/controllers/tab/headless-tab.ssr.js +0 -14
  199. package/dist/esm/ssr-next/search/controllers/tab-manager/headless-tab-manager.ssr.js +0 -13
  200. package/dist/esm/ssr-next/search/controllers/triggers/headless-execute-trigger.ssr.js +0 -13
  201. package/dist/esm/ssr-next/search/controllers/triggers/headless-notify-trigger.ssr.js +0 -12
  202. package/dist/esm/ssr-next/search/controllers/triggers/headless-query-trigger.ssr.js +0 -13
  203. package/dist/esm/ssr-next/search/controllers/triggers/headless-redirection-trigger.ssr.js +0 -12
  204. package/dist/esm/ssr-next/search/controllers/url-manager/headless-url-manager.ssr.js +0 -16
  205. package/dist/esm/ssr-next/search/engine/search-engine.ssr.js +0 -105
  206. package/dist/esm/ssr-next.index.js +0 -146
@@ -1,42 +0,0 @@
1
- import { clone, filterObject, mapObject } from '../../utils/utils.js';
2
- import { InvalidControllerDefinition } from '../common/errors.js';
3
- function hasKindProperty(controller) {
4
- return '_kind' in controller;
5
- }
6
- export function createStaticState({ searchActions, controllers, }) {
7
- return {
8
- controllers: mapObject(controllers, (controller) => ({
9
- state: clone(controller.state),
10
- ...(hasKindProperty(controller) && { _kind: controller._kind }),
11
- })),
12
- searchActions: searchActions.map((action) => clone(action)),
13
- };
14
- }
15
- function buildControllerFromDefinition({ definition, engine, solutionType, props, }) {
16
- return ('build' in definition
17
- ? definition.build(engine, solutionType)
18
- : definition.buildWithProps(engine, props, solutionType));
19
- }
20
- export function buildControllerDefinitions({ definitionsMap, engine, solutionType, propsMap, }) {
21
- const controllerMap = mapObject(definitionsMap, (definition, key) => {
22
- const unavailableInSolutionType = () => !(solutionType in definition) ||
23
- (solutionType in definition &&
24
- definition[solutionType] === false);
25
- const props = propsMap?.[key];
26
- if (unavailableInSolutionType()) {
27
- return null;
28
- }
29
- return buildControllerFromDefinition({
30
- definition,
31
- engine,
32
- solutionType,
33
- props,
34
- });
35
- });
36
- return filterObject(controllerMap, (value) => value !== null);
37
- }
38
- export function ensureAtLeastOneSolutionType(options) {
39
- if (options?.listing === false && options?.search === false) {
40
- throw new InvalidControllerDefinition();
41
- }
42
- }
@@ -1,21 +0,0 @@
1
- import { buildProductListing } from '../../../../controllers/commerce/product-listing/headless-product-listing.js';
2
- import { buildSearch } from '../../../../controllers/commerce/search/headless-search.js';
3
- import { ensureAtLeastOneSolutionType } from '../../../../ssr/commerce/controller-utils.js';
4
- import { SolutionType } from '../../types/controller-constants.js';
5
- /**
6
- * Defines a `BreadcrumbManager` controller instance.
7
- * @group Definers
8
- *
9
- * @returns The `BreadcrumbManager` controller definition.
10
- */
11
- export function defineBreadcrumbManager(options) {
12
- ensureAtLeastOneSolutionType(options);
13
- return {
14
- listing: true,
15
- search: true,
16
- ...options,
17
- build: (engine, solutionType) => solutionType === SolutionType.listing
18
- ? buildProductListing(engine).breadcrumbManager()
19
- : buildSearch(engine).breadcrumbManager(),
20
- };
21
- }
@@ -1,24 +0,0 @@
1
- import { buildCart, } from '../../../../controllers/commerce/context/cart/headless-cart.js';
2
- import { MissingControllerProps } from '../../../common/errors.js';
3
- import { createControllerWithKind, Kind } from '../../types/kind.js';
4
- /**
5
- * Defines a `Cart` controller instance.
6
- * @group Definers
7
- *
8
- * @returns The `Cart` controller definition.
9
- */
10
- export function defineCart() {
11
- return {
12
- listing: true,
13
- search: true,
14
- standalone: true,
15
- recommendation: true,
16
- buildWithProps: (engine, props) => {
17
- if (props === undefined) {
18
- throw new MissingControllerProps(Kind.Cart);
19
- }
20
- const controller = buildCart(engine, { initialState: props.initialState });
21
- return createControllerWithKind(controller, Kind.Cart);
22
- },
23
- };
24
- }
@@ -1,24 +0,0 @@
1
- import { buildContext, } from '../../../../controllers/commerce/context/headless-context.js';
2
- import { MissingControllerProps } from '../../../common/errors.js';
3
- import { createControllerWithKind, Kind } from '../../types/kind.js';
4
- /**
5
- * Defines a `Context` controller instance.
6
- * @group Definers
7
- *
8
- * @returns The `Context` controller definition.
9
- */
10
- export function defineContext() {
11
- return {
12
- listing: true,
13
- search: true,
14
- standalone: true,
15
- recommendation: true,
16
- buildWithProps: (engine, props) => {
17
- if (props === undefined) {
18
- throw new MissingControllerProps(Kind.Context);
19
- }
20
- const controller = buildContext(engine, { options: props });
21
- return createControllerWithKind(controller, Kind.Context);
22
- },
23
- };
24
- }
@@ -1,13 +0,0 @@
1
- import { buildSearch } from '../../../../controllers/commerce/search/headless-search.js';
2
- /**
3
- * Defines a `DidYouMean` controller instance.
4
- * @group Definers
5
- *
6
- * @returns The `DidYouMean` controller definition.
7
- */
8
- export function defineDidYouMean() {
9
- return {
10
- search: true,
11
- build: (engine) => buildSearch(engine).didYouMean(),
12
- };
13
- }
@@ -1,15 +0,0 @@
1
- import { buildFilterSuggestionsGenerator, } from '../../../../controllers/commerce/filter-suggestions/headless-filter-suggestions-generator.js';
2
- /**
3
- * Defines the `FilterSuggestionsGenerator` controller for the purpose of server-side rendering.
4
- * @group Definers
5
- *
6
- * @returns The `FilterSuggestionsGenerator` controller definition.
7
- */
8
- export function defineFilterSuggestionsGenerator() {
9
- return {
10
- search: true,
11
- listing: true,
12
- standalone: true,
13
- build: (engine) => buildFilterSuggestionsGenerator(engine),
14
- };
15
- }
@@ -1,93 +0,0 @@
1
- import { stateKey } from '../../../../app/state-key.js';
2
- import { getCategoryFacetState } from '../../../../controllers/commerce/core/facets/category/headless-commerce-category-facet.js';
3
- import { getDateFacetState } from '../../../../controllers/commerce/core/facets/date/headless-commerce-date-facet.js';
4
- import { getCoreFacetState } from '../../../../controllers/commerce/core/facets/headless-core-commerce-facet.js';
5
- import { getLocationFacetState } from '../../../../controllers/commerce/core/facets/location/headless-commerce-location-facet.js';
6
- import { getNumericFacetState } from '../../../../controllers/commerce/core/facets/numeric/headless-commerce-numeric-facet.js';
7
- import { getRegularFacetState } from '../../../../controllers/commerce/core/facets/regular/headless-commerce-regular-facet.js';
8
- import { facetResponseSelector as listingFacetResponseSelector, isFacetLoadingResponseSelector as listingIsFacetLoadingResponseSelector, } from '../../../../controllers/commerce/product-listing/facets/headless-product-listing-facet-options.js';
9
- import { buildProductListing } from '../../../../controllers/commerce/product-listing/headless-product-listing.js';
10
- import { facetResponseSelector as searchFacetResponseSelector, isFacetLoadingResponseSelector as searchIsFacetLoadingResponseSelector, } from '../../../../controllers/commerce/search/facets/headless-search-facet-options.js';
11
- import { buildSearch } from '../../../../controllers/commerce/search/headless-search.js';
12
- import { facetRequestSelector } from '../../../../features/commerce/facets/facet-set/facet-set-selector.js';
13
- import { manualNumericFacetSelector } from '../../../../features/commerce/facets/numeric-facet/manual-numeric-facet-selectors.js';
14
- import { manualNumericFacetReducer as manualNumericFacetSet } from '../../../../features/commerce/facets/numeric-facet/manual-numeric-facet-slice.js';
15
- import { categoryFacetSearchStateSelector } from '../../../../features/facets/facet-search-set/category/category-facet-search-state-selector.js';
16
- import { specificFacetSearchStateSelector } from '../../../../features/facets/facet-search-set/specific/specific-facet-search-state-selector.js';
17
- import { ensureAtLeastOneSolutionType } from '../../../../ssr/commerce/controller-utils.js';
18
- import { loadReducerError } from '../../../../utils/errors.js';
19
- import { SolutionType } from '../../types/controller-constants.js';
20
- /**
21
- * @group Definers
22
- */
23
- export function defineFacetGenerator(options) {
24
- ensureAtLeastOneSolutionType(options);
25
- return {
26
- listing: true,
27
- search: true,
28
- ...options,
29
- build: (engine, solutionType) => buildFacetGenerator(engine, { props: { solutionType: solutionType } }),
30
- };
31
- }
32
- /**
33
- * Creates a `FacetGenerator` sub-controller for server-side rendering purposes (SSR).
34
- *
35
- * @param engine - The SSR commerce engine.
36
- * @param options - The facet generator options used internally.
37
- * @returns A `FacetGenerator` sub-controller.
38
- */
39
- export function buildFacetGenerator(engine, options) {
40
- if (!loadFacetGeneratorReducers(engine)) {
41
- throw loadReducerError;
42
- }
43
- const getEngineState = () => engine[stateKey];
44
- const solutionType = options.props.solutionType;
45
- const getFacetResponseSelector = (facetId) => {
46
- return solutionType === SolutionType.listing
47
- ? listingFacetResponseSelector(getEngineState(), facetId)
48
- : searchFacetResponseSelector(getEngineState(), facetId);
49
- };
50
- const isFacetLoadingResponseSelector = solutionType === SolutionType.listing
51
- ? listingIsFacetLoadingResponseSelector(getEngineState())
52
- : searchIsFacetLoadingResponseSelector(getEngineState());
53
- const createFacetState = (facetResponseSelector) => {
54
- const facetId = facetResponseSelector.facetId;
55
- return getCoreFacetState(facetId, facetRequestSelector(getEngineState(), facetId), facetResponseSelector, isFacetLoadingResponseSelector);
56
- };
57
- const baseController = solutionType === SolutionType.listing
58
- ? buildProductListing(engine).facetGenerator()
59
- : buildSearch(engine).facetGenerator();
60
- const { state: _state, ...restOfBaseController } = baseController;
61
- return {
62
- ...restOfBaseController,
63
- getFacetController: (facetId, facetType) => {
64
- const controller = baseController.facets.find((f) => f.state.facetId === facetId && f.type === facetType);
65
- return controller;
66
- },
67
- get state() {
68
- const facetResponseSelectors = baseController.state
69
- .map(getFacetResponseSelector)
70
- .filter((selector) => selector !== undefined);
71
- return facetResponseSelectors.map((selector) => {
72
- const facetResponseSelector = selector;
73
- const facetId = facetResponseSelector.facetId;
74
- switch (facetResponseSelector.type) {
75
- case 'hierarchical':
76
- return getCategoryFacetState(createFacetState(facetResponseSelector), categoryFacetSearchStateSelector(getEngineState(), facetId), facetRequestSelector(getEngineState(), facetId));
77
- case 'dateRange':
78
- return getDateFacetState(createFacetState(facetResponseSelector));
79
- case 'numericalRange':
80
- return getNumericFacetState(createFacetState(facetResponseSelector), facetResponseSelector, manualNumericFacetSelector(getEngineState(), facetId));
81
- case 'regular':
82
- return getRegularFacetState(createFacetState(facetResponseSelector), specificFacetSearchStateSelector(getEngineState(), facetId));
83
- case 'location':
84
- return getLocationFacetState(createFacetState(facetResponseSelector));
85
- }
86
- });
87
- },
88
- };
89
- }
90
- function loadFacetGeneratorReducers(engine) {
91
- engine.addReducers({ manualNumericFacetSet });
92
- return true;
93
- }
@@ -1,15 +0,0 @@
1
- import { buildInstantProducts, } from '../../../../controllers/commerce/instant-products/headless-instant-products.js';
2
- /**
3
- * Defines the `InstantProducts` controller for the purpose of server-side rendering.
4
- * @group Definers
5
- *
6
- * @returns The `InstantProducts` controller definition.
7
- */
8
- export function defineInstantProducts(props = { options: {} }) {
9
- return {
10
- listing: true,
11
- search: true,
12
- standalone: true,
13
- build: (engine) => buildInstantProducts(engine, props),
14
- };
15
- }
@@ -1,22 +0,0 @@
1
- import { buildProductListing } from '../../../../controllers/commerce/product-listing/headless-product-listing.js';
2
- import { buildSearch } from '../../../../controllers/commerce/search/headless-search.js';
3
- import { ensureAtLeastOneSolutionType } from '../../../../ssr/commerce/controller-utils.js';
4
- import { SolutionType } from '../../types/controller-constants.js';
5
- /**
6
- * Defines a `Pagination` controller instance.
7
- * @group Definers
8
- *
9
- * @param props - The configurable `Pagination` properties.
10
- * @returns The `Pagination` controller definition.
11
- */
12
- export function definePagination(props) {
13
- ensureAtLeastOneSolutionType(props);
14
- return {
15
- listing: true,
16
- search: true,
17
- ...props,
18
- build: (engine, solutionType) => solutionType === SolutionType.listing
19
- ? buildProductListing(engine).pagination(props)
20
- : buildSearch(engine).pagination(props),
21
- };
22
- }
@@ -1,70 +0,0 @@
1
- import { buildProductListing } from '../../../../controllers/commerce/product-listing/headless-product-listing.js';
2
- import { buildSearch } from '../../../../controllers/commerce/search/headless-search.js';
3
- import { commerceFacetSetReducer as commerceFacetSet } from '../../../../features/commerce/facets/facet-set/facet-set-slice.js';
4
- import { manualNumericFacetReducer as manualNumericFacetSet } from '../../../../features/commerce/facets/numeric-facet/manual-numeric-facet-slice.js';
5
- import { paginationReducer as commercePagination } from '../../../../features/commerce/pagination/pagination-slice.js';
6
- import { parametersReducer as commerceParameters } from '../../../../features/commerce/parameters/parameters-slice.js';
7
- import { queryReducer as query } from '../../../../features/commerce/query/query-slice.js';
8
- import { sortReducer as commerceSort } from '../../../../features/commerce/sort/sort-slice.js';
9
- import { facetOrderReducer as facetOrder } from '../../../../features/facets/facet-order/facet-order-slice.js';
10
- import { querySetReducer as querySet } from '../../../../features/query-set/query-set-slice.js';
11
- import { ensureAtLeastOneSolutionType } from '../../../../ssr/commerce/controller-utils.js';
12
- import { loadReducerError } from '../../../../utils/errors.js';
13
- import { SolutionType } from '../../types/controller-constants.js';
14
- import { createControllerWithKind, Kind } from '../../types/kind.js';
15
- /**
16
- * Defines a `ParameterManager` controller instance.
17
- * @group Definers
18
- *
19
- * @returns The `ParameterManager` controller definition.
20
- */
21
- export function defineParameterManager(options) {
22
- ensureAtLeastOneSolutionType(options);
23
- return {
24
- listing: true,
25
- search: true,
26
- ...options,
27
- buildWithProps: (engine, props, solutionType) => {
28
- if (solutionType === SolutionType.listing) {
29
- if (!loadCommerceProductListingParameterReducers(engine)) {
30
- throw loadReducerError;
31
- }
32
- const controller = buildProductListing(engine).parameterManager({
33
- ...props,
34
- excludeDefaultParameters: true,
35
- });
36
- return createControllerWithKind(controller, Kind.ParameterManager);
37
- }
38
- else {
39
- if (!loadCommerceSearchParameterReducers(engine)) {
40
- throw loadReducerError;
41
- }
42
- const controller = buildSearch(engine).parameterManager({
43
- ...props,
44
- excludeDefaultParameters: true,
45
- });
46
- return createControllerWithKind(controller, Kind.ParameterManager);
47
- }
48
- },
49
- };
50
- }
51
- function loadCommerceCommonParameterReducers(engine) {
52
- engine.addReducers({
53
- commerceParameters,
54
- commerceFacetSet,
55
- commerceSort,
56
- commercePagination,
57
- facetOrder,
58
- manualNumericFacetSet,
59
- });
60
- return true;
61
- }
62
- function loadCommerceSearchParameterReducers(engine) {
63
- loadCommerceCommonParameterReducers(engine);
64
- engine.addReducers({ query, querySet });
65
- return true;
66
- }
67
- function loadCommerceProductListingParameterReducers(engine) {
68
- loadCommerceCommonParameterReducers(engine);
69
- return true;
70
- }
@@ -1,21 +0,0 @@
1
- import { buildProductListing, } from '../../../../controllers/commerce/product-listing/headless-product-listing.js';
2
- import { buildSearch, } from '../../../../controllers/commerce/search/headless-search.js';
3
- import { ensureAtLeastOneSolutionType } from '../../controller-utils.js';
4
- import { SolutionType } from '../../types/controller-constants.js';
5
- /**
6
- * Defines a `ProductList` controller instance.
7
- * @group Definers
8
- *
9
- * @returns The `ProductList` controller definition.
10
- */
11
- export function defineProductList(options) {
12
- ensureAtLeastOneSolutionType(options);
13
- return {
14
- listing: true,
15
- search: true,
16
- ...options,
17
- build: (engine, solutionType) => solutionType === SolutionType.listing
18
- ? buildProductListing(engine)
19
- : buildSearch(engine),
20
- };
21
- }
@@ -1,29 +0,0 @@
1
- import { buildProductView, } from '../../../../controllers/commerce/product-view/headless-product-view.js';
2
- import { buildController, } from '../../../../controllers/controller/headless-controller.js';
3
- /**
4
- * Defines a `ProductView` controller instance.
5
- *
6
- * This controller is stateless and does not implement a `subscribe` method,
7
- * making it simpler but different from other controllers in the system.
8
- * Its sole purpose is to log an `ec.productView` event.
9
- *
10
- * @returns The `ProductView` controller definition.
11
- *
12
- * @group Definers
13
- */
14
- export function defineProductView() {
15
- return {
16
- listing: true,
17
- search: true,
18
- standalone: true,
19
- build: (engine) => buildSSRProductView(engine),
20
- };
21
- }
22
- function buildSSRProductView(engine) {
23
- const controller = buildController(engine);
24
- const productView = buildProductView(engine);
25
- return {
26
- ...controller,
27
- ...productView,
28
- };
29
- }
@@ -1,16 +0,0 @@
1
- import { buildRecentQueriesList, } from '../../../../controllers/commerce/recent-queries-list/headless-recent-queries-list.js';
2
- /**
3
- * Defines the `RecentQueriesList` controller for the purpose of server-side rendering.
4
- * @group Definers
5
- *
6
- * @param props - The configuration `RecentQueriesList` properties.
7
- * @returns The `RecentQueriesList` controller definition.
8
- */
9
- export function defineRecentQueriesList(props = {}) {
10
- return {
11
- search: true,
12
- listing: true,
13
- standalone: true,
14
- build: (engine) => buildRecentQueriesList(engine, props),
15
- };
16
- }
@@ -1,25 +0,0 @@
1
- import { buildRecommendations, } from '../../../../controllers/commerce/recommendations/headless-recommendations.js';
2
- import { recommendationInternalOptionKey } from '../../types/controller-constants.js';
3
- import { createControllerWithKind, Kind } from '../../types/kind.js';
4
- /**
5
- * Defines a `Recommendations` controller instance.
6
- * @group Definers
7
- *
8
- * @param props - The configurable `Recommendations` properties.
9
- * @returns The `Recommendations` controller definition.
10
- * */
11
- export function defineRecommendations(props) {
12
- return {
13
- recommendation: true,
14
- [recommendationInternalOptionKey]: {
15
- ...props.options,
16
- },
17
- buildWithProps: (engine, options) => {
18
- const staticOptions = props.options;
19
- const controller = buildRecommendations(engine, {
20
- options: { ...staticOptions, ...options },
21
- });
22
- return createControllerWithKind(controller, Kind.Recommendations);
23
- },
24
- };
25
- }
@@ -1,13 +0,0 @@
1
- import { buildSearchBox, } from '../../../../controllers/commerce/search-box/headless-search-box.js';
2
- /**
3
- * Defines a `SearchBox` controller instance.
4
- * @group Definers
5
- *
6
- * @returns The `SearchBox` controller definition.
7
- */
8
- export function defineSearchBox(props = {}) {
9
- return {
10
- search: true,
11
- build: (engine) => buildSearchBox(engine, props),
12
- };
13
- }
@@ -1,22 +0,0 @@
1
- import { buildProductListing } from '../../../../controllers/commerce/product-listing/headless-product-listing.js';
2
- import { buildSearch } from '../../../../controllers/commerce/search/headless-search.js';
3
- import { ensureAtLeastOneSolutionType } from '../../../../ssr/commerce/controller-utils.js';
4
- import { SolutionType } from '../../types/controller-constants.js';
5
- /**
6
- * Defines a `Sort` controller instance.
7
- * @group Definers
8
- *
9
- * @param props - The configurable `Sort` properties.
10
- * @returns The `Sort` controller definition.
11
- */
12
- export function defineSort(props) {
13
- ensureAtLeastOneSolutionType(props);
14
- return {
15
- listing: true,
16
- search: true,
17
- ...props,
18
- build: (engine, solutionType) => solutionType === SolutionType.listing
19
- ? buildProductListing(engine).sort(props)
20
- : buildSearch(engine).sort(props),
21
- };
22
- }
@@ -1,15 +0,0 @@
1
- import { buildStandaloneSearchBox, } from '../../../../controllers/commerce/standalone-search-box/headless-standalone-search-box.js';
2
- /**
3
- * Defines the `StandaloneSearchBox` controller for the purpose of server-side rendering.
4
- * @group Definers
5
- *
6
- * @param props - The configurable `StandaloneSearchBox` properties.
7
- * @returns The `StandaloneSearchBox` controller definition.
8
- */
9
- export function defineStandaloneSearchBox(props) {
10
- return {
11
- listing: true,
12
- standalone: true,
13
- build: (engine) => buildStandaloneSearchBox(engine, props),
14
- };
15
- }
@@ -1,21 +0,0 @@
1
- import { buildProductListing } from '../../../../controllers/commerce/product-listing/headless-product-listing.js';
2
- import { buildSearch } from '../../../../controllers/commerce/search/headless-search.js';
3
- import { ensureAtLeastOneSolutionType } from '../../../../ssr/commerce/controller-utils.js';
4
- import { SolutionType } from '../../types/controller-constants.js';
5
- /**
6
- * Defines a `Summary` controller instance.
7
- * @group Definers
8
- *
9
- * @returns The `Summary` controller definition.
10
- */
11
- export function defineSummary(options) {
12
- ensureAtLeastOneSolutionType(options);
13
- return {
14
- listing: true,
15
- search: true,
16
- ...options,
17
- build: (engine, solutionType) => solutionType === SolutionType.listing
18
- ? buildProductListing(engine).summary()
19
- : buildSearch(engine).summary(),
20
- };
21
- }
@@ -1,14 +0,0 @@
1
- import { buildNotifyTrigger } from '../../../../controllers/commerce/triggers/headless-notify-trigger.js';
2
- /**
3
- * Defines the `NotifyTrigger` controller for the purpose of server-side rendering.
4
- * @group Definers
5
- *
6
- * @returns The `NotifyTrigger` controller definition.
7
- */
8
- export function defineNotifyTrigger() {
9
- return {
10
- listing: true,
11
- search: true,
12
- build: (engine) => buildNotifyTrigger(engine),
13
- };
14
- }
@@ -1,13 +0,0 @@
1
- import { buildQueryTrigger } from '../../../../controllers/commerce/triggers/headless-query-trigger.js';
2
- /**
3
- * Defines the `QueryTrigger` controller for the purpose of server-side rendering.
4
- * @group Definers
5
- *
6
- * @returns The `QueryTrigger` controller definition.
7
- */
8
- export function defineQueryTrigger() {
9
- return {
10
- search: true,
11
- build: (engine) => buildQueryTrigger(engine),
12
- };
13
- }
@@ -1,13 +0,0 @@
1
- import { buildRedirectionTrigger } from '../../../../controllers/commerce/triggers/headless-redirection-trigger.js';
2
- /**
3
- * Defines the `RedirectionTrigger` controller for the purpose of server-side rendering.
4
- * @group Definers
5
- *
6
- * @returns The `RedirectionTrigger` controller definition.
7
- */
8
- export function defineRedirectionTrigger() {
9
- return {
10
- search: true,
11
- build: (engine) => buildRedirectionTrigger(engine),
12
- };
13
- }
@@ -1,68 +0,0 @@
1
- /**
2
- * Utility functions to be used for Commerce Server Side Rendering.
3
- */
4
- import { buildFactory, } from '../factories/build-factory.js';
5
- import { hydratedStaticStateFactory } from '../factories/hydrated-state-factory.js';
6
- import { hydratedRecommendationStaticStateFactory } from '../factories/recommendation-hydrated-state-factory.js';
7
- import { fetchRecommendationStaticStateFactory } from '../factories/recommendation-static-state-factory.js';
8
- import { fetchStaticStateFactory } from '../factories/static-state-factory.js';
9
- import { SolutionType } from '../types/controller-constants.js';
10
- /**
11
- * Initializes a Commerce engine definition in SSR with given controllers definitions and commerce engine config.
12
- * @param options - The commerce engine definition
13
- * @returns Three utility functions to fetch the initial state of the engine in SSR, hydrate the state in CSR,
14
- * and a build function that can be used for edge cases requiring more control.
15
- *
16
- * @group Engine
17
- */
18
- export function defineCommerceEngine(options) {
19
- const { controllers: controllerDefinitions, ...engineOptions } = options;
20
- const getOptions = () => engineOptions;
21
- const setNavigatorContextProvider = (navigatorContextProvider) => {
22
- engineOptions.navigatorContextProvider = navigatorContextProvider;
23
- };
24
- const getAccessToken = () => engineOptions.configuration.accessToken;
25
- const setAccessToken = (accessToken) => {
26
- engineOptions.configuration.accessToken = accessToken;
27
- };
28
- const build = buildFactory(controllerDefinitions, getOptions());
29
- const fetchStaticState = fetchStaticStateFactory(controllerDefinitions, getOptions());
30
- const hydrateStaticState = hydratedStaticStateFactory(controllerDefinitions, getOptions());
31
- const fetchRecommendationStaticState = fetchRecommendationStaticStateFactory(controllerDefinitions, getOptions());
32
- const hydrateRecommendationStaticState = hydratedRecommendationStaticStateFactory(controllerDefinitions, getOptions());
33
- return {
34
- listingEngineDefinition: {
35
- build: build(SolutionType.listing),
36
- fetchStaticState: fetchStaticState(SolutionType.listing),
37
- hydrateStaticState: hydrateStaticState(SolutionType.listing),
38
- setNavigatorContextProvider,
39
- getAccessToken,
40
- setAccessToken,
41
- },
42
- searchEngineDefinition: {
43
- build: build(SolutionType.search),
44
- fetchStaticState: fetchStaticState(SolutionType.search),
45
- hydrateStaticState: hydrateStaticState(SolutionType.search),
46
- setNavigatorContextProvider,
47
- getAccessToken,
48
- setAccessToken,
49
- },
50
- recommendationEngineDefinition: {
51
- build: build(SolutionType.recommendation),
52
- fetchStaticState: fetchRecommendationStaticState,
53
- hydrateStaticState: hydrateRecommendationStaticState,
54
- setNavigatorContextProvider,
55
- getAccessToken,
56
- setAccessToken,
57
- },
58
- // TODO KIT-3738 : The standaloneEngineDefinition should not be async since no request is sent to the API
59
- standaloneEngineDefinition: {
60
- build: build(SolutionType.standalone),
61
- fetchStaticState: fetchStaticState(SolutionType.standalone),
62
- hydrateStaticState: hydrateStaticState(SolutionType.standalone),
63
- setNavigatorContextProvider,
64
- getAccessToken,
65
- setAccessToken,
66
- },
67
- };
68
- }