@@ -6,7 +6,12 @@ import {
6
6
noop ,
7
7
} from '../../lib/utils' ;
8
8
import { SearchParameters , SearchResults } from 'algoliasearch-helper' ;
9
- import { Connector , TransformItems , CreateURL } from '../../types' ;
9
+ import {
10
+ Connector ,
11
+ TransformItems ,
12
+ CreateURL ,
13
+ WidgetRenderState ,
14
+ } from '../../types' ;
10
15
11
16
const withUsage = createDocumentationMessageGenerator ( {
12
17
name : 'breadcrumb' ,
@@ -49,7 +54,7 @@ export type BreadcrumbConnectorParams = {
49
54
separator ?: string ;
50
55
} ;
51
56
52
- export type BreadcrumbRendererOptions = {
57
+ export type BreadcrumbRenderState = {
53
58
/**
54
59
* Creates the URL for a single item name in the list.
55
60
*/
@@ -71,8 +76,21 @@ export type BreadcrumbRendererOptions = {
71
76
canRefine : boolean ;
72
77
} ;
73
78
79
+ export type BreadcrumbWidgetDescription = {
80
+ $$type : 'ais.breadcrumb' ;
81
+ renderState : BreadcrumbRenderState ;
82
+ indexRenderState : {
83
+ breadcrumb : {
84
+ [ rootAttribute : string ] : WidgetRenderState <
85
+ BreadcrumbRenderState ,
86
+ BreadcrumbConnectorParams
87
+ > ;
88
+ } ;
89
+ } ;
90
+ } ;
91
+
74
92
export type BreadcrumbConnector = Connector <
75
- BreadcrumbRendererOptions ,
93
+ BreadcrumbWidgetDescription ,
76
94
BreadcrumbConnectorParams
77
95
> ;
78
96
@@ -83,8 +101,8 @@ const connectBreadcrumb: BreadcrumbConnector = function connectBreadcrumb(
83
101
checkRendering ( renderFn , withUsage ( ) ) ;
84
102
85
103
type ConnectorState = {
86
- refine ?: BreadcrumbRendererOptions [ 'refine' ] ;
87
- createURL ?: BreadcrumbRendererOptions [ 'createURL' ] ;
104
+ refine ?: BreadcrumbRenderState [ 'refine' ] ;
105
+ createURL ?: BreadcrumbRenderState [ 'createURL' ] ;
88
106
} ;
89
107
90
108
const connectorState : ConnectorState = { } ;
0 commit comments