@coveo/quantic 3.30.0-pre.1249c7170d → 3.30.0-pre.166ffdfd4a
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/force-app/main/default/staticresources/coveoheadless/case-assist/headless.js +8 -8
- package/force-app/main/default/staticresources/coveoheadless/definitions/api/api-client-utils.d.ts +1 -1
- package/force-app/main/default/staticresources/coveoheadless/definitions/api/commerce/common/request.d.ts +2 -2
- package/force-app/main/default/staticresources/coveoheadless/definitions/api/commerce/recommendations/recommendations-request.d.ts +2 -2
- package/force-app/main/default/staticresources/coveoheadless/definitions/api/commerce/search/query-suggest/query-suggest-request.d.ts +2 -2
- package/force-app/main/default/staticresources/coveoheadless/definitions/api/knowledge/stream-answer-api.d.ts +5 -5
- package/force-app/main/default/staticresources/coveoheadless/definitions/api/service/case-assist/get-case-classifications/get-case-classifications-request.d.ts +2 -2
- package/force-app/main/default/staticresources/coveoheadless/definitions/api/service/case-assist/get-document-suggestions/get-document-suggestions-request.d.ts +2 -2
- package/force-app/main/default/staticresources/coveoheadless/definitions/api/service/insight/get-interface/get-interface-config-request.d.ts +2 -2
- package/force-app/main/default/staticresources/coveoheadless/definitions/api/service/insight/query/query-request.d.ts +4 -4
- package/force-app/main/default/staticresources/coveoheadless/definitions/api/service/insight/user-actions/user-actions-request.d.ts +2 -2
- package/force-app/main/default/staticresources/coveoheadless/definitions/features/generated-answer/generated-answer-actions-loader.d.ts +9 -0
- package/force-app/main/default/staticresources/coveoheadless/definitions/features/generated-answer/generated-answer-actions.d.ts +25 -0
- package/force-app/main/default/staticresources/coveoheadless/definitions/insight.index.d.ts +1 -0
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/types/build.d.ts +5 -3
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/types/controller-definitions.d.ts +3 -0
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/types/kind.d.ts +3 -0
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/common/types/build.d.ts +7 -0
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/common/types/hydrate-static-state.d.ts +4 -0
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-commerce-next.index.d.ts +9 -10
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/controller-utils.d.ts +7 -6
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/controllers/breadcrumb-manager/headless-core-breadcrumb-manager.ssr.d.ts +3 -2
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/controllers/cart/headless-cart.ssr.d.ts +1 -2
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/controllers/context/headless-context.ssr.d.ts +2 -3
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/controllers/did-you-mean/headless-did-you-mean.ssr.d.ts +2 -1
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/controllers/filter-suggestions/headless-filter-suggestions-generator.ssr.d.ts +1 -2
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/controllers/generator/headless-commerce-facet-generator.ssr.d.ts +3 -2
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/controllers/instant-products/headless-instant-products.ssr.d.ts +1 -2
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/controllers/pagination/headless-core-commerce-pagination.ssr.d.ts +3 -2
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/controllers/parameter-manager/headless-core-parameter-manager.ssr.d.ts +3 -13
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/controllers/product-list/headless-product-list.ssr.d.ts +3 -2
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/controllers/product-view/headless-product-view.ssr.d.ts +1 -3
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/controllers/recent-queries-list/headless-recent-queries-list.ssr.d.ts +1 -2
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/controllers/recommendations/headless-recommendations.ssr.d.ts +4 -8
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/controllers/search-box/headless-search-box.ssr.d.ts +1 -2
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/controllers/sort/headless-core-commerce-sort.ssr.d.ts +3 -2
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/controllers/standalone-search-box/headless-standalone-search-box.ssr.d.ts +1 -2
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/controllers/summary/headless-core-summary.ssr.d.ts +3 -2
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/controllers/triggers/headless-notify-trigger.ssr.d.ts +1 -2
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/controllers/triggers/headless-query-trigger.ssr.d.ts +1 -2
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/controllers/triggers/headless-redirection-trigger.ssr.d.ts +1 -2
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/factories/build-factory.d.ts +5 -3
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/factories/hydrated-state-factory.d.ts +5 -2
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/factories/recommendation-hydrated-state-factory.d.ts +3 -1
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/factories/recommendation-static-state-factory.d.ts +12 -2
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/factories/static-state-factory.d.ts +7 -2
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/types/build.d.ts +2 -8
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/types/controller-definitions.d.ts +4 -53
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/types/controller-scopes.d.ts +0 -6
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/types/engine.d.ts +9 -18
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/types/fetch-static-state.d.ts +1 -1
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/utils/recommendation-filter.d.ts +1 -1
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/common/builders/static-controller-builder.d.ts +1 -6
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/common/errors.d.ts +0 -3
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/common/types/engine.d.ts +1 -1
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/common/types/utilities.d.ts +0 -1
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/search/controller-utils.d.ts +2 -2
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/search/types/build.d.ts +2 -6
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/search/types/engine.d.ts +1 -1
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/search/types/hydrate-static-state.d.ts +1 -1
- package/force-app/main/default/staticresources/coveoheadless/definitions/test/mock-ssr-controller-definitions.d.ts +0 -3
- package/force-app/main/default/staticresources/coveoheadless/headless.js +11 -11
- package/force-app/main/default/staticresources/coveoheadless/insight/headless.js +9 -9
- package/force-app/main/default/staticresources/coveoheadless/recommendation/headless.js +7 -7
- package/package.json +2 -2
- package/force-app/main/default/staticresources/coveoheadless/definitions/api/knowledge/stream-answer-actions.d.ts +0 -15
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/types/kind.d.ts +0 -9
|
@@ -1,13 +1,11 @@
|
|
|
1
|
-
import { type Recommendations, type RecommendationsOptions, type RecommendationsState } from '../../../../controllers/commerce/recommendations/headless-recommendations.js';
|
|
1
|
+
import { type Recommendations, type RecommendationsOptions, type RecommendationsProps, type RecommendationsState } from '../../../../controllers/commerce/recommendations/headless-recommendations.js';
|
|
2
2
|
import { recommendationInternalOptionKey } from '../../types/controller-constants.js';
|
|
3
3
|
import type { RecommendationOnlyControllerDefinitionWithProps } from '../../types/controller-definitions.js';
|
|
4
4
|
export type { Recommendations, RecommendationsState };
|
|
5
5
|
export type RecommendationsDefinitionMeta = {
|
|
6
|
-
[recommendationInternalOptionKey]: {} &
|
|
6
|
+
[recommendationInternalOptionKey]: {} & RecommendationsProps['options'];
|
|
7
7
|
};
|
|
8
|
-
export interface RecommendationsDefinition extends RecommendationOnlyControllerDefinitionWithProps<Recommendations, {
|
|
9
|
-
initialState: Partial<RecommendationsOptions>;
|
|
10
|
-
}> {
|
|
8
|
+
export interface RecommendationsDefinition extends RecommendationOnlyControllerDefinitionWithProps<Recommendations, Partial<RecommendationsOptions>> {
|
|
11
9
|
}
|
|
12
10
|
/**
|
|
13
11
|
* Defines a `Recommendations` controller instance.
|
|
@@ -16,6 +14,4 @@ export interface RecommendationsDefinition extends RecommendationOnlyControllerD
|
|
|
16
14
|
* @param props - The configurable `Recommendations` properties.
|
|
17
15
|
* @returns The `Recommendations` controller definition.
|
|
18
16
|
* */
|
|
19
|
-
export declare function defineRecommendations(props:
|
|
20
|
-
options: Omit<RecommendationsOptions, 'productId'>;
|
|
21
|
-
}): RecommendationsDefinition & RecommendationsDefinitionMeta;
|
|
17
|
+
export declare function defineRecommendations(props: RecommendationsProps): RecommendationsDefinition & RecommendationsDefinitionMeta;
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { type CoreSearchBox, type SearchBox, type SearchBoxOptions, type SearchBoxProps, type SearchBoxState, type Suggestion } from '../../../../controllers/commerce/search-box/headless-search-box.js';
|
|
2
2
|
import type { SearchOnlyControllerDefinitionWithoutProps } from '../../types/controller-definitions.js';
|
|
3
3
|
export type { CoreSearchBox, SearchBox, SearchBoxProps, SearchBoxState, SearchBoxOptions, Suggestion, };
|
|
4
|
-
export
|
|
5
|
-
}
|
|
4
|
+
export type SearchBoxDefinition = SearchOnlyControllerDefinitionWithoutProps<SearchBox>;
|
|
6
5
|
/**
|
|
7
6
|
* Defines a `SearchBox` controller instance.
|
|
8
7
|
* @group Definers
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { Sort, SortProps, SortState } from '../../../../controllers/commerce/core/sort/headless-core-commerce-sort.js';
|
|
2
|
-
import type {
|
|
2
|
+
import type { SearchAndListingControllerDefinitionWithoutProps } from '../../types/controller-definitions.js';
|
|
3
3
|
export type { Sort, SortProps, SortState };
|
|
4
|
+
export type SortDefinition = SearchAndListingControllerDefinitionWithoutProps<Sort>;
|
|
4
5
|
/**
|
|
5
6
|
* Defines a `Sort` controller instance.
|
|
6
7
|
* @group Definers
|
|
@@ -8,4 +9,4 @@ export type { Sort, SortProps, SortState };
|
|
|
8
9
|
* @param props - The configurable `Sort` properties.
|
|
9
10
|
* @returns The `Sort` controller definition.
|
|
10
11
|
*/
|
|
11
|
-
export declare function defineSort
|
|
12
|
+
export declare function defineSort(props?: SortProps): SortDefinition;
|
|
@@ -2,8 +2,7 @@ import { type StandaloneSearchBox, type StandaloneSearchBoxState } from '../../.
|
|
|
2
2
|
import type { StandaloneSearchBoxProps } from '../../../../controllers/standalone-search-box/headless-standalone-search-box.js';
|
|
3
3
|
import type { ListingAndStandaloneControllerWithoutProps } from '../../types/controller-definitions.js';
|
|
4
4
|
export type { StandaloneSearchBoxState, StandaloneSearchBox, StandaloneSearchBoxProps, };
|
|
5
|
-
export
|
|
6
|
-
}
|
|
5
|
+
export type StandaloneSearchBoxDefinition = ListingAndStandaloneControllerWithoutProps<StandaloneSearchBox>;
|
|
7
6
|
/**
|
|
8
7
|
* Defines the `StandaloneSearchBox` controller for the purpose of server-side rendering.
|
|
9
8
|
* @group Definers
|
|
@@ -2,12 +2,13 @@ import type { Summary, SummaryState } from '../../../../controllers/commerce/cor
|
|
|
2
2
|
import type { ProductListingSummaryState } from '../../../../controllers/commerce/product-listing/summary/headless-product-listing-summary.js';
|
|
3
3
|
import type { RecommendationsSummaryState } from '../../../../controllers/commerce/recommendations/summary/headless-recommendations-summary.js';
|
|
4
4
|
import type { SearchSummaryState } from '../../../../controllers/commerce/search/summary/headless-search-summary.js';
|
|
5
|
-
import type {
|
|
5
|
+
import type { SearchAndListingControllerDefinitionWithoutProps } from '../../types/controller-definitions.js';
|
|
6
6
|
export type { Summary, ProductListingSummaryState, RecommendationsSummaryState, SearchSummaryState, SummaryState, };
|
|
7
|
+
export type SummaryDefinition = SearchAndListingControllerDefinitionWithoutProps<Summary<ProductListingSummaryState | SearchSummaryState | RecommendationsSummaryState>>;
|
|
7
8
|
/**
|
|
8
9
|
* Defines a `Summary` controller instance.
|
|
9
10
|
* @group Definers
|
|
10
11
|
*
|
|
11
12
|
* @returns The `Summary` controller definition.
|
|
12
13
|
*/
|
|
13
|
-
export declare function defineSummary
|
|
14
|
+
export declare function defineSummary(): SummaryDefinition;
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import type { NotifyTrigger, NotifyTriggerState } from '../../../../controllers/core/triggers/headless-core-notify-trigger.js';
|
|
2
2
|
import type { SearchAndListingControllerDefinitionWithoutProps } from '../../types/controller-definitions.js';
|
|
3
3
|
export type { NotifyTrigger, NotifyTriggerState };
|
|
4
|
-
export
|
|
5
|
-
}
|
|
4
|
+
export type NotifyTriggerDefinition = SearchAndListingControllerDefinitionWithoutProps<NotifyTrigger>;
|
|
6
5
|
/**
|
|
7
6
|
* Defines the `NotifyTrigger` controller for the purpose of server-side rendering.
|
|
8
7
|
* @group Definers
|
|
@@ -2,8 +2,7 @@ import type { QueryTrigger } from '../../../../controllers/core/triggers/headles
|
|
|
2
2
|
import type { SearchOnlyControllerDefinitionWithoutProps } from '../../types/controller-definitions.js';
|
|
3
3
|
export type { QueryTriggerState } from '../../../../controllers/core/triggers/headless-core-query-trigger.js';
|
|
4
4
|
export type { QueryTrigger };
|
|
5
|
-
export
|
|
6
|
-
}
|
|
5
|
+
export type QueryTriggerDefinition = SearchOnlyControllerDefinitionWithoutProps<QueryTrigger>;
|
|
7
6
|
/**
|
|
8
7
|
* Defines the `QueryTrigger` controller for the purpose of server-side rendering.
|
|
9
8
|
* @group Definers
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import type { RedirectionTrigger, RedirectionTriggerState } from '../../../../controllers/core/triggers/headless-core-redirection-trigger.js';
|
|
2
2
|
import type { SearchOnlyControllerDefinitionWithoutProps } from '../../types/controller-definitions.js';
|
|
3
3
|
export type { RedirectionTrigger, RedirectionTriggerState };
|
|
4
|
-
export
|
|
5
|
-
}
|
|
4
|
+
export type RedirectionTriggerDefinition = SearchOnlyControllerDefinitionWithoutProps<RedirectionTrigger>;
|
|
6
5
|
/**
|
|
7
6
|
* Defines the `RedirectionTrigger` controller for the purpose of server-side rendering.
|
|
8
7
|
* @group Definers
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import type { Action } from '@reduxjs/toolkit';
|
|
2
2
|
import { type CommerceEngine } from '../../../app/commerce-engine/commerce-engine.js';
|
|
3
3
|
import { SolutionType } from '../types/controller-constants.js';
|
|
4
|
-
import type {
|
|
4
|
+
import type { AugmentedControllerDefinition, BakedInControllers } from '../types/controller-definitions.js';
|
|
5
|
+
import type { InferControllersMapFromDefinition } from '../types/controller-inference.js';
|
|
6
|
+
import type { CommerceControllerDefinitionsMap, CommerceEngineDefinitionOptions, FetchStaticStateParameters, HydrateStaticStateParameters } from '../types/engine.js';
|
|
5
7
|
/**
|
|
6
8
|
* The SSR commerce engine.
|
|
7
9
|
*
|
|
@@ -13,7 +15,7 @@ export interface SSRCommerceEngine extends CommerceEngine {
|
|
|
13
15
|
*/
|
|
14
16
|
waitForRequestCompletedAction(): Promise<Action>[];
|
|
15
17
|
}
|
|
16
|
-
export declare const buildFactory: <TControllerDefinitions extends CommerceControllerDefinitionsMap>(controllerDefinitions: TControllerDefinitions
|
|
18
|
+
export declare const buildFactory: <TControllerDefinitions extends CommerceControllerDefinitionsMap>(controllerDefinitions: AugmentedControllerDefinition<TControllerDefinitions>, options: CommerceEngineDefinitionOptions<TControllerDefinitions>) => <TSolutionType extends SolutionType>(solutionType: TSolutionType) => (...[buildOptions]: FetchStaticStateParameters<TControllerDefinitions, TSolutionType> | HydrateStaticStateParameters<TControllerDefinitions, TSolutionType>) => Promise<{
|
|
17
19
|
engine: SSRCommerceEngine;
|
|
18
|
-
controllers:
|
|
20
|
+
controllers: InferControllersMapFromDefinition<TControllerDefinitions, TSolutionType> & BakedInControllers;
|
|
19
21
|
}>;
|
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
import type { SolutionType } from '../types/controller-constants.js';
|
|
2
2
|
import type { AugmentedControllerDefinition } from '../types/controller-definitions.js';
|
|
3
|
-
import type { CommerceControllerDefinitionsMap, CommerceEngineDefinitionOptions,
|
|
4
|
-
export declare function hydratedStaticStateFactory<TControllerDefinitions extends CommerceControllerDefinitionsMap>(controllerDefinitions: AugmentedControllerDefinition<TControllerDefinitions>, options: CommerceEngineDefinitionOptions<TControllerDefinitions>): (solutionType:
|
|
3
|
+
import type { CommerceControllerDefinitionsMap, CommerceEngineDefinitionOptions, HydrateStaticStateParameters } from '../types/engine.js';
|
|
4
|
+
export declare function hydratedStaticStateFactory<TControllerDefinitions extends CommerceControllerDefinitionsMap>(controllerDefinitions: AugmentedControllerDefinition<TControllerDefinitions>, options: CommerceEngineDefinitionOptions<TControllerDefinitions>): <TSolutionType extends SolutionType>(solutionType: TSolutionType) => (...params: HydrateStaticStateParameters<TControllerDefinitions, TSolutionType>) => Promise<{
|
|
5
|
+
engine: import("./build-factory.js").SSRCommerceEngine;
|
|
6
|
+
controllers: import("../types/controller-inference.js").InferControllersMapFromDefinition<TControllerDefinitions, TSolutionType> & import("../types/controller-definitions.js").BakedInControllers;
|
|
7
|
+
}>;
|
|
@@ -1,2 +1,4 @@
|
|
|
1
|
+
import { SolutionType } from '../types/controller-constants.js';
|
|
2
|
+
import type { AugmentedControllerDefinition } from '../types/controller-definitions.js';
|
|
1
3
|
import type { CommerceControllerDefinitionsMap, CommerceEngineDefinitionOptions, HydrateStaticStateFunction } from '../types/engine.js';
|
|
2
|
-
export declare function hydratedRecommendationStaticStateFactory<TControllerDefinitions extends CommerceControllerDefinitionsMap>(controllerDefinitions: TControllerDefinitions
|
|
4
|
+
export declare function hydratedRecommendationStaticStateFactory<TControllerDefinitions extends CommerceControllerDefinitionsMap>(controllerDefinitions: AugmentedControllerDefinition<TControllerDefinitions>, options: CommerceEngineDefinitionOptions<TControllerDefinitions>): HydrateStaticStateFunction<TControllerDefinitions, SolutionType.recommendation>;
|
|
@@ -1,3 +1,13 @@
|
|
|
1
|
+
import type { UnknownAction } from '@reduxjs/toolkit';
|
|
2
|
+
import { SolutionType } from '../types/controller-constants.js';
|
|
1
3
|
import type { AugmentedControllerDefinition } from '../types/controller-definitions.js';
|
|
2
|
-
import type { CommerceControllerDefinitionsMap, CommerceEngineDefinitionOptions,
|
|
3
|
-
export declare function fetchRecommendationStaticStateFactory<TControllerDefinitions extends CommerceControllerDefinitionsMap>(controllerDefinitions: AugmentedControllerDefinition<TControllerDefinitions>, options: CommerceEngineDefinitionOptions<TControllerDefinitions>):
|
|
4
|
+
import type { CommerceControllerDefinitionsMap, CommerceEngineDefinitionOptions, FetchStaticStateParameters } from '../types/engine.js';
|
|
5
|
+
export declare function fetchRecommendationStaticStateFactory<TControllerDefinitions extends CommerceControllerDefinitionsMap>(controllerDefinitions: AugmentedControllerDefinition<TControllerDefinitions>, options: CommerceEngineDefinitionOptions<TControllerDefinitions>): (...params: FetchStaticStateParameters<TControllerDefinitions, SolutionType.recommendation>) => Promise<{
|
|
6
|
+
controllers: import("../types/controller-inference.js").InferControllerStaticStateMapFromDefinitionsWithSolutionType<TControllerDefinitions, SolutionType.recommendation> & import("../types/controller-definitions.js").FilteredBakedInControllers<SolutionType.recommendation>;
|
|
7
|
+
searchActions: UnknownAction[];
|
|
8
|
+
context: import("../../../commerce.index.js").ContextOptions;
|
|
9
|
+
searchParams?: import("../../../commerce.index.js").ParameterManagerState<import("../../../commerce.index.js").Parameters>["parameters"];
|
|
10
|
+
cart?: import("../../../commerce.index.js").CartInitialState;
|
|
11
|
+
productId?: string;
|
|
12
|
+
recommendations: Extract<keyof TControllerDefinitions, { [K in keyof TControllerDefinitions]: import("../../common/types/utilities.js").HasKey<TControllerDefinitions[K], SolutionType.recommendation> extends never ? never : import("../../common/types/utilities.js").HasKey<TControllerDefinitions[K], typeof import("../types/controller-constants.js").recommendationInternalOptionKey> extends never ? never : K; }[keyof TControllerDefinitions]>[];
|
|
13
|
+
}>;
|
|
@@ -1,4 +1,9 @@
|
|
|
1
|
+
import type { UnknownAction } from '@reduxjs/toolkit';
|
|
2
|
+
import type { BuildConfig } from '../types/build.js';
|
|
1
3
|
import { SolutionType } from '../types/controller-constants.js';
|
|
2
4
|
import type { AugmentedControllerDefinition } from '../types/controller-definitions.js';
|
|
3
|
-
import type { CommerceControllerDefinitionsMap, CommerceEngineDefinitionOptions,
|
|
4
|
-
export declare function fetchStaticStateFactory<TControllerDefinitions extends CommerceControllerDefinitionsMap>(controllerDefinitions: AugmentedControllerDefinition<TControllerDefinitions>, options: CommerceEngineDefinitionOptions<TControllerDefinitions>): (solutionType:
|
|
5
|
+
import type { CommerceControllerDefinitionsMap, CommerceEngineDefinitionOptions, FetchStaticStateParameters } from '../types/engine.js';
|
|
6
|
+
export declare function fetchStaticStateFactory<TControllerDefinitions extends CommerceControllerDefinitionsMap>(controllerDefinitions: AugmentedControllerDefinition<TControllerDefinitions>, options: CommerceEngineDefinitionOptions<TControllerDefinitions>): <TSolutionType extends SolutionType>(solutionType: TSolutionType) => (...params: FetchStaticStateParameters<TControllerDefinitions, TSolutionType>) => Promise<BuildConfig<TControllerDefinitions, TSolutionType> & {
|
|
7
|
+
controllers: import("../types/controller-inference.js").InferControllerStaticStateMapFromDefinitionsWithSolutionType<TControllerDefinitions, TSolutionType> & import("../types/controller-definitions.js").FilteredBakedInControllers<TSolutionType>;
|
|
8
|
+
searchActions: UnknownAction[];
|
|
9
|
+
}>;
|
|
@@ -1,13 +1,11 @@
|
|
|
1
1
|
import type { CommerceEngineOptions } from '../../../app/commerce-engine/commerce-engine.js';
|
|
2
2
|
import type { Controller } from '../../../controllers/controller/headless-controller.js';
|
|
3
|
-
import type {
|
|
4
|
-
import type { HasKey, OptionsTuple } from '../../common/types/utilities.js';
|
|
3
|
+
import type { HasKey } from '../../common/types/utilities.js';
|
|
5
4
|
import type { CartInitialState } from '../controllers/cart/headless-cart.ssr.js';
|
|
6
5
|
import type { ContextOptions } from '../controllers/context/headless-context.ssr.js';
|
|
7
6
|
import type { ParameterManagerState, Parameters } from '../controllers/parameter-manager/headless-core-parameter-manager.ssr.js';
|
|
8
7
|
import type { SolutionType } from './controller-constants.js';
|
|
9
|
-
import type {
|
|
10
|
-
import type { CommerceEngineDefinitionBuildResult } from './engine.js';
|
|
8
|
+
import type { ControllerDefinitionsMap, IsRecommendationController } from './controller-definitions.js';
|
|
11
9
|
export interface SearchBuildConfig extends CommonBuildConfig {
|
|
12
10
|
searchParams: ParameterManagerState<Parameters & {
|
|
13
11
|
query: string;
|
|
@@ -83,7 +81,3 @@ export interface CommonBuildConfig {
|
|
|
83
81
|
cart?: CartInitialState;
|
|
84
82
|
}
|
|
85
83
|
export type BuildConfig<TControllers extends ControllerDefinitionsMap<Controller>, TSolutionType extends SolutionType> = TSolutionType extends SolutionType.search ? SearchBuildConfig : TSolutionType extends SolutionType.listing ? ListingBuildConfig : TSolutionType extends SolutionType.recommendation ? RecommendationBuildConfig<TControllers> : TSolutionType extends SolutionType.standalone ? CommonBuildConfig : never;
|
|
86
|
-
/**
|
|
87
|
-
* @internal
|
|
88
|
-
*/
|
|
89
|
-
export type Build<TControllersMap extends ControllersMap, TControllersProps extends ControllersPropsMap, TControllersDefinitionsMap extends ControllerDefinitionsMap<Controller>, TSolutionType extends SolutionType> = (...params: OptionsTuple<BuildConfig<TControllersDefinitionsMap, TSolutionType> & CommerceEngineDefinitionControllersPropsOption<TControllersDefinitionsMap, TControllersProps, TSolutionType>>) => Promise<CommerceEngineDefinitionBuildResult<TControllersMap>>;
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import type { Controller } from '../../../controllers/controller/headless-controller.js';
|
|
2
|
-
import type { InvalidControllerDefinition } from '../../common/errors.js';
|
|
3
2
|
import type { InferControllerStaticStateFromController, InferControllerStaticStateMapFromControllers } from '../../common/types/controller-inference.js';
|
|
4
3
|
import type { ControllersPropsMap } from '../../common/types/controllers.js';
|
|
5
4
|
import type { HasKey, HasRequiredKeys, OptionsTuple } from '../../common/types/utilities.js';
|
|
@@ -8,9 +7,8 @@ import type { ContextDefinition } from '../controllers/context/headless-context.
|
|
|
8
7
|
import type { ParameterManagerDefinition } from '../controllers/parameter-manager/headless-core-parameter-manager.ssr.js';
|
|
9
8
|
import type { SSRCommerceEngine } from '../factories/build-factory.js';
|
|
10
9
|
import { type recommendationInternalOptionKey, SolutionType } from './controller-constants.js';
|
|
11
|
-
import type { ListingAndStandaloneController,
|
|
10
|
+
import type { ListingAndStandaloneController, NonRecommendationController, RecommendationOnlyController, SearchAndListingController, SearchOnlyController, UniversalController } from './controller-scopes.js';
|
|
12
11
|
import type { HydratedState } from './hydrate-static-state.js';
|
|
13
|
-
import type { Kind } from './kind.js';
|
|
14
12
|
import type { HasSolutionType } from './utilities.js';
|
|
15
13
|
export type { HydratedState, OptionsTuple, InferControllerStaticStateFromController, InferControllerStaticStateMapFromControllers, };
|
|
16
14
|
export interface ControllerDefinitionWithoutProps<TController extends Controller> {
|
|
@@ -23,9 +21,6 @@ export interface ControllerDefinitionWithoutProps<TController extends Controller
|
|
|
23
21
|
*/
|
|
24
22
|
build(engine: SSRCommerceEngine, solutionType?: SolutionType): TController;
|
|
25
23
|
}
|
|
26
|
-
export interface ControllerWithKind extends Controller {
|
|
27
|
-
_kind: Kind;
|
|
28
|
-
}
|
|
29
24
|
export interface ControllerDefinitionWithProps<TController extends Controller, TProps> {
|
|
30
25
|
/**
|
|
31
26
|
* Creates an instance of the given controller.
|
|
@@ -35,7 +30,7 @@ export interface ControllerDefinitionWithProps<TController extends Controller, T
|
|
|
35
30
|
* @param solutionType - The type of solution for which the controller should be built (e.g. search or listing). This option only applies to sub-controllers.
|
|
36
31
|
* @returns The created controller instance.
|
|
37
32
|
*/
|
|
38
|
-
buildWithProps(engine: SSRCommerceEngine, props?: TProps, solutionType?: SolutionType): TController
|
|
33
|
+
buildWithProps(engine: SSRCommerceEngine, props?: TProps, solutionType?: SolutionType): TController;
|
|
39
34
|
}
|
|
40
35
|
interface SolutionTypeAvailability {
|
|
41
36
|
[SolutionType.search]?: boolean;
|
|
@@ -48,10 +43,7 @@ export interface ControllerDefinitionsMap<TController extends Controller> {
|
|
|
48
43
|
[customName: string]: ControllerDefinition<TController>;
|
|
49
44
|
}
|
|
50
45
|
type BakedInControllerDefinitions = {
|
|
51
|
-
parameterManager: ParameterManagerDefinition
|
|
52
|
-
listing: true;
|
|
53
|
-
search: true;
|
|
54
|
-
}>;
|
|
46
|
+
parameterManager: ParameterManagerDefinition;
|
|
55
47
|
context: ContextDefinition;
|
|
56
48
|
cart: CartDefinition;
|
|
57
49
|
};
|
|
@@ -93,51 +85,10 @@ export type IsRecommendationController<TController extends ControllerDefinition<
|
|
|
93
85
|
type DefaultControllerProps<TControllers extends ControllerDefinitionsMap<Controller>, TControllersPropsMap extends ControllersPropsMap, K extends keyof TControllers> = {
|
|
94
86
|
[I in keyof TControllersPropsMap as I extends K ? I : never]: TControllersPropsMap[I];
|
|
95
87
|
};
|
|
96
|
-
export interface ControllerDefinitionOption {
|
|
97
|
-
/**
|
|
98
|
-
* Whether the controller will be used in a product listing context.
|
|
99
|
-
* @defaultValue true
|
|
100
|
-
*/
|
|
101
|
-
listing?: boolean;
|
|
102
|
-
/**
|
|
103
|
-
* Whether the controller will be used in a search page context.
|
|
104
|
-
* @defaultValue true
|
|
105
|
-
*/
|
|
106
|
-
search?: boolean;
|
|
107
|
-
}
|
|
108
88
|
export type SearchOnlyControllerDefinitionWithoutProps<TController extends Controller> = ControllerDefinitionWithoutProps<TController> & SearchOnlyController;
|
|
109
|
-
type SearchOnlyControllerDefinitionWithProps<TController extends Controller, TProps> = ControllerDefinitionWithProps<TController, TProps> & SearchOnlyController;
|
|
110
89
|
export type ListingAndStandaloneControllerWithoutProps<TController extends Controller> = ControllerDefinitionWithoutProps<TController> & ListingAndStandaloneController;
|
|
111
|
-
type ListingOnlyControllerDefinitionWithoutProps<TController extends Controller> = ControllerDefinitionWithoutProps<TController> & ListingOnlyController;
|
|
112
|
-
type ListingOnlyControllerDefinitionWithProps<TController extends Controller, TProps> = ControllerDefinitionWithProps<TController, TProps> & ListingOnlyController;
|
|
113
90
|
export type RecommendationOnlyControllerDefinitionWithProps<TController extends Controller, TProps> = ControllerDefinitionWithProps<TController, TProps> & RecommendationOnlyController;
|
|
114
91
|
export type NonRecommendationControllerDefinitionWithoutProps<TController extends Controller> = ControllerDefinitionWithoutProps<TController> & NonRecommendationController;
|
|
115
92
|
export type UniversalControllerDefinitionWithProps<TController extends Controller, TProps> = ControllerDefinitionWithProps<TController, TProps> & UniversalController;
|
|
116
93
|
export type SearchAndListingControllerDefinitionWithoutProps<TController extends Controller> = ControllerDefinitionWithoutProps<TController> & SearchAndListingController;
|
|
117
|
-
type SearchAndListingControllerDefinitionWithProps<TController extends Controller, TProps> = ControllerDefinitionWithProps<TController, TProps> & SearchAndListingController;
|
|
118
|
-
export type SubControllerDefinitionWithoutProps<TController extends Controller, TDefinition extends ControllerDefinitionOption | undefined> = TDefinition extends {
|
|
119
|
-
listing?: true;
|
|
120
|
-
search?: true;
|
|
121
|
-
} | undefined ? SearchAndListingControllerDefinitionWithoutProps<TController> : TDefinition extends {
|
|
122
|
-
listing?: true;
|
|
123
|
-
search?: false;
|
|
124
|
-
} ? ListingOnlyControllerDefinitionWithoutProps<TController> : TDefinition extends {
|
|
125
|
-
listing?: false;
|
|
126
|
-
search?: true;
|
|
127
|
-
} ? SearchOnlyControllerDefinitionWithoutProps<TController> : TDefinition extends {
|
|
128
|
-
listing: false;
|
|
129
|
-
search: false;
|
|
130
|
-
} ? InvalidControllerDefinition : never;
|
|
131
|
-
export type SubControllerDefinitionWithProps<TController extends Controller, TDefinition extends ControllerDefinitionOption | undefined, TProps> = TDefinition extends {
|
|
132
|
-
listing?: true;
|
|
133
|
-
search?: true;
|
|
134
|
-
} | undefined ? SearchAndListingControllerDefinitionWithProps<TController, TProps> : TDefinition extends {
|
|
135
|
-
listing?: true;
|
|
136
|
-
search?: false;
|
|
137
|
-
} ? ListingOnlyControllerDefinitionWithProps<TController, TProps> : TDefinition extends {
|
|
138
|
-
listing?: false;
|
|
139
|
-
search?: true;
|
|
140
|
-
} ? SearchOnlyControllerDefinitionWithProps<TController, TProps> : TDefinition extends {
|
|
141
|
-
listing: false;
|
|
142
|
-
search: false;
|
|
143
|
-
} ? InvalidControllerDefinition : never;
|
|
94
|
+
export type SearchAndListingControllerDefinitionWithProps<TController extends Controller, TProps> = ControllerDefinitionWithProps<TController, TProps> & SearchAndListingController;
|
|
@@ -37,12 +37,6 @@ export interface SearchOnlyController {
|
|
|
37
37
|
*/
|
|
38
38
|
[SolutionType.search]: true;
|
|
39
39
|
}
|
|
40
|
-
export interface ListingOnlyController {
|
|
41
|
-
/**
|
|
42
|
-
* @internal
|
|
43
|
-
*/
|
|
44
|
-
[SolutionType.listing]: true;
|
|
45
|
-
}
|
|
46
40
|
export interface RecommendationOnlyController {
|
|
47
41
|
/**
|
|
48
42
|
* @internal
|
|
@@ -1,19 +1,16 @@
|
|
|
1
1
|
import type { UnknownAction } from '@reduxjs/toolkit';
|
|
2
2
|
import type { NavigatorContextProvider } from '../../../app/navigator-context-provider.js';
|
|
3
3
|
import type { Controller } from '../../../controllers/controller/headless-controller.js';
|
|
4
|
-
import type {
|
|
4
|
+
import type { ControllersMap } from '../../common/types/controllers.js';
|
|
5
|
+
import type { EngineStaticState } from '../../common/types/engine.js';
|
|
5
6
|
import type { SSRCommerceEngine } from '../factories/build-factory.js';
|
|
6
|
-
import type {
|
|
7
|
+
import type { SSRCommerceEngineOptions } from './build.js';
|
|
7
8
|
import type { SolutionType } from './controller-constants.js';
|
|
8
9
|
import type { BakedInControllers, ControllerDefinitionsMap } from './controller-definitions.js';
|
|
9
10
|
import type { InferControllerPropsMapFromDefinitions, InferControllerStaticStateMapFromDefinitionsWithSolutionType, InferControllersMapFromDefinition } from './controller-inference.js';
|
|
10
11
|
import type { FetchStaticState } from './fetch-static-state.js';
|
|
11
12
|
import type { HydrateStaticState, HydrateStaticStateOptions } from './hydrate-static-state.js';
|
|
12
|
-
export type { HydrateStaticState, HydrateStaticStateOptions, FetchStaticState };
|
|
13
|
-
export interface EngineStaticState<TSearchAction extends UnknownAction, TControllers extends ControllerStaticStateMap> {
|
|
14
|
-
searchActions: TSearchAction[];
|
|
15
|
-
controllers: TControllers;
|
|
16
|
-
}
|
|
13
|
+
export type { HydrateStaticState, HydrateStaticStateOptions, FetchStaticState, EngineStaticState, };
|
|
17
14
|
type ReservedControllerNames = 'context' | 'parameterManager' | 'cart';
|
|
18
15
|
type ValidateControllerNames<T extends ControllerDefinitionsMap<Controller>> = {
|
|
19
16
|
[K in keyof T]: K extends ReservedControllerNames ? `ERROR: Controller name "${K & string}" is reserved and cannot be used. Reserved names are: context, parameterManager, cart. Please choose a different controller name.` : T[K];
|
|
@@ -60,14 +57,8 @@ export interface CommerceEngineDefinitionBuildResult<TControllers extends Contro
|
|
|
60
57
|
controllers: TControllers & BakedInControllers;
|
|
61
58
|
}
|
|
62
59
|
export type CommerceControllerDefinitionsMap = ControllerDefinitionsMap<Controller>;
|
|
63
|
-
type Definition<TControllerDefinitions extends CommerceControllerDefinitionsMap> = CommerceEngineDefinition<TControllerDefinitions,
|
|
64
|
-
|
|
65
|
-
export type HydrateStaticStateFunction<TControllerDefinitions extends CommerceControllerDefinitionsMap> = Definition<TControllerDefinitions>['hydrateStaticState'];
|
|
66
|
-
export type
|
|
67
|
-
export type
|
|
68
|
-
export type HydrateStaticStateParameters<TControllerDefinitions extends CommerceControllerDefinitionsMap> = Parameters<HydrateStaticStateFunction<TControllerDefinitions>>;
|
|
69
|
-
type Controllers<TControllerDefinitions extends CommerceControllerDefinitionsMap> = InferControllersMapFromDefinition<TControllerDefinitions, SolutionType>;
|
|
70
|
-
export type BuildResult<TControllerDefinitions extends CommerceControllerDefinitionsMap> = {
|
|
71
|
-
engine: SSRCommerceEngine;
|
|
72
|
-
controllers: Controllers<TControllerDefinitions> & BakedInControllers;
|
|
73
|
-
};
|
|
60
|
+
type Definition<TControllerDefinitions extends CommerceControllerDefinitionsMap, TSolutionType extends SolutionType> = CommerceEngineDefinition<TControllerDefinitions, TSolutionType>;
|
|
61
|
+
type FetchStaticStateFunction<TControllerDefinitions extends CommerceControllerDefinitionsMap, TSolutionType extends SolutionType> = Definition<TControllerDefinitions, TSolutionType>['fetchStaticState'];
|
|
62
|
+
export type HydrateStaticStateFunction<TControllerDefinitions extends CommerceControllerDefinitionsMap, TSolutionType extends SolutionType> = Definition<TControllerDefinitions, TSolutionType>['hydrateStaticState'];
|
|
63
|
+
export type FetchStaticStateParameters<TControllerDefinitions extends CommerceControllerDefinitionsMap, TSolutionType extends SolutionType> = Parameters<FetchStaticStateFunction<TControllerDefinitions, TSolutionType>>;
|
|
64
|
+
export type HydrateStaticStateParameters<TControllerDefinitions extends CommerceControllerDefinitionsMap, TSolutionType extends SolutionType> = Parameters<HydrateStaticStateFunction<TControllerDefinitions, TSolutionType>>;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import type { UnknownAction } from '@reduxjs/toolkit';
|
|
2
2
|
import type { Controller } from '../../../controllers/controller/headless-controller.js';
|
|
3
3
|
import type { ControllerStaticStateMap, ControllersPropsMap } from '../../common/types/controllers.js';
|
|
4
|
+
import type { EngineStaticState } from '../../common/types/engine.js';
|
|
4
5
|
import type { BuildConfig } from './build.js';
|
|
5
6
|
import type { SolutionType } from './controller-constants.js';
|
|
6
7
|
import type { CommerceEngineDefinitionControllersPropsOption, ControllerDefinitionsMap, FilteredBakedInControllers, OptionsTuple } from './controller-definitions.js';
|
|
7
|
-
import type { EngineStaticState } from './engine.js';
|
|
8
8
|
/**
|
|
9
9
|
* Executes only the initial search for a given configuration, then returns a resumable snapshot of engine state along with the state of the controllers.
|
|
10
10
|
*
|
|
@@ -20,5 +20,5 @@ export declare function filterRecommendationControllers<TControllerDefinitions e
|
|
|
20
20
|
* @param controllers - A record of all controllers where the key is the controller name and the value is the controller instance.
|
|
21
21
|
* @param controllerNames - A list of all recommendation controllers to refresh
|
|
22
22
|
*/
|
|
23
|
-
refresh(whitelist?:
|
|
23
|
+
refresh(whitelist?: Array<keyof TControllerDefinitions>): void;
|
|
24
24
|
};
|
|
@@ -1,19 +1,14 @@
|
|
|
1
1
|
import type { Controller } from '../../../controllers/controller/headless-controller.js';
|
|
2
|
-
import type { ControllerWithKind } from '../../commerce/types/controller-definitions.js';
|
|
3
|
-
import type { Kind } from '../../commerce/types/kind.js';
|
|
4
2
|
export type StaticControllerState = {
|
|
5
3
|
initialState?: Controller['state'];
|
|
6
|
-
|
|
7
|
-
} & Pick<ControllerWithKind, 'state'>;
|
|
4
|
+
} & Pick<Controller, 'state'>;
|
|
8
5
|
/**
|
|
9
6
|
* Builder class for creating static controller
|
|
10
7
|
*/
|
|
11
8
|
declare class StaticControllerBuilder {
|
|
12
9
|
private _state?;
|
|
13
|
-
private _kind?;
|
|
14
10
|
private _initialState?;
|
|
15
11
|
withState(state: StaticControllerState['state']): this;
|
|
16
|
-
withKind(kind: Kind): this;
|
|
17
12
|
withInitialState(initialState: StaticControllerState['initialState']): this;
|
|
18
13
|
/**
|
|
19
14
|
* Builds and returns the static controller state object
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { UnknownAction } from '@reduxjs/toolkit';
|
|
2
2
|
import type { ControllerStaticStateMap } from './controllers.js';
|
|
3
3
|
export interface EngineStaticState<TSearchAction extends UnknownAction, TControllers extends ControllerStaticStateMap> {
|
|
4
|
-
|
|
4
|
+
searchActions: TSearchAction[];
|
|
5
5
|
controllers: TControllers;
|
|
6
6
|
}
|
|
7
7
|
export type InferStaticState<T extends {
|
|
@@ -7,5 +7,4 @@ type ExtractRequiredOptions<TOptions> = {
|
|
|
7
7
|
[TKey in keyof TOptions as Pick<TOptions, TKey> extends Required<Pick<TOptions, TKey>> ? TKey : never]: TOptions[TKey];
|
|
8
8
|
};
|
|
9
9
|
export type OptionsTuple<TOptions> = HasKeys<TOptions> extends false ? [] : HasKeys<ExtractRequiredOptions<TOptions>> extends false ? [options?: TOptions] : [options: TOptions];
|
|
10
|
-
export type OptionsExtender<TOptions> = (options: TOptions) => TOptions | Promise<TOptions>;
|
|
11
10
|
export {};
|
|
@@ -9,7 +9,7 @@ export declare function buildControllerDefinitions<TControllerDefinitionsMap ext
|
|
|
9
9
|
engine: TEngine;
|
|
10
10
|
propsMap?: InferControllerPropsMapFromDefinitions<TControllerDefinitionsMap>;
|
|
11
11
|
}): InferControllersMapFromDefinition<TControllerDefinitionsMap>;
|
|
12
|
-
export declare function createStaticState<TSearchAction extends UnknownAction, TControllerDefinitions extends ControllerDefinitionsMap<CoreEngine | CoreEngineNext, Controller>>({
|
|
13
|
-
|
|
12
|
+
export declare function createStaticState<TSearchAction extends UnknownAction, TControllerDefinitions extends ControllerDefinitionsMap<CoreEngine | CoreEngineNext, Controller>>({ searchActions, controllers, }: {
|
|
13
|
+
searchActions: TSearchAction[];
|
|
14
14
|
controllers: InferControllersMapFromDefinition<TControllerDefinitions>;
|
|
15
15
|
}): EngineStaticState<TSearchAction, InferControllerStaticStateMapFromDefinitions<TControllerDefinitions>>;
|
|
@@ -1,12 +1,8 @@
|
|
|
1
1
|
import type { CoreEngine, CoreEngineNext } from '../../../app/engine.js';
|
|
2
2
|
import type { ControllersMap, ControllersPropsMap } from '../../common/types/controllers.js';
|
|
3
|
-
import type {
|
|
3
|
+
import type { OptionsTuple } from '../../common/types/utilities.js';
|
|
4
4
|
import type { SearchEngineDefinitionBuildResult, SearchEngineDefinitionControllersPropsOption } from './engine.js';
|
|
5
|
-
interface BuildOptions<TEngineOptions> {
|
|
6
|
-
extend?: OptionsExtender<TEngineOptions>;
|
|
7
|
-
}
|
|
8
5
|
/**
|
|
9
6
|
* @internal
|
|
10
7
|
*/
|
|
11
|
-
export type Build<TEngine extends CoreEngine | CoreEngineNext,
|
|
12
|
-
export {};
|
|
8
|
+
export type Build<TEngine extends CoreEngine | CoreEngineNext, TControllersMap extends ControllersMap, TControllersProps extends ControllersPropsMap> = (...params: OptionsTuple<SearchEngineDefinitionControllersPropsOption<TControllersProps>>) => Promise<SearchEngineDefinitionBuildResult<TEngine, TControllersMap>>;
|
|
@@ -11,7 +11,7 @@ import type { ControllerDefinitionsMap } from './controller-definition.js';
|
|
|
11
11
|
import type { InferControllerPropsMapFromDefinitions, InferControllerStaticStateMapFromDefinitions, InferControllersMapFromDefinition } from './controller-inference.js';
|
|
12
12
|
import type { FetchStaticState } from './fetch-static-state.js';
|
|
13
13
|
import type { HydrateStaticState } from './hydrate-static-state.js';
|
|
14
|
-
export type EngineBuildResult<TEngine extends CoreEngine | CoreEngineNext, TControllers extends ControllerDefinitionsMap<TEngine, Controller
|
|
14
|
+
export type EngineBuildResult<TEngine extends CoreEngine | CoreEngineNext, TControllers extends ControllerDefinitionsMap<TEngine, Controller>> = Build<TEngine, InferControllersMapFromDefinition<TControllers>, InferControllerPropsMapFromDefinitions<TControllers>>;
|
|
15
15
|
/**
|
|
16
16
|
* The options to create a search engine definition in SSR.
|
|
17
17
|
*
|
|
@@ -5,7 +5,7 @@ import type { OptionsTuple } from '../../common/types/utilities.js';
|
|
|
5
5
|
import type { SearchEngineDefinitionBuildResult, SearchEngineDefinitionControllersPropsOption } from './engine.js';
|
|
6
6
|
export type HydratedState<TEngine extends CoreEngine | CoreEngineNext, TControllers extends ControllersMap> = SearchEngineDefinitionBuildResult<TEngine, TControllers>;
|
|
7
7
|
interface HydrateStaticStateOptions<TSearchAction> {
|
|
8
|
-
|
|
8
|
+
searchActions: TSearchAction[];
|
|
9
9
|
}
|
|
10
10
|
/**
|
|
11
11
|
* Creates a new engine from the snapshot of the engine created in SSR with fetchStaticState.
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import type { SearchEngine } from '../app/search-engine/search-engine.js';
|
|
2
2
|
import type { Controller } from '../controllers/controller/headless-controller.js';
|
|
3
|
-
import type { Kind } from '../ssr/commerce/types/kind.js';
|
|
4
3
|
import type { ControllerDefinitionWithoutProps, ControllerDefinitionWithProps } from '../ssr/common/types/controllers.js';
|
|
5
4
|
import { recommendationInternalOptionKey } from '../ssr-next/commerce/types/controller-constants.js';
|
|
6
5
|
interface MockController {
|
|
@@ -29,7 +28,6 @@ export declare function defineMockCommerceControllerWithProps(options?: Solution
|
|
|
29
28
|
buildWithProps: import("vitest").Mock<(engine: any, props: any) => {
|
|
30
29
|
state: {};
|
|
31
30
|
subscribe(listener: () => void): import("redux").Unsubscribe;
|
|
32
|
-
_kind: Kind;
|
|
33
31
|
}>;
|
|
34
32
|
listing: boolean;
|
|
35
33
|
search: boolean;
|
|
@@ -44,7 +42,6 @@ export declare function defineMockRecommendationDefinition(slotId: string): {
|
|
|
44
42
|
buildWithProps: import("vitest").Mock<(engine: any, props: any) => {
|
|
45
43
|
state: {};
|
|
46
44
|
subscribe(listener: () => void): import("redux").Unsubscribe;
|
|
47
|
-
_kind: Kind;
|
|
48
45
|
}>;
|
|
49
46
|
};
|
|
50
47
|
export {};
|