@coveo/quantic 3.33.1 → 3.33.3
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/lwc/quanticSearchBoxSuggestionsList/e2e/quanticSearchBoxSuggestionsList.e2e.ts +0 -17
- package/force-app/main/default/staticresources/coveoheadless/case-assist/headless.js +8 -8
- package/force-app/main/default/staticresources/coveoheadless/definitions/features/generated-answer/generated-answer-analytics-actions.d.ts +1 -0
- package/force-app/main/default/staticresources/coveoheadless/definitions/features/generated-answer/generated-answer-insight-analytics-actions.d.ts +1 -0
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/types/controller-definitions.d.ts +1 -1
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/search/controller-utils.d.ts +6 -4
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/search/engine/search-engine.ssr.d.ts +13 -25
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/search/factories/build-factory.d.ts +8 -0
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/search/factories/hydrated-state-factory.d.ts +5 -0
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/search/factories/static-state-factory.d.ts +3 -0
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/search/types/build.d.ts +16 -7
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/search/types/controller-definition.d.ts +19 -0
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/search/types/engine.d.ts +26 -8
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/search/types/fetch-static-state.d.ts +2 -1
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/search/utils/controller-wiring.d.ts +21 -0
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/search/utils/engine-wiring.d.ts +4 -0
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next.index.d.ts +1 -1
- package/force-app/main/default/staticresources/coveoheadless/definitions/test/mock-ssr-controller-definitions.d.ts +12 -0
- package/force-app/main/default/staticresources/coveoheadless/headless.js +10 -10
- 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 +3 -3
|
@@ -18,6 +18,7 @@ export declare const logLikeGeneratedAnswer: () => CustomAction;
|
|
|
18
18
|
export declare const logDislikeGeneratedAnswer: () => CustomAction;
|
|
19
19
|
export declare const logGeneratedAnswerFeedback: (feedback: GeneratedAnswerFeedback) => CustomAction;
|
|
20
20
|
export declare const logGeneratedAnswerStreamEnd: (answerGenerated: boolean) => CustomAction;
|
|
21
|
+
export declare const logGeneratedAnswerResponseLinked: () => CustomAction;
|
|
21
22
|
export declare const logGeneratedAnswerShowAnswers: () => CustomAction;
|
|
22
23
|
export declare const logGeneratedAnswerHideAnswers: () => CustomAction;
|
|
23
24
|
export declare const logGeneratedAnswerExpand: () => CustomAction;
|
|
@@ -7,6 +7,7 @@ export declare const logLikeGeneratedAnswer: () => InsightAction;
|
|
|
7
7
|
export declare const logDislikeGeneratedAnswer: () => InsightAction;
|
|
8
8
|
export declare const logGeneratedAnswerFeedback: (feedback: GeneratedAnswerFeedback) => InsightAction;
|
|
9
9
|
export declare const logGeneratedAnswerStreamEnd: (answerGenerated: boolean) => InsightAction;
|
|
10
|
+
export declare const logGeneratedAnswerResponseLinked: () => InsightAction;
|
|
10
11
|
export declare const logGeneratedAnswerShowAnswers: () => InsightAction;
|
|
11
12
|
export declare const logGeneratedAnswerHideAnswers: () => InsightAction;
|
|
12
13
|
export declare const logGeneratedAnswerExpand: () => InsightAction;
|
|
@@ -51,7 +51,7 @@ type BakedInControllerDefinitions = {
|
|
|
51
51
|
* Map of baked-in controllers
|
|
52
52
|
*/
|
|
53
53
|
export type BakedInControllers = {
|
|
54
|
-
[K in keyof BakedInControllerDefinitions]: BakedInControllerDefinitions[K]['buildWithProps']
|
|
54
|
+
[K in keyof BakedInControllerDefinitions]: ReturnType<BakedInControllerDefinitions[K]['buildWithProps']>;
|
|
55
55
|
};
|
|
56
56
|
/**
|
|
57
57
|
* A dynamically filtered map of baked-in controller definitions based on solution type compatibility.
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import type { UnknownAction } from '@reduxjs/toolkit';
|
|
2
2
|
import type { CoreEngine, CoreEngineNext } from '../../app/engine.js';
|
|
3
3
|
import type { Controller } from '../../controllers/controller/headless-controller.js';
|
|
4
|
-
import type {
|
|
5
|
-
import type { ControllerDefinitionsMap } from './types/controller-definition.js';
|
|
4
|
+
import type { BakedInSearchControllers, ControllerDefinitionsMap } from './types/controller-definition.js';
|
|
6
5
|
import type { InferControllerPropsMapFromDefinitions, InferControllerStaticStateMapFromDefinitions, InferControllersMapFromDefinition } from './types/controller-inference.js';
|
|
7
6
|
export declare function buildControllerDefinitions<TControllerDefinitionsMap extends ControllerDefinitionsMap<CoreEngine | CoreEngineNext, Controller>, TEngine extends CoreEngine | CoreEngineNext>({ definitionsMap, engine, propsMap, }: {
|
|
8
7
|
definitionsMap: TControllerDefinitionsMap;
|
|
@@ -11,5 +10,8 @@ export declare function buildControllerDefinitions<TControllerDefinitionsMap ext
|
|
|
11
10
|
}): InferControllersMapFromDefinition<TControllerDefinitionsMap>;
|
|
12
11
|
export declare function createStaticState<TSearchAction extends UnknownAction, TControllerDefinitions extends ControllerDefinitionsMap<CoreEngine | CoreEngineNext, Controller>>({ searchActions, controllers, }: {
|
|
13
12
|
searchActions: TSearchAction[];
|
|
14
|
-
controllers:
|
|
15
|
-
}):
|
|
13
|
+
controllers: Record<string, Controller>;
|
|
14
|
+
}): {
|
|
15
|
+
controllers: InferControllerStaticStateMapFromDefinitions<TControllerDefinitions> & BakedInSearchControllers;
|
|
16
|
+
searchActions: TSearchAction[];
|
|
17
|
+
};
|
|
@@ -1,39 +1,27 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import type {
|
|
3
|
-
import type { LegacySearchAction } from '../../../features/analytics/analytics-utils.js';
|
|
4
|
-
import type { ControllerDefinitionsMap } from '../types/controller-definition.js';
|
|
5
|
-
import type { InferControllerPropsMapFromDefinitions, InferControllerStaticStateMapFromDefinitions } from '../types/controller-inference.js';
|
|
6
|
-
import type { SearchEngineDefinitionOptions } from '../types/engine.js';
|
|
7
|
-
/**
|
|
8
|
-
* The SSR search engine.
|
|
9
|
-
*
|
|
10
|
-
* @group Engine
|
|
11
|
-
*/
|
|
12
|
-
export interface SSRSearchEngine extends SearchEngine {
|
|
13
|
-
/**
|
|
14
|
-
* Waits for the search to be completed and returns a promise that resolves to a `SearchCompletedAction`.
|
|
15
|
-
*/
|
|
16
|
-
waitForSearchCompletedAction(): Promise<SearchCompletedAction>;
|
|
17
|
-
}
|
|
18
|
-
export type SearchCompletedAction = ReturnType<LegacySearchAction['fulfilled' | 'rejected']>;
|
|
1
|
+
import type { SSRSearchEngine } from '../types/build.js';
|
|
2
|
+
import type { SearchControllerDefinitionsMap, SearchEngineDefinition, SearchEngineDefinitionOptions } from '../types/engine.js';
|
|
19
3
|
/**
|
|
20
4
|
* Initializes a Search engine definition in SSR with given controllers definitions and search engine config.
|
|
21
5
|
*
|
|
22
6
|
* @param options - The search engine definition
|
|
23
7
|
* @returns Two utility functions to fetch the initial state of the engine in SSR and hydrate the state in CSR.
|
|
24
8
|
*
|
|
9
|
+
* @remarks
|
|
10
|
+
* You can use the {@link InferStaticState} and {@link InferHydratedState} utility types with the returned engine definition
|
|
11
|
+
* to infer the types of static and hydrated state for your controllers.
|
|
12
|
+
*
|
|
25
13
|
* @example
|
|
26
14
|
* ```ts
|
|
27
|
-
* const
|
|
15
|
+
* const searchEngineDefinition = defineSearchEngine(config);
|
|
28
16
|
*
|
|
29
|
-
* const staticState = await
|
|
30
|
-
*
|
|
17
|
+
* const staticState = await searchEngineDefinition.fetchStaticState({
|
|
18
|
+
* navigatorContext: {/*...* /},
|
|
31
19
|
* });
|
|
20
|
+
*
|
|
21
|
+
* type SearchStaticState = InferStaticState<typeof searchEngineDefinition>;
|
|
22
|
+
* type SearchHydratedState = InferHydratedState<typeof searchEngineDefinition>;
|
|
32
23
|
* ```
|
|
33
24
|
*
|
|
34
25
|
* @group Engine
|
|
35
26
|
*/
|
|
36
|
-
export declare function defineSearchEngine<TControllerDefinitions extends
|
|
37
|
-
fetchStaticState: import("../types/fetch-static-state.js").FetchStaticState<import("@reduxjs/toolkit").AnyAction, InferControllerStaticStateMapFromDefinitions<TControllerDefinitions>, InferControllerPropsMapFromDefinitions<TControllerDefinitions>>;
|
|
38
|
-
hydrateStaticState: import("../types/hydrate-static-state.js").HydrateStaticState<SSRSearchEngine, import("../types/controller-inference.js").InferControllersMapFromDefinition<TControllerDefinitions>, import("@reduxjs/toolkit").AnyAction, InferControllerPropsMapFromDefinitions<TControllerDefinitions>>;
|
|
39
|
-
};
|
|
27
|
+
export declare function defineSearchEngine<TControllerDefinitions extends SearchControllerDefinitionsMap = {}>(options: SearchEngineDefinitionOptions<TControllerDefinitions>): SearchEngineDefinition<SSRSearchEngine, TControllerDefinitions>;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { SSRSearchEngine } from '../types/build.js';
|
|
2
|
+
import type { BakedInSearchControllers } from '../types/controller-definition.js';
|
|
3
|
+
import type { InferControllersMapFromDefinition } from '../types/controller-inference.js';
|
|
4
|
+
import type { FetchStaticStateParameters, HydrateStaticStateParameters, SearchControllerDefinitionsMap, SearchEngineDefinitionOptions } from '../types/engine.js';
|
|
5
|
+
export declare const buildFactory: <TControllerDefinitions extends SearchControllerDefinitionsMap>(controllerDefinitions: TControllerDefinitions, options: SearchEngineDefinitionOptions<TControllerDefinitions>) => (buildOptions: FetchStaticStateParameters<TControllerDefinitions> | HydrateStaticStateParameters<TControllerDefinitions>) => Promise<{
|
|
6
|
+
engine: SSRSearchEngine;
|
|
7
|
+
controllers: InferControllersMapFromDefinition<TControllerDefinitions> & BakedInSearchControllers;
|
|
8
|
+
}>;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { Controller } from '../../../controllers/controller/headless-controller.js';
|
|
2
|
+
import type { SSRSearchEngine } from '../types/build.js';
|
|
3
|
+
import type { AugmentedControllerDefinition, ControllerDefinitionsMap } from '../types/controller-definition.js';
|
|
4
|
+
import type { HydrateStaticStateFunction, SearchEngineDefinitionOptions } from '../types/engine.js';
|
|
5
|
+
export declare function hydratedStaticStateFactory<TControllerDefinitions extends ControllerDefinitionsMap<SSRSearchEngine, Controller>>(controllerDefinitions: AugmentedControllerDefinition<TControllerDefinitions>, options: SearchEngineDefinitionOptions<TControllerDefinitions>): HydrateStaticStateFunction<TControllerDefinitions>;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import type { AugmentedControllerDefinition } from '../types/controller-definition.js';
|
|
2
|
+
import type { FetchStaticStateFunction, SearchControllerDefinitionsMap, SearchEngineDefinitionOptions } from '../types/engine.js';
|
|
3
|
+
export declare function fetchStaticStateFactory<TControllerDefinitions extends SearchControllerDefinitionsMap>(controllerDefinitions: AugmentedControllerDefinition<TControllerDefinitions>, options: SearchEngineDefinitionOptions<TControllerDefinitions>): FetchStaticStateFunction<TControllerDefinitions>;
|
|
@@ -1,11 +1,20 @@
|
|
|
1
|
-
import type { CoreEngine, CoreEngineNext } from '../../../app/engine.js';
|
|
2
1
|
import type { NavigatorContext } from '../../../app/navigator-context-provider.js';
|
|
3
|
-
import type {
|
|
4
|
-
import type {
|
|
2
|
+
import type { SearchEngine } from '../../../app/search-engine/search-engine.js';
|
|
3
|
+
import type { LegacySearchAction } from '../../../features/analytics/analytics-utils.js';
|
|
4
|
+
import type { SearchParameterManagerInitialState } from '../controllers/search-parameter-manager/headless-search-parameter-manager.ssr.js';
|
|
5
|
+
/**
|
|
6
|
+
* The SSR search engine.
|
|
7
|
+
*
|
|
8
|
+
* @group Engine
|
|
9
|
+
*/
|
|
10
|
+
export interface SSRSearchEngine extends SearchEngine {
|
|
11
|
+
/**
|
|
12
|
+
* Waits for the search to be completed and returns a promise that resolves to a `SearchCompletedAction`.
|
|
13
|
+
*/
|
|
14
|
+
waitForSearchCompletedAction(): Promise<SearchCompletedAction>;
|
|
15
|
+
}
|
|
16
|
+
export type SearchCompletedAction = ReturnType<LegacySearchAction['fulfilled' | 'rejected']>;
|
|
5
17
|
export type BuildConfig = {
|
|
6
18
|
navigatorContext: NavigatorContext;
|
|
19
|
+
searchParams?: SearchParameterManagerInitialState['parameters'];
|
|
7
20
|
};
|
|
8
|
-
/**
|
|
9
|
-
* @internal
|
|
10
|
-
*/
|
|
11
|
-
export type Build<TEngine extends CoreEngine | CoreEngineNext, TControllersMap extends ControllersMap, TControllersProps extends ControllersPropsMap> = (props: SearchEngineDefinitionControllersPropsOption<TControllersProps>) => Promise<SearchEngineDefinitionBuildResult<TEngine, TControllersMap>>;
|
|
@@ -2,6 +2,7 @@ import type { CoreEngine, CoreEngineNext } from '../../../app/engine.js';
|
|
|
2
2
|
import type { Controller } from '../../../controllers/controller/headless-controller.js';
|
|
3
3
|
import type { InferControllerStaticStateFromController, InferControllerStaticStateMapFromControllers } from '../../common/types/controller-inference.js';
|
|
4
4
|
import type { InferHydratedState, InferStaticState } from '../../common/types/engine.js';
|
|
5
|
+
import type { SearchParameterManagerDefinition } from '../controllers/search-parameter-manager/headless-search-parameter-manager.ssr.js';
|
|
5
6
|
export type { InferStaticState, InferHydratedState, InferControllerStaticStateFromController, InferControllerStaticStateMapFromControllers, };
|
|
6
7
|
export interface ControllerDefinitionWithoutProps<TEngine extends CoreEngine | CoreEngineNext, TController extends Controller> {
|
|
7
8
|
/**
|
|
@@ -26,3 +27,21 @@ export type ControllerDefinition<TEngine extends CoreEngine | CoreEngineNext, TC
|
|
|
26
27
|
export interface ControllerDefinitionsMap<TEngine extends CoreEngine | CoreEngineNext, TController extends Controller> {
|
|
27
28
|
[customName: string]: ControllerDefinition<TEngine, TController>;
|
|
28
29
|
}
|
|
30
|
+
type BakedInControllerDefinitions = {
|
|
31
|
+
parameterManager: SearchParameterManagerDefinition;
|
|
32
|
+
};
|
|
33
|
+
/**
|
|
34
|
+
* Map of baked-in controllers for search engine (runtime controllers)
|
|
35
|
+
*/
|
|
36
|
+
export type BakedInSearchControllers = {
|
|
37
|
+
[K in keyof BakedInControllerDefinitions]: ReturnType<BakedInControllerDefinitions[K]['buildWithProps']>;
|
|
38
|
+
};
|
|
39
|
+
/**
|
|
40
|
+
* Map of controller definitions available to the search engine definition.
|
|
41
|
+
*
|
|
42
|
+
* This type combines user-defined controllers with the system's baked-in controllers
|
|
43
|
+
* (parameterManager).
|
|
44
|
+
*
|
|
45
|
+
* @template TControllerDefinitions - The controller definitions map
|
|
46
|
+
*/
|
|
47
|
+
export type AugmentedControllerDefinition<TControllerDefinitions extends ControllerDefinitionsMap<CoreEngine | CoreEngineNext, Controller>> = TControllerDefinitions & BakedInControllerDefinitions;
|
|
@@ -1,36 +1,47 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { UnknownAction } from '@reduxjs/toolkit';
|
|
2
2
|
import type { CoreEngine, CoreEngineNext } from '../../../app/engine.js';
|
|
3
3
|
import type { SearchEngineOptions } from '../../../app/search-engine/search-engine.js';
|
|
4
4
|
import type { Controller } from '../../../controllers/controller/headless-controller.js';
|
|
5
5
|
import type { ControllersMap, ControllersPropsMap } from '../../common/types/controllers.js';
|
|
6
6
|
import type { HasKeys } from '../../common/types/utilities.js';
|
|
7
|
-
import type { SSRSearchEngine } from '
|
|
8
|
-
import type { Build } from './build.js';
|
|
7
|
+
import type { SSRSearchEngine } from './build.js';
|
|
9
8
|
import type { ControllerDefinitionsMap } from './controller-definition.js';
|
|
10
9
|
import type { InferControllerPropsMapFromDefinitions, InferControllerStaticStateMapFromDefinitions, InferControllersMapFromDefinition } from './controller-inference.js';
|
|
11
10
|
import type { FetchStaticState } from './fetch-static-state.js';
|
|
12
11
|
import type { HydrateStaticState } from './hydrate-static-state.js';
|
|
13
|
-
|
|
12
|
+
type ReservedControllerNames = 'parameterManager';
|
|
13
|
+
type ValidateControllerNames<T extends SearchControllerDefinitionsMap> = {
|
|
14
|
+
[K in keyof T]: K extends ReservedControllerNames ? `ERROR: Controller name "${K & string}" is reserved and cannot be used. Please choose a different controller name.` : T[K];
|
|
15
|
+
};
|
|
14
16
|
/**
|
|
15
17
|
* The options to create a search engine definition in SSR.
|
|
16
18
|
*
|
|
17
19
|
* @group Engine
|
|
18
20
|
*/
|
|
19
|
-
export type SearchEngineDefinitionOptions<TControllers extends
|
|
21
|
+
export type SearchEngineDefinitionOptions<TControllers extends SearchControllerDefinitionsMap = {}> = SearchEngineOptions & {
|
|
20
22
|
/**
|
|
21
23
|
* The controllers to initialize with the search engine.
|
|
22
24
|
*/
|
|
23
|
-
controllers?: TControllers
|
|
25
|
+
controllers?: ValidateControllerNames<TControllers>;
|
|
24
26
|
};
|
|
25
27
|
export interface SearchEngineDefinition<TEngine extends CoreEngine | CoreEngineNext, TControllers extends ControllerDefinitionsMap<TEngine, Controller>> {
|
|
26
28
|
/**
|
|
27
29
|
* Fetches the static state on the server side using your engine definition.
|
|
28
30
|
*/
|
|
29
|
-
fetchStaticState: FetchStaticState<
|
|
31
|
+
fetchStaticState: FetchStaticState<UnknownAction, InferControllerStaticStateMapFromDefinitions<TControllers>, InferControllerPropsMapFromDefinitions<TControllers>>;
|
|
30
32
|
/**
|
|
31
33
|
* Fetches the hydrated state on the client side using your engine definition and the static state.
|
|
32
34
|
*/
|
|
33
|
-
hydrateStaticState: HydrateStaticState<TEngine, InferControllersMapFromDefinition<TControllers>,
|
|
35
|
+
hydrateStaticState: HydrateStaticState<TEngine, InferControllersMapFromDefinition<TControllers>, UnknownAction, InferControllerPropsMapFromDefinitions<TControllers>>;
|
|
36
|
+
/**
|
|
37
|
+
* Returns the access token.
|
|
38
|
+
*/
|
|
39
|
+
getAccessToken: () => string;
|
|
40
|
+
/**
|
|
41
|
+
* Updates the access token.
|
|
42
|
+
* @param accessToken - The access token to update.
|
|
43
|
+
*/
|
|
44
|
+
setAccessToken: (accessToken: string) => void;
|
|
34
45
|
}
|
|
35
46
|
/**
|
|
36
47
|
* This type defines the required and optional controller props for the search engine definition.
|
|
@@ -42,3 +53,10 @@ export interface SearchEngineDefinitionBuildResult<TEngine extends CoreEngine |
|
|
|
42
53
|
engine: TEngine;
|
|
43
54
|
controllers: TControllers;
|
|
44
55
|
}
|
|
56
|
+
export type SearchControllerDefinitionsMap = ControllerDefinitionsMap<SSRSearchEngine, Controller>;
|
|
57
|
+
type Definition<TControllerDefinitions extends SearchControllerDefinitionsMap> = SearchEngineDefinition<SSRSearchEngine, TControllerDefinitions>;
|
|
58
|
+
export type FetchStaticStateFunction<TControllerDefinitions extends SearchControllerDefinitionsMap> = Definition<TControllerDefinitions>['fetchStaticState'];
|
|
59
|
+
export type HydrateStaticStateFunction<TControllerDefinitions extends SearchControllerDefinitionsMap> = Definition<TControllerDefinitions>['hydrateStaticState'];
|
|
60
|
+
export type FetchStaticStateParameters<TControllerDefinitions extends SearchControllerDefinitionsMap> = Parameters<FetchStaticStateFunction<TControllerDefinitions>>[0];
|
|
61
|
+
export type HydrateStaticStateParameters<TControllerDefinitions extends SearchControllerDefinitionsMap> = Parameters<HydrateStaticStateFunction<TControllerDefinitions>>[0];
|
|
62
|
+
export {};
|
|
@@ -2,10 +2,11 @@ import type { UnknownAction } from '@reduxjs/toolkit';
|
|
|
2
2
|
import type { ControllerStaticStateMap, ControllersPropsMap } from '../../common/types/controllers.js';
|
|
3
3
|
import type { EngineStaticState } from '../../common/types/engine.js';
|
|
4
4
|
import type { BuildConfig } from './build.js';
|
|
5
|
+
import type { BakedInSearchControllers } from './controller-definition.js';
|
|
5
6
|
import type { SearchEngineDefinitionControllersPropsOption } from './engine.js';
|
|
6
7
|
/**
|
|
7
8
|
* Executes only the initial search for a given configuration, then returns a resumable snapshot of engine state along with the state of the controllers.
|
|
8
9
|
*
|
|
9
10
|
* Useful for static generation and server-side rendering.
|
|
10
11
|
*/
|
|
11
|
-
export type FetchStaticState<TSearchAction extends UnknownAction, TControllersStaticState extends ControllerStaticStateMap, TControllersProps extends ControllersPropsMap> = (params: BuildConfig & SearchEngineDefinitionControllersPropsOption<TControllersProps>) => Promise<EngineStaticState<TSearchAction, TControllersStaticState> & BuildConfig>;
|
|
12
|
+
export type FetchStaticState<TSearchAction extends UnknownAction, TControllersStaticState extends ControllerStaticStateMap, TControllersProps extends ControllersPropsMap> = (params: BuildConfig & SearchEngineDefinitionControllersPropsOption<TControllersProps>) => Promise<EngineStaticState<TSearchAction, TControllersStaticState & BakedInSearchControllers> & BuildConfig>;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Schema } from '@coveo/bueno';
|
|
2
|
+
import type { Controller } from '../../../controllers/controller/headless-controller.js';
|
|
3
|
+
import type { ControllersPropsMap } from '../../common/types/controllers.js';
|
|
4
|
+
import type { BuildConfig, SSRSearchEngine } from '../types/build.js';
|
|
5
|
+
import type { ControllerDefinitionsMap } from '../types/controller-definition.js';
|
|
6
|
+
import type { InferControllerPropsMapFromDefinitions } from '../types/controller-inference.js';
|
|
7
|
+
export declare const searchDefinitionSchema: Schema<{
|
|
8
|
+
searchParams: unknown;
|
|
9
|
+
}>;
|
|
10
|
+
/**
|
|
11
|
+
* Converts simple user configuration (searchParams) into the
|
|
12
|
+
* nested structure required by the internal controller system. Automatically generates
|
|
13
|
+
* appropriate controllers (parameterManager) transparently.
|
|
14
|
+
*
|
|
15
|
+
* @param controllerDefinitions - Map of controller definitions to be initialized
|
|
16
|
+
* @param buildConfig - Simple configuration object with simplified controller properties
|
|
17
|
+
* @returns Formatted and validated controller properties map defined for the controller in the definition
|
|
18
|
+
*/
|
|
19
|
+
export declare function wireControllerParams<TControllerDefinitions extends ControllerDefinitionsMap<SSRSearchEngine, Controller>>(controllerDefinitions: TControllerDefinitions, buildConfig: BuildConfig & {
|
|
20
|
+
controllers?: ControllersPropsMap;
|
|
21
|
+
}): InferControllerPropsMapFromDefinitions<TControllerDefinitions>;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { SearchEngineOptions } from '../../../app/search-engine/search-engine.js';
|
|
2
|
+
import type { BuildConfig } from '../types/build.js';
|
|
3
|
+
import type { SearchControllerDefinitionsMap, SearchEngineDefinitionOptions } from '../types/engine.js';
|
|
4
|
+
export declare function augmentSearchEngineOptions<TControllerDefinitions extends SearchControllerDefinitionsMap>(engineOptions: SearchEngineDefinitionOptions<TControllerDefinitions>, buildConfig: BuildConfig): SearchEngineOptions;
|
package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next.index.d.ts
CHANGED
|
@@ -141,8 +141,8 @@ export type { RedirectionTrigger, RedirectionTriggerDefinition, RedirectionTrigg
|
|
|
141
141
|
export { defineRedirectionTrigger } from './ssr-next/search/controllers/triggers/headless-redirection-trigger.ssr.js';
|
|
142
142
|
export type { UrlManager, UrlManagerBuildProps, UrlManagerInitialState, UrlManagerProps, UrlManagerState, } from './ssr-next/search/controllers/url-manager/headless-url-manager.ssr.js';
|
|
143
143
|
export { defineUrlManager } from './ssr-next/search/controllers/url-manager/headless-url-manager.ssr.js';
|
|
144
|
-
export type { SearchCompletedAction, SSRSearchEngine as SearchEngine, } from './ssr-next/search/engine/search-engine.ssr.js';
|
|
145
144
|
export { defineSearchEngine } from './ssr-next/search/engine/search-engine.ssr.js';
|
|
145
|
+
export type { SearchCompletedAction, SSRSearchEngine as SearchEngine, } from './ssr-next/search/types/build.js';
|
|
146
146
|
export type { ControllerDefinitionsMap, InferControllerStaticStateFromController, InferControllerStaticStateMapFromControllers, InferHydratedState, InferStaticState, } from './ssr-next/search/types/controller-definition.js';
|
|
147
147
|
export type { InferControllerFromDefinition, InferControllerStaticStateMapFromDefinitions, InferControllersMapFromDefinition, } from './ssr-next/search/types/controller-inference.js';
|
|
148
148
|
export type { SearchEngineDefinition, SearchEngineDefinitionOptions, } from './ssr-next/search/types/engine.js';
|
|
@@ -2,6 +2,8 @@ import type { SearchEngine } from '../app/search-engine/search-engine.js';
|
|
|
2
2
|
import type { Controller } from '../controllers/controller/headless-controller.js';
|
|
3
3
|
import type { ControllerDefinitionWithoutProps, ControllerDefinitionWithProps } from '../ssr/common/types/controllers.js';
|
|
4
4
|
import { recommendationInternalOptionKey } from '../ssr-next/commerce/types/controller-constants.js';
|
|
5
|
+
import type { SSRSearchEngine } from '../ssr-next/search/types/build.js';
|
|
6
|
+
import type { ControllerDefinitionWithoutProps as SearchControllerDefinitionWithoutProps, ControllerDefinitionWithProps as SearchControllerDefinitionWithProps } from '../ssr-next/search/types/controller-definition.js';
|
|
5
7
|
interface MockController {
|
|
6
8
|
initialState?: Record<string, unknown>;
|
|
7
9
|
}
|
|
@@ -44,4 +46,14 @@ export declare function defineMockRecommendationDefinition(slotId: string): {
|
|
|
44
46
|
subscribe(listener: () => void): import("@reduxjs/toolkit").Unsubscribe;
|
|
45
47
|
}>;
|
|
46
48
|
};
|
|
49
|
+
interface MockSearchController {
|
|
50
|
+
initialState?: Record<string, unknown>;
|
|
51
|
+
}
|
|
52
|
+
interface MockSearchControllerDefinitionWithoutProps extends SearchControllerDefinitionWithoutProps<SSRSearchEngine, Controller> {
|
|
53
|
+
}
|
|
54
|
+
interface MockSearchControllerDefinitionWithProps extends SearchControllerDefinitionWithProps<SSRSearchEngine, Controller, MockSearchController> {
|
|
55
|
+
}
|
|
56
|
+
export declare function defineMockSearchController(): MockSearchControllerDefinitionWithoutProps;
|
|
57
|
+
export declare function defineMockSearchControllerWithProps(): MockSearchControllerDefinitionWithProps;
|
|
58
|
+
export declare function defineMockSearchParameterManager(): MockSearchControllerDefinitionWithProps;
|
|
47
59
|
export {};
|