@coveo/quantic 3.29.0-pre.bc5fc96bfc → 3.29.0-pre.bf3a34cede
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/quanticCitation/quanticCitation.html +1 -0
- package/force-app/main/default/lwc/quanticCitation/quanticCitation.js +33 -7
- package/force-app/main/default/lwc/quanticGeneratedAnswer/quanticGeneratedAnswer.js +21 -6
- package/force-app/main/default/lwc/quanticGeneratedAnswer/templates/generatedAnswer.html +1 -0
- package/force-app/main/default/lwc/quanticSourceCitations/quanticSourceCitations.html +1 -0
- package/force-app/main/default/lwc/quanticSourceCitations/quanticSourceCitations.js +7 -0
- package/force-app/main/default/lwc/quanticUtils/citationAnchoringUtils.js +43 -0
- package/force-app/main/default/lwc/quanticUtils/quanticUtils.js +1 -0
- package/force-app/main/default/staticresources/coveoheadless/case-assist/headless.js +2 -2
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/types/build.d.ts +8 -0
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/types/controller-inference.d.ts +4 -0
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/types/engine.d.ts +3 -0
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/common/types/engine.d.ts +4 -0
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/common/types/from-build-result.d.ts +8 -0
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-commerce-next.index.d.ts +2 -3
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/engine/commerce-engine.ssr.d.ts +2 -5
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/factories/hydrated-state-factory.d.ts +1 -1
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/factories/static-state-factory.d.ts +1 -1
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/types/build.d.ts +5 -1
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/types/controller-inference.d.ts +0 -3
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/types/engine.d.ts +6 -17
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/types/fetch-static-state.d.ts +7 -11
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/types/hydrate-static-state.d.ts +6 -10
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/common/controller-utils.d.ts +0 -1
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/common/types/build.d.ts +3 -0
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/common/types/engine.d.ts +3 -9
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/common/types/fetch-static-state.d.ts +7 -12
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/common/types/hydrate-static-state.d.ts +6 -10
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/search/engine/search-engine.ssr.d.ts +8 -3
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next.index.d.ts +1 -2
- package/force-app/main/default/staticresources/coveoheadless/headless.js +2 -2
- package/force-app/main/default/staticresources/coveoheadless/insight/headless.js +2 -2
- package/force-app/main/default/staticresources/coveoheadless/recommendation/headless.js +2 -2
- package/package.json +3 -3
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/types/from-build-result.d.ts +0 -19
- package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/common/types/from-build-result.d.ts +0 -8
|
@@ -8,6 +8,10 @@ export type InferStaticState<T extends {
|
|
|
8
8
|
export type InferHydratedState<T extends {
|
|
9
9
|
hydrateStaticState(...args: unknown[]): Promise<unknown>;
|
|
10
10
|
}> = Awaited<ReturnType<T['hydrateStaticState']>>;
|
|
11
|
+
/**
|
|
12
|
+
* @deprecated This type is deprecated and will be removed in a future version.
|
|
13
|
+
* {@link EngineDefinition.build} will be removed in a future version.
|
|
14
|
+
*/
|
|
11
15
|
export type InferBuildResult<T extends {
|
|
12
16
|
build(...args: unknown[]): Promise<unknown>;
|
|
13
17
|
}> = Awaited<ReturnType<T['build']>>;
|
|
@@ -26,6 +26,9 @@ export type EngineDefinitionOptions<TOptions extends {
|
|
|
26
26
|
*/
|
|
27
27
|
controllers?: TControllers;
|
|
28
28
|
};
|
|
29
|
+
/**
|
|
30
|
+
* @deprecated This type will be removed in the future. Use {@link CommerceEngineDefinition} instead.
|
|
31
|
+
*/
|
|
29
32
|
export interface EngineDefinition<TControllers extends ControllerDefinitionsMap<Controller>, TEngineOptions, TSolutionType extends SolutionType> {
|
|
30
33
|
/**
|
|
31
34
|
* Fetches the static state on the server side using your engine definition.
|
|
@@ -55,6 +55,10 @@ export type InferStaticState<T extends {
|
|
|
55
55
|
export type InferHydratedState<T extends {
|
|
56
56
|
hydrateStaticState(...args: unknown[]): Promise<unknown>;
|
|
57
57
|
}> = Awaited<ReturnType<T['hydrateStaticState']>>;
|
|
58
|
+
/**
|
|
59
|
+
* @deprecated This type is deprecated and will be removed in a future version.
|
|
60
|
+
* {@link EngineDefinition.build} will be removed in a future version.
|
|
61
|
+
*/
|
|
58
62
|
export type InferBuildResult<T extends {
|
|
59
63
|
build(...args: unknown[]): Promise<unknown>;
|
|
60
64
|
}> = Awaited<ReturnType<T['build']>>;
|
|
@@ -1,8 +1,16 @@
|
|
|
1
1
|
import type { CoreEngine, CoreEngineNext } from '../../../app/engine.js';
|
|
2
2
|
import type { ControllersMap } from './controllers.js';
|
|
3
3
|
import type { EngineDefinitionBuildResult } from './engine.js';
|
|
4
|
+
/**
|
|
5
|
+
* @deprecated This type is deprecated and will be removed in a future version.
|
|
6
|
+
* {@link EngineDefinition.build} will be removed in a future version.
|
|
7
|
+
*/
|
|
4
8
|
export interface FromBuildResultOptions<TEngine extends CoreEngine | CoreEngineNext, TControllers extends ControllersMap> {
|
|
5
9
|
buildResult: EngineDefinitionBuildResult<TEngine, TControllers>;
|
|
6
10
|
allowedRecommendationKeys?: (keyof TControllers)[];
|
|
7
11
|
}
|
|
12
|
+
/**
|
|
13
|
+
* @deprecated This type is deprecated and will be removed in a future version.
|
|
14
|
+
* {@link EngineDefinition.build} will be removed in a future version.
|
|
15
|
+
*/
|
|
8
16
|
export type FromBuildResult<TEngine extends CoreEngine | CoreEngineNext, TControllers extends ControllersMap, TOptions, TReturn> = (options: FromBuildResultOptions<TEngine, TControllers> & TOptions) => Promise<TReturn>;
|
|
@@ -117,13 +117,12 @@ export type { QueryTrigger, QueryTriggerDefinition, QueryTriggerState, } from '.
|
|
|
117
117
|
export { defineQueryTrigger } from './ssr-next/commerce/controllers/triggers/headless-query-trigger.ssr.js';
|
|
118
118
|
export type { RedirectionTrigger, RedirectionTriggerDefinition, RedirectionTriggerState, } from './ssr-next/commerce/controllers/triggers/headless-redirection-trigger.ssr.js';
|
|
119
119
|
export { defineRedirectionTrigger } from './ssr-next/commerce/controllers/triggers/headless-redirection-trigger.ssr.js';
|
|
120
|
-
export type { CommerceEngineDefinition } from './ssr-next/commerce/engine/commerce-engine.ssr.js';
|
|
121
120
|
export { defineCommerceEngine } from './ssr-next/commerce/engine/commerce-engine.ssr.js';
|
|
122
121
|
export type { CommerceEngineDefinitionOptions, SSRCommerceEngine as CommerceEngine, } from './ssr-next/commerce/factories/build-factory.js';
|
|
123
122
|
export { SolutionType } from './ssr-next/commerce/types/controller-constants.js';
|
|
124
123
|
export type { ControllerDefinition, ControllerDefinitionsMap, ControllerWithKind, EngineDefinitionBuildResult, EngineDefinitionControllersPropsOption, HydratedState, InferControllerStaticStateFromController, InferControllerStaticStateMapFromControllers, OptionsTuple, } from './ssr-next/commerce/types/controller-definitions.js';
|
|
125
|
-
export type {
|
|
126
|
-
export type {
|
|
124
|
+
export type { InferControllerFromDefinition, InferControllerPropsMapFromDefinitions, InferControllerStaticStateMapFromDefinitionsWithSolutionType, InferControllersMapFromDefinition, InferHydratedState, InferStaticState, } from './ssr-next/commerce/types/controller-inference.js';
|
|
125
|
+
export type { CommerceEngineDefinition, EngineStaticState, FetchStaticState, FetchStaticStateOptions, HydrateStaticState, HydrateStaticStateOptions, } from './ssr-next/commerce/types/engine.js';
|
|
127
126
|
export { Kind } from './ssr-next/commerce/types/kind.js';
|
|
128
127
|
export type { CommerceAppState, CommerceProductListingParametersState, CommerceSearchParametersState, } from './state/commerce-app-state.js';
|
|
129
128
|
export * from './features/commerce/configuration/configuration-actions-loader.js';
|
|
@@ -1,14 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Utility functions to be used for Commerce Server Side Rendering.
|
|
3
3
|
*/
|
|
4
|
-
import type { CommerceEngineOptions } from '../../../app/commerce-engine/commerce-engine.js';
|
|
5
4
|
import type { Controller } from '../../../controllers/controller/headless-controller.js';
|
|
6
|
-
import {
|
|
5
|
+
import type { CommerceEngineDefinitionOptions } from '../factories/build-factory.js';
|
|
7
6
|
import { SolutionType } from '../types/controller-constants.js';
|
|
8
7
|
import type { ControllerDefinitionsMap } from '../types/controller-definitions.js';
|
|
9
|
-
import type {
|
|
10
|
-
export interface CommerceEngineDefinition<TControllers extends ControllerDefinitionsMap<Controller>, TSolutionType extends SolutionType> extends EngineDefinition<TControllers, CommerceEngineOptions, TSolutionType> {
|
|
11
|
-
}
|
|
8
|
+
import type { CommerceEngineDefinition } from '../types/engine.js';
|
|
12
9
|
/**
|
|
13
10
|
* Initializes a Commerce engine definition in SSR with given controllers definitions and commerce engine config.
|
|
14
11
|
* @param options - The commerce engine definition
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { SolutionType } from '../types/controller-constants.js';
|
|
2
2
|
import type { CommerceControllerDefinitionsMap, HydrateStaticStateFunction } from '../types/engine.js';
|
|
3
3
|
import { type CommerceEngineDefinitionOptions } from './build-factory.js';
|
|
4
|
-
export declare
|
|
4
|
+
export declare function hydratedStaticStateFactory<TControllerDefinitions extends CommerceControllerDefinitionsMap>(controllerDefinitions: TControllerDefinitions | undefined, options: CommerceEngineDefinitionOptions<TControllerDefinitions>): (solutionType: SolutionType) => HydrateStaticStateFunction<TControllerDefinitions>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { SolutionType } from '../types/controller-constants.js';
|
|
2
2
|
import type { CommerceControllerDefinitionsMap, FetchStaticStateFunction } from '../types/engine.js';
|
|
3
3
|
import { type CommerceEngineDefinitionOptions } from './build-factory.js';
|
|
4
|
-
export declare
|
|
4
|
+
export declare function fetchStaticStateFactory<TControllerDefinitions extends CommerceControllerDefinitionsMap>(controllerDefinitions: TControllerDefinitions | undefined, options: CommerceEngineDefinitionOptions<TControllerDefinitions>): (solutionType: SolutionType) => FetchStaticStateFunction<TControllerDefinitions>;
|
|
@@ -4,7 +4,11 @@ import type { OptionsExtender, OptionsTuple } from '../../common/types/utilities
|
|
|
4
4
|
import type { SSRCommerceEngine } from '../factories/build-factory.js';
|
|
5
5
|
import type { SolutionType } from './controller-constants.js';
|
|
6
6
|
import type { ControllerDefinitionsMap, EngineDefinitionBuildResult, EngineDefinitionControllersPropsOption } from './controller-definitions.js';
|
|
7
|
-
|
|
7
|
+
interface BuildOptions<TEngineOptions> {
|
|
8
8
|
extend?: OptionsExtender<TEngineOptions>;
|
|
9
9
|
}
|
|
10
|
+
/**
|
|
11
|
+
* @internal
|
|
12
|
+
*/
|
|
10
13
|
export type Build<TEngineOptions, TControllersMap extends ControllersMap, TControllersProps extends ControllersPropsMap, TControllersDefinitionsMap extends ControllerDefinitionsMap<Controller>, TSolutionType extends SolutionType> = (...params: OptionsTuple<BuildOptions<TEngineOptions> & EngineDefinitionControllersPropsOption<TControllersDefinitionsMap, TControllersProps, TSolutionType>>) => Promise<EngineDefinitionBuildResult<SSRCommerceEngine, TControllersMap>>;
|
|
14
|
+
export {};
|
|
@@ -8,9 +8,6 @@ export type InferStaticState<T extends {
|
|
|
8
8
|
export type InferHydratedState<T extends {
|
|
9
9
|
hydrateStaticState(...args: unknown[]): Promise<unknown>;
|
|
10
10
|
}> = Awaited<ReturnType<T['hydrateStaticState']>>;
|
|
11
|
-
export type InferBuildResult<T extends {
|
|
12
|
-
build(...args: unknown[]): Promise<unknown>;
|
|
13
|
-
}> = Awaited<ReturnType<T['build']>>;
|
|
14
11
|
export type InferControllerPropsFromDefinition<TController extends ControllerDefinition<Controller>> = TController extends ControllerDefinitionWithProps<Controller, infer Props> ? HasKey<TController, typeof recommendationInternalOptionKey> extends never ? Props : Props & RecommendationControllerSettings : TController extends ControllerDefinitionWithoutProps<Controller> ? HasKey<TController, typeof recommendationInternalOptionKey> extends never ? {} : RecommendationControllerSettings : unknown;
|
|
15
12
|
export type InferControllerPropsMapFromDefinitions<TControllers extends ControllerDefinitionsMap<Controller>> = {
|
|
16
13
|
[K in keyof TControllers as HasKeys<InferControllerPropsFromDefinition<TControllers[K]>> extends false ? never : K]: InferControllerPropsFromDefinition<TControllers[K]>;
|
|
@@ -1,19 +1,17 @@
|
|
|
1
1
|
import type { UnknownAction } from '@reduxjs/toolkit';
|
|
2
|
+
import type { CommerceEngineOptions } from '../../../app/commerce-engine/commerce-engine.js';
|
|
2
3
|
import type { EngineConfiguration } from '../../../app/engine-configuration.js';
|
|
3
4
|
import type { NavigatorContextProvider } from '../../../app/navigator-context-provider.js';
|
|
4
5
|
import type { Controller } from '../../../controllers/controller/headless-controller.js';
|
|
5
6
|
import type { ControllerStaticStateMap } from '../../common/types/controllers.js';
|
|
6
|
-
import type { FromBuildResultOptions } from '../../common/types/from-build-result.js';
|
|
7
|
-
import type { CommerceEngineDefinition } from '../engine/commerce-engine.ssr.js';
|
|
8
7
|
import type { SSRCommerceEngine } from '../factories/build-factory.js';
|
|
9
|
-
import type { Build
|
|
8
|
+
import type { Build } from './build.js';
|
|
10
9
|
import type { SolutionType } from './controller-constants.js';
|
|
11
10
|
import type { ControllerDefinitionsMap } from './controller-definitions.js';
|
|
12
11
|
import type { InferControllerPropsMapFromDefinitions, InferControllerStaticStateMapFromDefinitionsWithSolutionType, InferControllersMapFromDefinition } from './controller-inference.js';
|
|
13
12
|
import type { FetchStaticState, FetchStaticStateOptions } from './fetch-static-state.js';
|
|
14
|
-
import type { FromBuildResult } from './from-build-result.js';
|
|
15
13
|
import type { HydrateStaticState, HydrateStaticStateOptions } from './hydrate-static-state.js';
|
|
16
|
-
export type {
|
|
14
|
+
export type { HydrateStaticState, HydrateStaticStateOptions, FetchStaticState, FetchStaticStateOptions, };
|
|
17
15
|
export interface EngineStaticState<TSearchAction extends UnknownAction, TControllers extends ControllerStaticStateMap> {
|
|
18
16
|
searchActions: TSearchAction[];
|
|
19
17
|
controllers: TControllers;
|
|
@@ -26,19 +24,15 @@ export type EngineDefinitionOptions<TOptions extends {
|
|
|
26
24
|
*/
|
|
27
25
|
controllers?: TControllers;
|
|
28
26
|
};
|
|
29
|
-
export interface
|
|
27
|
+
export interface CommerceEngineDefinition<TControllers extends ControllerDefinitionsMap<Controller>, TSolutionType extends SolutionType> {
|
|
30
28
|
/**
|
|
31
29
|
* Fetches the static state on the server side using your engine definition.
|
|
32
30
|
*/
|
|
33
|
-
fetchStaticState: FetchStaticState<
|
|
31
|
+
fetchStaticState: FetchStaticState<UnknownAction, InferControllerStaticStateMapFromDefinitionsWithSolutionType<TControllers, TSolutionType>, InferControllerPropsMapFromDefinitions<TControllers>, TControllers, TSolutionType>;
|
|
34
32
|
/**
|
|
35
33
|
* Fetches the hydrated state on the client side using your engine definition and the static state.
|
|
36
34
|
*/
|
|
37
35
|
hydrateStaticState: HydrateStaticState<InferControllersMapFromDefinition<TControllers, TSolutionType>, UnknownAction, InferControllerPropsMapFromDefinitions<TControllers>, TControllers, TSolutionType>;
|
|
38
|
-
/**
|
|
39
|
-
* Builds an engine and its controllers from an engine definition.
|
|
40
|
-
*/
|
|
41
|
-
build: Build<TEngineOptions, InferControllersMapFromDefinition<TControllers, TSolutionType>, InferControllerPropsMapFromDefinitions<TControllers>, TControllers, TSolutionType>;
|
|
42
36
|
/**
|
|
43
37
|
* Sets the navigator context provider.
|
|
44
38
|
* This provider is essential for retrieving navigation-related data such as referrer, userAgent, location, and clientId, which are crucial for handling both server-side and client-side API requests effectively.
|
|
@@ -58,16 +52,11 @@ export interface EngineDefinition<TControllers extends ControllerDefinitionsMap<
|
|
|
58
52
|
}
|
|
59
53
|
export type CommerceControllerDefinitionsMap = ControllerDefinitionsMap<Controller>;
|
|
60
54
|
type Definition<TControllerDefinitions extends CommerceControllerDefinitionsMap> = CommerceEngineDefinition<TControllerDefinitions, SolutionType>;
|
|
61
|
-
type BuildFunction<TControllerDefinitions extends CommerceControllerDefinitionsMap> = Definition<TControllerDefinitions>['build'];
|
|
62
55
|
export type FetchStaticStateFunction<TControllerDefinitions extends CommerceControllerDefinitionsMap> = Definition<TControllerDefinitions>['fetchStaticState'];
|
|
63
56
|
export type HydrateStaticStateFunction<TControllerDefinitions extends CommerceControllerDefinitionsMap> = Definition<TControllerDefinitions>['hydrateStaticState'];
|
|
64
|
-
type
|
|
65
|
-
type HydrateStaticStateFromBuildResultFunction<TControllerDefinitions extends CommerceControllerDefinitionsMap> = HydrateStaticStateFunction<TControllerDefinitions>['fromBuildResult'];
|
|
66
|
-
export type BuildParameters<TControllerDefinitions extends CommerceControllerDefinitionsMap> = Parameters<BuildFunction<TControllerDefinitions>>;
|
|
57
|
+
export type BuildParameters<TControllerDefinitions extends CommerceControllerDefinitionsMap> = Parameters<Build<CommerceEngineOptions, InferControllersMapFromDefinition<TControllerDefinitions, SolutionType>, InferControllerPropsMapFromDefinitions<TControllerDefinitions>, TControllerDefinitions, SolutionType>>;
|
|
67
58
|
export type FetchStaticStateParameters<TControllerDefinitions extends CommerceControllerDefinitionsMap> = Parameters<FetchStaticStateFunction<TControllerDefinitions>>;
|
|
68
59
|
export type HydrateStaticStateParameters<TControllerDefinitions extends CommerceControllerDefinitionsMap> = Parameters<HydrateStaticStateFunction<TControllerDefinitions>>;
|
|
69
|
-
export type FetchStaticStateFromBuildResultParameters<TControllerDefinitions extends CommerceControllerDefinitionsMap> = Parameters<FetchStaticStateFromBuildResultFunction<TControllerDefinitions>>;
|
|
70
|
-
export type HydrateStaticStateFromBuildResultParameters<TControllerDefinitions extends CommerceControllerDefinitionsMap> = Parameters<HydrateStaticStateFromBuildResultFunction<TControllerDefinitions>>;
|
|
71
60
|
type Controllers<TControllerDefinitions extends CommerceControllerDefinitionsMap> = InferControllersMapFromDefinition<TControllerDefinitions, SolutionType>;
|
|
72
61
|
export type BuildResult<TControllerDefinitions extends CommerceControllerDefinitionsMap> = {
|
|
73
62
|
engine: SSRCommerceEngine;
|
|
@@ -1,17 +1,13 @@
|
|
|
1
1
|
import type { UnknownAction } from '@reduxjs/toolkit';
|
|
2
2
|
import type { Controller } from '../../../controllers/controller/headless-controller.js';
|
|
3
|
-
import type { ControllerStaticStateMap,
|
|
3
|
+
import type { ControllerStaticStateMap, ControllersPropsMap } from '../../common/types/controllers.js';
|
|
4
4
|
import type { SolutionType } from './controller-constants.js';
|
|
5
5
|
import type { ControllerDefinitionsMap, EngineDefinitionControllersPropsOption, OptionsTuple } from './controller-definitions.js';
|
|
6
6
|
import type { EngineStaticState } from './engine.js';
|
|
7
|
-
import type { FromBuildResult } from './from-build-result.js';
|
|
8
7
|
export type FetchStaticStateOptions = {};
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
(...params: OptionsTuple<FetchStaticStateOptions & EngineDefinitionControllersPropsOption<TControllersDefinitionsMap, TControllersProps, TSolutionType>>): Promise<EngineStaticState<TSearchAction, TControllersStaticState>>;
|
|
16
|
-
fromBuildResult: FromBuildResult<TControllers, FetchStaticStateOptions, EngineStaticState<TSearchAction, TControllersStaticState>>;
|
|
17
|
-
};
|
|
8
|
+
/**
|
|
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
|
+
*
|
|
11
|
+
* Useful for static generation and server-side rendering.
|
|
12
|
+
*/
|
|
13
|
+
export type FetchStaticState<TSearchAction extends UnknownAction, TControllersStaticState extends ControllerStaticStateMap, TControllersProps extends ControllersPropsMap, TControllersDefinitionsMap extends ControllerDefinitionsMap<Controller>, TSolutionType extends SolutionType> = (...params: OptionsTuple<FetchStaticStateOptions & EngineDefinitionControllersPropsOption<TControllersDefinitionsMap, TControllersProps, TSolutionType>>) => Promise<EngineStaticState<TSearchAction, TControllersStaticState>>;
|
|
@@ -5,16 +5,12 @@ import type { HydratedState } from '../../common/types/hydrate-static-state.js';
|
|
|
5
5
|
import type { SSRCommerceEngine } from '../factories/build-factory.js';
|
|
6
6
|
import type { SolutionType } from './controller-constants.js';
|
|
7
7
|
import type { ControllerDefinitionsMap, EngineDefinitionControllersPropsOption, OptionsTuple } from './controller-definitions.js';
|
|
8
|
-
import type { FromBuildResult } from './from-build-result.js';
|
|
9
8
|
export interface HydrateStaticStateOptions<TSearchAction> {
|
|
10
9
|
searchActions: TSearchAction[];
|
|
11
10
|
}
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
(...params: OptionsTuple<HydrateStaticStateOptions<TSearchAction> & EngineDefinitionControllersPropsOption<TControllersDefinitionsMap, TControllersProps, TSolutionType>>): Promise<HydratedState<SSRCommerceEngine, TControllers>>;
|
|
19
|
-
fromBuildResult: FromBuildResult<TControllers, HydrateStaticStateOptions<TSearchAction>, HydratedState<SSRCommerceEngine, TControllers>>;
|
|
20
|
-
};
|
|
11
|
+
/**
|
|
12
|
+
* Creates a new engine from the snapshot of the engine created in SSR with fetchStaticState.
|
|
13
|
+
*
|
|
14
|
+
* Useful when hydrating a server-side-rendered engine.
|
|
15
|
+
*/
|
|
16
|
+
export type HydrateStaticState<TControllers extends ControllersMap, TSearchAction extends UnknownAction, TControllersProps extends ControllersPropsMap, TControllersDefinitionsMap extends ControllerDefinitionsMap<Controller>, TSolutionType extends SolutionType> = (...params: OptionsTuple<HydrateStaticStateOptions<TSearchAction> & EngineDefinitionControllersPropsOption<TControllersDefinitionsMap, TControllersProps, TSolutionType>>) => Promise<HydratedState<SSRCommerceEngine, TControllers>>;
|
|
@@ -13,4 +13,3 @@ export declare function createStaticState<TSearchAction extends UnknownAction>({
|
|
|
13
13
|
searchAction: TSearchAction;
|
|
14
14
|
controllers: ControllersMap;
|
|
15
15
|
}): EngineStaticState<TSearchAction, InferControllerStaticStateMapFromControllers<ControllersMap>>;
|
|
16
|
-
export declare function composeFunction<TParameters extends Array<unknown>, TReturn, TChildren extends {}>(parentFunction: (...params: TParameters) => TReturn, children: TChildren): TChildren & ((...params: TParameters) => TReturn);
|
|
@@ -5,5 +5,8 @@ import type { OptionsExtender, OptionsTuple } from './utilities.js';
|
|
|
5
5
|
interface BuildOptions<TEngineOptions> {
|
|
6
6
|
extend?: OptionsExtender<TEngineOptions>;
|
|
7
7
|
}
|
|
8
|
+
/**
|
|
9
|
+
* @internal
|
|
10
|
+
*/
|
|
8
11
|
export type Build<TEngine extends CoreEngine | CoreEngineNext, TEngineOptions, TControllersMap extends ControllersMap, TControllersProps extends ControllersPropsMap> = (...params: OptionsTuple<BuildOptions<TEngineOptions> & EngineDefinitionControllersPropsOption<TControllersProps>>) => Promise<EngineDefinitionBuildResult<TEngine, TControllersMap>>;
|
|
9
12
|
export {};
|
|
@@ -17,11 +17,12 @@ export type EngineDefinitionOptions<TOptions extends {
|
|
|
17
17
|
*/
|
|
18
18
|
controllers?: TControllers;
|
|
19
19
|
};
|
|
20
|
-
export
|
|
20
|
+
export type EngineBuildResult<TEngine extends CoreEngine | CoreEngineNext, TControllers extends ControllerDefinitionsMap<TEngine, Controller>, TEngineOptions> = Build<TEngine, TEngineOptions, InferControllersMapFromDefinition<TControllers>, InferControllerPropsMapFromDefinitions<TControllers>>;
|
|
21
|
+
export interface EngineDefinition<TEngine extends CoreEngine | CoreEngineNext, TControllers extends ControllerDefinitionsMap<TEngine, Controller>> {
|
|
21
22
|
/**
|
|
22
23
|
* Fetches the static state on the server side using your engine definition.
|
|
23
24
|
*/
|
|
24
|
-
fetchStaticState: FetchStaticState<
|
|
25
|
+
fetchStaticState: FetchStaticState<AnyAction, InferControllerStaticStateMapFromDefinitions<TControllers>, InferControllerPropsMapFromDefinitions<TControllers>>;
|
|
25
26
|
/**
|
|
26
27
|
* Fetches the hydrated state on the client side using your engine definition and the static state.
|
|
27
28
|
*/
|
|
@@ -33,10 +34,6 @@ export interface EngineDefinition<TEngine extends CoreEngine | CoreEngineNext, T
|
|
|
33
34
|
* Note: The implementation specifics of the navigator context provider depend on the Node.js framework being utilized. It is the developer's responsibility to appropriately define and implement the navigator context provider to ensure accurate navigation context is available throughout the application. If the user fails to provide a navigator context provider, a warning will be logged either on the server or the browser console.
|
|
34
35
|
*/
|
|
35
36
|
setNavigatorContextProvider: (navigatorContextProvider: NavigatorContextProvider) => void;
|
|
36
|
-
/**
|
|
37
|
-
* Builds an engine and its controllers from an engine definition.
|
|
38
|
-
*/
|
|
39
|
-
build: Build<TEngine, TEngineOptions, InferControllersMapFromDefinition<TControllers>, InferControllerPropsMapFromDefinitions<TControllers>>;
|
|
40
37
|
}
|
|
41
38
|
export interface EngineDefinitionBuildResult<TEngine extends CoreEngine | CoreEngineNext, TControllers extends ControllersMap> {
|
|
42
39
|
engine: TEngine;
|
|
@@ -55,6 +52,3 @@ export type InferStaticState<T extends {
|
|
|
55
52
|
export type InferHydratedState<T extends {
|
|
56
53
|
hydrateStaticState(...args: unknown[]): Promise<unknown>;
|
|
57
54
|
}> = Awaited<ReturnType<T['hydrateStaticState']>>;
|
|
58
|
-
export type InferBuildResult<T extends {
|
|
59
|
-
build(...args: unknown[]): Promise<unknown>;
|
|
60
|
-
}> = Awaited<ReturnType<T['build']>>;
|
|
@@ -1,17 +1,12 @@
|
|
|
1
1
|
import type { UnknownAction } from '@reduxjs/toolkit';
|
|
2
|
-
import type {
|
|
3
|
-
import type { ControllerStaticStateMap, ControllersMap, ControllersPropsMap } from './controllers.js';
|
|
2
|
+
import type { ControllerStaticStateMap, ControllersPropsMap } from './controllers.js';
|
|
4
3
|
import type { EngineDefinitionControllersPropsOption, EngineStaticState } from './engine.js';
|
|
5
|
-
import type { FromBuildResult } from './from-build-result.js';
|
|
6
4
|
import type { OptionsTuple } from './utilities.js';
|
|
7
5
|
type FetchStaticStateOptions = {};
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
(...params: OptionsTuple<FetchStaticStateOptions & EngineDefinitionControllersPropsOption<TControllersProps>>): Promise<EngineStaticState<TSearchAction, TControllersStaticState>>;
|
|
15
|
-
fromBuildResult: FromBuildResult<TEngine, TControllers, FetchStaticStateOptions, EngineStaticState<TSearchAction, TControllersStaticState>>;
|
|
16
|
-
};
|
|
6
|
+
/**
|
|
7
|
+
* 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
|
+
* Useful for static generation and server-side rendering.
|
|
10
|
+
*/
|
|
11
|
+
export type FetchStaticState<TSearchAction extends UnknownAction, TControllersStaticState extends ControllerStaticStateMap, TControllersProps extends ControllersPropsMap> = (...params: OptionsTuple<FetchStaticStateOptions & EngineDefinitionControllersPropsOption<TControllersProps>>) => Promise<EngineStaticState<TSearchAction, TControllersStaticState>>;
|
|
17
12
|
export {};
|
|
@@ -2,20 +2,16 @@ import type { UnknownAction } from '@reduxjs/toolkit';
|
|
|
2
2
|
import type { CoreEngine, CoreEngineNext } from '../../../app/engine.js';
|
|
3
3
|
import type { ControllersMap, ControllersPropsMap } from './controllers.js';
|
|
4
4
|
import type { EngineDefinitionBuildResult, EngineDefinitionControllersPropsOption } from './engine.js';
|
|
5
|
-
import type { FromBuildResult } from './from-build-result.js';
|
|
6
5
|
import type { OptionsTuple } from './utilities.js';
|
|
7
6
|
interface HydrateStaticStateOptions<TSearchAction> {
|
|
8
7
|
searchAction: TSearchAction;
|
|
9
8
|
}
|
|
10
9
|
export interface HydratedState<TEngine extends CoreEngine | CoreEngineNext, TControllers extends ControllersMap> extends EngineDefinitionBuildResult<TEngine, TControllers> {
|
|
11
10
|
}
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
(...params: OptionsTuple<HydrateStaticStateOptions<TSearchAction> & EngineDefinitionControllersPropsOption<TControllersProps>>): Promise<HydratedState<TEngine, TControllers>>;
|
|
19
|
-
fromBuildResult: FromBuildResult<TEngine, TControllers, HydrateStaticStateOptions<TSearchAction>, HydratedState<TEngine, TControllers>>;
|
|
20
|
-
};
|
|
11
|
+
/**
|
|
12
|
+
* Creates a new engine from the snapshot of the engine created in SSR with fetchStaticState.
|
|
13
|
+
*
|
|
14
|
+
* Useful when hydrating a server-side-rendered engine.
|
|
15
|
+
*/
|
|
16
|
+
export type HydrateStaticState<TEngine extends CoreEngine | CoreEngineNext, TControllers extends ControllersMap, TSearchAction extends UnknownAction, TControllersProps extends ControllersPropsMap> = (...params: OptionsTuple<HydrateStaticStateOptions<TSearchAction> & EngineDefinitionControllersPropsOption<TControllersProps>>) => Promise<HydratedState<TEngine, TControllers>>;
|
|
21
17
|
export {};
|
|
@@ -1,8 +1,10 @@
|
|
|
1
|
+
import type { NavigatorContextProvider } from '../../../app/navigator-context-provider.js';
|
|
1
2
|
import { type SearchEngine, type SearchEngineOptions } from '../../../app/search-engine/search-engine.js';
|
|
2
3
|
import type { Controller } from '../../../controllers/controller/headless-controller.js';
|
|
3
4
|
import type { LegacySearchAction } from '../../../features/analytics/analytics-utils.js';
|
|
4
5
|
import type { ControllerDefinitionsMap } from '../../common/types/controllers.js';
|
|
5
6
|
import type { EngineDefinition, EngineDefinitionOptions } from '../../common/types/engine.js';
|
|
7
|
+
import type { InferControllerPropsMapFromDefinitions, InferControllerStaticStateMapFromDefinitions } from '../../common/types/inference.js';
|
|
6
8
|
/**
|
|
7
9
|
* The SSR search engine.
|
|
8
10
|
*
|
|
@@ -21,8 +23,7 @@ export interface SSRSearchEngine extends SearchEngine {
|
|
|
21
23
|
*/
|
|
22
24
|
export type SearchEngineDefinitionOptions<TControllers extends ControllerDefinitionsMap<SSRSearchEngine, Controller>> = EngineDefinitionOptions<SearchEngineOptions, TControllers>;
|
|
23
25
|
export type SearchCompletedAction = ReturnType<LegacySearchAction['fulfilled' | 'rejected']>;
|
|
24
|
-
export
|
|
25
|
-
}
|
|
26
|
+
export type SearchEngineDefinition<TControllers extends ControllerDefinitionsMap<SSRSearchEngine, Controller>> = EngineDefinition<SSRSearchEngine, TControllers>;
|
|
26
27
|
/**
|
|
27
28
|
* Initializes a Search engine definition in SSR with given controllers definitions and search engine config.
|
|
28
29
|
*
|
|
@@ -32,4 +33,8 @@ export interface SearchEngineDefinition<TControllers extends ControllerDefinitio
|
|
|
32
33
|
*
|
|
33
34
|
* @group Engine
|
|
34
35
|
*/
|
|
35
|
-
export declare function defineSearchEngine<TControllerDefinitions extends ControllerDefinitionsMap<SearchEngine, Controller>>(options: SearchEngineDefinitionOptions<TControllerDefinitions>):
|
|
36
|
+
export declare function defineSearchEngine<TControllerDefinitions extends ControllerDefinitionsMap<SearchEngine, Controller>>(options: SearchEngineDefinitionOptions<TControllerDefinitions>): {
|
|
37
|
+
fetchStaticState: import("../../common/types/fetch-static-state.js").FetchStaticState<import("redux").AnyAction, InferControllerStaticStateMapFromDefinitions<TControllerDefinitions>, InferControllerPropsMapFromDefinitions<TControllerDefinitions>>;
|
|
38
|
+
hydrateStaticState: import("../../common/types/hydrate-static-state.js").HydrateStaticState<SSRSearchEngine, import("../../common/types/inference.js").InferControllersMapFromDefinition<TControllerDefinitions>, import("redux").AnyAction, InferControllerPropsMapFromDefinitions<TControllerDefinitions>>;
|
|
39
|
+
setNavigatorContextProvider: (navigatorContextProvider: NavigatorContextProvider) => void;
|
|
40
|
+
};
|
package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next.index.d.ts
CHANGED
|
@@ -58,9 +58,8 @@ export { getSampleSearchEngineConfiguration } from './app/search-engine/search-e
|
|
|
58
58
|
export type { ErrorPayload } from './controllers/controller/error-payload.js';
|
|
59
59
|
export type { Controller, Subscribable, } from './controllers/controller/headless-controller.js';
|
|
60
60
|
export type { InlineLink } from './controllers/smart-snippet/headless-smart-snippet-interactive-inline-links.js';
|
|
61
|
-
export type { Build } from './ssr-next/common/types/build.js';
|
|
62
61
|
export type { ControllerDefinitionsMap, ControllerDefinitionWithoutProps, ControllerDefinitionWithProps, } from './ssr-next/common/types/controllers.js';
|
|
63
|
-
export type { EngineDefinition,
|
|
62
|
+
export type { EngineDefinition, InferHydratedState, InferStaticState, } from './ssr-next/common/types/engine.js';
|
|
64
63
|
export type { InferControllerFromDefinition, InferControllerStaticStateFromController, InferControllerStaticStateMapFromControllers, InferControllerStaticStateMapFromDefinitions, InferControllersMapFromDefinition, } from './ssr-next/common/types/inference.js';
|
|
65
64
|
export type { AutomaticFacetBreadcrumb, Breadcrumb, BreadcrumbManager, BreadcrumbManagerDefinition, BreadcrumbManagerState, BreadcrumbValue, CategoryFacetBreadcrumb, CoreBreadcrumbManager, CoreBreadcrumbManagerState, DateFacetBreadcrumb, DeselectableValue, FacetBreadcrumb, NumericFacetBreadcrumb, StaticFilterBreadcrumb, } from './ssr-next/search/controllers/breadcrumb-manager/headless-breadcrumb-manager.ssr.js';
|
|
66
65
|
export { defineBreadcrumbManager } from './ssr-next/search/controllers/breadcrumb-manager/headless-breadcrumb-manager.ssr.js';
|