@atlaskit/quick-search 8.0.12 → 8.0.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/README.md +1 -0
  3. package/dist/cjs/components/QuickSearch.js +26 -91
  4. package/dist/cjs/components/ResultItem/ResultItem.js +0 -22
  5. package/dist/cjs/components/ResultItem/ResultItemGroup.js +2 -20
  6. package/dist/cjs/components/ResultItem/styled.js +4 -27
  7. package/dist/cjs/components/Results/ContainerResult.js +6 -31
  8. package/dist/cjs/components/Results/ObjectResult.js +9 -36
  9. package/dist/cjs/components/Results/PersonResult.js +8 -34
  10. package/dist/cjs/components/Results/ResultBase.js +20 -52
  11. package/dist/cjs/components/Results/index.js +0 -5
  12. package/dist/cjs/components/Search/Search.js +7 -36
  13. package/dist/cjs/components/Search/styled.js +5 -30
  14. package/dist/cjs/components/constants.js +0 -1
  15. package/dist/cjs/components/context.js +0 -7
  16. package/dist/cjs/components/decorateWithAnalyticsData.js +0 -22
  17. package/dist/cjs/components/isReactElement.js +0 -2
  18. package/dist/cjs/index.js +0 -14
  19. package/dist/cjs/version.json +1 -1
  20. package/dist/es2019/components/QuickSearch.js +32 -85
  21. package/dist/es2019/components/ResultItem/ResultItem.js +0 -4
  22. package/dist/es2019/components/ResultItem/ResultItemGroup.js +0 -1
  23. package/dist/es2019/components/ResultItem/styled.js +6 -7
  24. package/dist/es2019/components/Results/ContainerResult.js +0 -5
  25. package/dist/es2019/components/Results/ObjectResult.js +0 -8
  26. package/dist/es2019/components/Results/PersonResult.js +0 -7
  27. package/dist/es2019/components/Results/ResultBase.js +2 -16
  28. package/dist/es2019/components/Search/Search.js +0 -9
  29. package/dist/es2019/components/Search/styled.js +5 -6
  30. package/dist/es2019/components/decorateWithAnalyticsData.js +0 -4
  31. package/dist/es2019/index.js +6 -3
  32. package/dist/es2019/version.json +1 -1
  33. package/dist/esm/components/QuickSearch.js +27 -95
  34. package/dist/esm/components/ResultItem/ResultItem.js +0 -11
  35. package/dist/esm/components/ResultItem/ResultItemGroup.js +2 -12
  36. package/dist/esm/components/ResultItem/styled.js +4 -7
  37. package/dist/esm/components/Results/ContainerResult.js +6 -22
  38. package/dist/esm/components/Results/ObjectResult.js +9 -27
  39. package/dist/esm/components/Results/PersonResult.js +8 -27
  40. package/dist/esm/components/Results/ResultBase.js +20 -44
  41. package/dist/esm/components/Search/Search.js +7 -28
  42. package/dist/esm/components/Search/styled.js +5 -8
  43. package/dist/esm/components/decorateWithAnalyticsData.js +0 -13
  44. package/dist/esm/index.js +6 -3
  45. package/dist/esm/version.json +1 -1
  46. package/package.json +9 -8
  47. package/report.api.md +122 -132
  48. package/tmp/api-report-tmp.d.ts +263 -0
package/report.api.md CHANGED
@@ -1,227 +1,195 @@
1
- ## API Report File for "@atlaskit/quick-search".
1
+ <!-- API Report Version: 2.3 -->
2
2
 
3
- > Do not edit this file. This report is auto-generated by [API Extractor](https://api-extractor.com/).
3
+ ## API Report File for "@atlaskit/quick-search"
4
4
 
5
- [Learn more about API reports](https://hello.atlassian.net/wiki/spaces/UR/pages/1825484529/Package+API+Reports)
5
+ > Do not edit this file. This report is auto-generated using [API Extractor](https://api-extractor.com/).
6
+ > [Learn more about API reports](https://hello.atlassian.net/wiki/spaces/UR/pages/1825484529/Package+API+Reports)
7
+
8
+ ### Table of contents
9
+
10
+ - [Main Entry Types](#main-entry-types)
11
+ - [Peer Dependencies](#peer-dependencies)
12
+
13
+ ### Main Entry Types
14
+
15
+ <!--SECTION START: Main Entry Types-->
6
16
 
7
17
  ```ts
8
18
  import { ComponentType } from 'react';
9
19
  import { default as React_2 } from 'react';
10
20
  import { ReactNode } from 'react';
11
21
 
12
- export declare class AkNavigationItem extends React_2.PureComponent<Props_2> {
22
+ // @public (undocumented)
23
+ export class AkNavigationItem extends React_2.PureComponent<Props_2> {
24
+ // (undocumented)
13
25
  static defaultProps: Partial<Props_2>;
26
+ // (undocumented)
14
27
  render(): JSX.Element;
15
28
  }
16
29
 
17
- export declare class AkSearch extends React_2.PureComponent<Props_4> {
30
+ // @public (undocumented)
31
+ export class AkSearch extends React_2.PureComponent<Props_4> {
32
+ // (undocumented)
18
33
  static defaultProps: Partial<Props_4>;
19
- onInputKeyDown: (event: React_2.KeyboardEvent<HTMLInputElement>) => void;
20
- setInputRef: (ref: React_2.Ref<any>) => void;
21
- renderInputControls: () => JSX.Element | null;
34
+ // (undocumented)
22
35
  inputRef?: React_2.Ref<any>;
36
+ // (undocumented)
37
+ onInputKeyDown: (event: React_2.KeyboardEvent<HTMLInputElement>) => void;
38
+ // (undocumented)
23
39
  render(): JSX.Element;
40
+ // (undocumented)
41
+ renderInputControls: () => JSX.Element | null;
42
+ // (undocumented)
43
+ setInputRef: (ref: React_2.Ref<any>) => void;
24
44
  }
25
45
 
26
- declare type AnalyticsData = Object;
46
+ // @public (undocumented)
47
+ type AnalyticsData = Object;
27
48
 
28
- export declare type CancelableEvent =
49
+ // @public (undocumented)
50
+ export type CancelableEvent =
29
51
  | KeyboardEvent
30
52
  | MouseEvent
31
53
  | React.KeyboardEvent<HTMLInputElement>
32
54
  | React.MouseEvent<HTMLElement>;
33
55
 
34
- declare type CommonResultProps = {
35
- /** Unique ID of the result. This is passed as a parameter to certain callbacks */
36
- resultId: string | number;
37
- /** Type of the result. This is passed as a parameter to certain callbacks. */
56
+ // @public (undocumented)
57
+ type CommonResultProps = {
58
+ resultId: number | string;
38
59
  type?: string;
39
- /** Src URL of the image to be used as the result's icon, overriden by avatar prop */
40
60
  avatarUrl?: string;
41
- /** React Component of the image to be used as the result's icon, takes precedence over avatarUrl */
42
61
  avatar?: ReactNode;
43
- /** Content to be shown after the main content. Shown to the right of content (or to the left in RTL mode). */
44
62
  elemAfter?: ReactNode;
45
- /** Icon to be shown after the main content when the result is selected */
46
63
  selectedIcon?: ReactNode;
47
- /** Location to link out to on click. */
48
64
  href?: string;
49
- /** Target to open the link in. */
50
65
  target?: string;
51
- /** Reduces padding and font size. */
52
66
  isCompact?: boolean;
53
- /** Triggered by mouseClick event. */
54
67
  onClick?: (resultData: ResultData) => void;
55
- /** key/value pairs of attributes to be send in analytics events. */
56
- analyticsData?: AnalyticsData | (() => AnalyticsData);
68
+ analyticsData?: (() => AnalyticsData) | AnalyticsData;
57
69
  };
58
70
 
59
- /**
60
- * Generic result type for Atlassian containers.
61
- */
62
- export declare class ContainerResult extends React_2.PureComponent<
63
- ContainerResultProps
64
- > {
71
+ // @public
72
+ export class ContainerResult extends React_2.PureComponent<ContainerResultProps> {
73
+ // (undocumented)
65
74
  getAvatar: () => {};
75
+ // (undocumented)
66
76
  render(): JSX.Element;
67
77
  }
68
78
 
69
- export declare type ContainerResultProps = CommonResultProps & {
70
- /** Name of the container. Provides the main text to be displayed as the item. */
79
+ // @public (undocumented)
80
+ export type ContainerResultProps = CommonResultProps & {
71
81
  name: React_2.ReactNode;
72
- /** Text to appear to the right of the text. It has a lower font-weight. */
73
82
  caption?: string;
74
- /** Set whether to display a lock on the result's icon */
75
83
  isPrivate?: boolean;
76
- /** Text to be shown alongside the main `text`. */
77
84
  subText?: React_2.ReactNode;
78
85
  };
79
86
 
80
- declare const _default: React_2.ComponentClass<Props_3, any>;
87
+ // @public (undocumented)
88
+ const _default: React_2.ComponentClass<Props_3, any>;
81
89
  export { _default as AkQuickSearch };
82
90
  export { _default as QuickSearch };
83
91
 
84
- declare type DefaultProps = {
92
+ // @public (undocumented)
93
+ type DefaultProps = {
85
94
  context: ResultContextType;
86
95
  };
87
96
 
88
- /**
89
- * Generic result type for Atlassian objects.
90
- */
91
- export declare class ObjectResult extends React_2.PureComponent<
92
- ObjectResultProps
93
- > {
97
+ // @public
98
+ export class ObjectResult extends React_2.PureComponent<ObjectResultProps> {
99
+ // (undocumented)
94
100
  getAvatar: () => {};
95
- getSubtext(): {} | null | undefined;
101
+ // (undocumented)
102
+ getSubtext(): null | undefined | {};
103
+ // (undocumented)
96
104
  render(): JSX.Element;
97
105
  }
98
106
 
99
- export declare type ObjectResultProps = CommonResultProps & {
100
- /** Name of the container. Provides the main text to be displayed as the item. */
107
+ // @public (undocumented)
108
+ export type ObjectResultProps = CommonResultProps & {
101
109
  name: React_2.ReactNode;
102
- /** Text to appear to the right of the text. It has a lower font-weight. */
103
110
  caption?: string;
104
- /** Name of the container to which the object belongs. Displayed alongside the name */
105
111
  containerName?: React_2.ReactNode;
106
- /** Set whether to display a lock on the result's icon */
107
112
  isPrivate?: boolean;
108
- /** A key or identifier of the object. Ajoined to the `containerName` when provided. */
109
113
  objectKey?: React_2.ReactNode;
110
114
  };
111
115
 
112
- export declare class PersonResult extends React_2.PureComponent<
113
- PersonResultProps
114
- > {
116
+ // @public (undocumented)
117
+ export class PersonResult extends React_2.PureComponent<PersonResultProps> {
118
+ // (undocumented)
115
119
  static defaultProps: Partial<PersonResultProps>;
116
- getMention: () => string | undefined;
120
+ // (undocumented)
117
121
  getAvatar: () => {};
122
+ // (undocumented)
123
+ getMention: () => string | undefined;
124
+ // (undocumented)
118
125
  render(): JSX.Element;
119
126
  }
120
127
 
121
- export declare type PersonResultProps = CommonResultProps & {
122
- /** Name of the container. Provides the main text to be displayed as the item. */
128
+ // @public (undocumented)
129
+ export type PersonResultProps = CommonResultProps & {
123
130
  name: React_2.ReactNode;
124
- /** A user's custom handle. Appears to the right of their `name`. It has a lower font-weight. */
125
131
  mentionName?: string;
126
- /** A character with which to prefix the `mentionName`. Defaults to '@' */
127
132
  mentionPrefix?: string;
128
- /** Text to be shown alongside the main `text`. */
129
133
  presenceMessage?: React_2.ReactNode;
130
- /** Sets the appearance of the presence indicator */
131
- presenceState?: 'online' | 'busy' | 'offline' | null;
134
+ presenceState?: 'busy' | 'offline' | 'online' | null;
132
135
  };
133
136
 
134
- declare type Props = {
135
- /** Text to appear as heading above group. Will be auto-capitalised. */
137
+ // @public (undocumented)
138
+ type Props = {
136
139
  title: React_2.ReactNode;
137
- /** React Elements to be displayed within the group. This should generally be a collection of ResultItems. */
138
140
  children?: React_2.ReactNode;
139
141
  };
140
142
 
141
- declare type Props_2 = {
142
- /** Text to appear to the right of the text. It has a lower font-weight. */
143
+ // @public (undocumented)
144
+ type Props_2 = {
143
145
  caption?: string;
144
- /** Location to link out to on click. This is passed down to the custom link component if one is provided. */
145
146
  href?: string;
146
- /** Target frame for item `href` link to be aimed at. */
147
147
  target?: string;
148
- /** React element to appear to the left of the text. This should be an @atlaskit/icon component. */
149
148
  icon?: React_2.ReactNode;
150
- /** Makes the navigation item appear with reduced padding and font size. */
151
149
  isCompact?: boolean;
152
- /** Set whether the item should be highlighted as selected. Selected items have a different background color. */
153
150
  isSelected?: boolean;
154
- /** Set whether the item has been highlighted using mouse navigation. Mouse selected items will not display the selectedIcon. */
155
151
  isMouseSelected?: boolean;
156
- /** Function to be called on click. This is passed down to a custom link component, if one is provided. */
157
152
  onClick?(e: MouseEvent): void;
158
- /** Standard onmouseenter event */
159
153
  onMouseEnter?: (e: MouseEvent) => void;
160
- /** Standard onmouseleave event */
161
154
  onMouseLeave?: (e: MouseEvent) => void;
162
- /** Text to be shown alongside the main `text`. */
163
155
  subText?: React_2.ReactNode;
164
- /** Main text to be displayed as the item. Accepts a react component but in most cases this should just be a string. */
165
156
  text?: React_2.ReactNode;
166
- /** React component to be placed to the right of the main text. */
167
157
  textAfter?: React_2.ReactNode;
168
- /** React component to be placed to the right of the main text when the item is selected with keyboard navigation. */
169
158
  selectedIcon?: React_2.ReactNode;
170
- /** React component to be used for rendering links */
171
159
  linkComponent?: React_2.ComponentType;
172
160
  };
173
161
 
174
- declare type Props_3 = {
175
- /** Search results in the form of ResultItemGroups containing Result components */
162
+ // @public (undocumented)
163
+ type Props_3 = {
176
164
  children: React_2.ReactNode;
177
- /** Set search loading state */
178
165
  isLoading?: boolean;
179
- /** onBlur callback for search input */
180
166
  onSearchBlur?: (event: React_2.FocusEvent<HTMLInputElement>) => void;
181
- /** onInput callback for search input */
182
167
  onSearchInput?: (
183
168
  event: React_2.FormEvent<HTMLInputElement>,
184
169
  isAutocompleted?: boolean,
185
170
  ) => void;
186
- /** onKeyDown callback for search input */
187
171
  onSearchKeyDown?: (event: React_2.KeyboardEvent<HTMLInputElement>) => void;
188
- /** Called when the user submits the search form without selecting a result */
189
172
  onSearchSubmit?: (event: React_2.KeyboardEvent<HTMLInputElement>) => void;
190
- /** Placeholder text for search input field */
191
173
  placeholder?: string;
192
- /** Value of the search input field */
193
174
  value?: string;
194
- /** Corresponds to the `resultId` of the selected result */
195
175
  selectedResultId?: SelectedResultId;
196
- /** Optional way of being notified when the selected result changes due to keyboard nav */
197
176
  onSelectedResultIdChanged?: (id: SelectedResultId) => void;
198
177
  firePrivateAnalyticsEvent?: (eventName: string, eventData: Object) => void;
199
- /** React component to be used for rendering links */
200
178
  linkComponent?: React_2.ComponentType<any>;
201
- /** The elements to render to the right of the search input. */
202
179
  inputControls?: React_2.ReactNode;
203
- /** One string that is used to autocomplete the current search query */
204
180
  autocompleteText?: string;
205
181
  };
206
182
 
207
- declare type Props_4 = {
208
- /** The elements to render as options to search from. */
183
+ // @public (undocumented)
184
+ type Props_4 = {
209
185
  children?: React_2.ReactNode;
210
- /** The elements to render to the right of the search input. */
211
186
  inputControls?: React_2.ReactNode;
212
- /** Set whether the loading state should be shown. */
213
187
  isLoading?: boolean;
214
- /** Function to be called when the search input loses focus. */
215
188
  onBlur?: (event: React_2.FocusEvent<HTMLInputElement>) => void;
216
- /** Function to be called when a input action occurs (native `oninput` event). */
217
189
  onInput?: (event: React_2.FormEvent<HTMLInputElement>) => void;
218
- /** Function to be called when the user hits the escape key. */
219
190
  onKeyDown?: (event: React_2.KeyboardEvent<HTMLInputElement>) => void;
220
- /** Placeholder text for search field. */
221
191
  placeholder?: string;
222
- /** Current value of search field. */
223
192
  value?: string;
224
- /** Autocomplete information */
225
193
  autocompleteText?: string;
226
194
  };
227
195
 
@@ -230,73 +198,95 @@ declare namespace quickSearchResultTypes {
230
198
  }
231
199
  export { quickSearchResultTypes };
232
200
 
233
- export declare const ResultBase: (props: ResultBaseProps) => JSX.Element;
201
+ // @public (undocumented)
202
+ export const ResultBase: (props: ResultBaseProps) => JSX.Element;
234
203
 
235
- declare class ResultBase_2 extends React_2.PureComponent<
204
+ // @public (undocumented)
205
+ class ResultBase_2 extends React_2.PureComponent<
236
206
  DefaultProps & ResultBaseProps
237
207
  > {
238
- static defaultProps: Partial<ResultBaseProps>;
239
- state: {
240
- isMouseSelected: boolean;
241
- };
242
- registerResult(): void;
208
+ // (undocumented)
243
209
  componentDidMount(): void;
210
+ // (undocumented)
244
211
  componentDidUpdate(): void;
212
+ // (undocumented)
245
213
  componentWillUnmount(): void;
214
+ // (undocumented)
215
+ static defaultProps: Partial<ResultBaseProps>;
216
+ // (undocumented)
246
217
  getAnalyticsData(): AnalyticsData;
218
+ // (undocumented)
247
219
  handleClick: (e: MouseEvent) => void;
220
+ // (undocumented)
248
221
  handleMouseEnter: (event: MouseEvent) => void;
222
+ // (undocumented)
249
223
  handleMouseLeave: () => void;
224
+ // (undocumented)
225
+ registerResult(): void;
226
+ // (undocumented)
250
227
  render(): JSX.Element;
228
+ // (undocumented)
229
+ state: {
230
+ isMouseSelected: boolean;
231
+ };
251
232
  }
252
233
 
253
- export declare type ResultBaseProps = CommonResultProps & {
254
- /** Type of the result. This is passed as a parameter to certain callbacks. */
234
+ // @public (undocumented)
235
+ export type ResultBaseProps = CommonResultProps & {
255
236
  type: string;
256
- /** Main text to be displayed as the item. */
257
237
  text: React_2.ReactNode;
258
- /** Text to be shown alongside the main `text`. */
259
238
  subText?: React_2.ReactNode;
260
- /** Text to appear to the right of the text. It has a lower font-weight. */
261
239
  caption?: string;
262
- /** React element to appear to the left of the text. */
263
240
  icon?: React_2.ReactNode;
264
- /** The context provided by QuickSearch. */
265
241
  context?: ResultContextType;
266
242
  };
267
243
 
268
- declare type ResultContextType = {
269
- /** Register result as keyboard navigation target */
244
+ // @public (undocumented)
245
+ type ResultContextType = {
270
246
  registerResult: (result: ResultBase_2) => void;
271
- /** Unregister result as keyboard navigation target */
272
247
  unregisterResult: (result: ResultBase_2) => void;
273
- /** Triggered by mouseEnter event. */
274
248
  onMouseEnter: (resultData: ResultData) => void;
275
- /** Standard onMouseLeave event. */
276
249
  onMouseLeave: () => void;
277
- /** Fires an analytics event */
278
250
  sendAnalytics?: (eventName: string, eventData: Object) => void;
279
- /** get the index of the search result in the list of result */
280
- getIndex: (resultId: ResultId) => number | null;
281
- /** React component to be used for rendering links */
251
+ getIndex: (resultId: ResultId) => null | number;
282
252
  linkComponent?: ComponentType;
283
253
  };
284
254
 
285
- export declare type ResultData = {
255
+ // @public (undocumented)
256
+ export type ResultData = {
286
257
  resultId: ResultId;
287
258
  type: string;
288
259
  event: CancelableEvent;
289
260
  };
290
261
 
291
- declare type ResultId = string | number;
262
+ // @public (undocumented)
263
+ type ResultId = number | string;
292
264
 
293
- declare class ResultItemGroup extends React_2.Component<Props> {
265
+ // @public (undocumented)
266
+ class ResultItemGroup extends React_2.Component<Props> {
267
+ // (undocumented)
294
268
  render(): JSX.Element;
295
269
  }
296
270
  export { ResultItemGroup as AkNavigationItemGroup };
297
271
  export { ResultItemGroup };
298
272
 
299
- declare type SelectedResultId = ResultId | null;
273
+ // @public (undocumented)
274
+ type SelectedResultId = ResultId | null;
275
+
276
+ // (No @packageDocumentation comment for this package)
277
+ ```
278
+
279
+ <!--SECTION END: Main Entry Types-->
300
280
 
301
- export {};
281
+ ### Peer Dependencies
282
+
283
+ <!--SECTION START: Peer Dependencies-->
284
+
285
+ ```json
286
+ {
287
+ "react": "^16.8.0",
288
+ "styled-components": "^3.2.6"
289
+ }
302
290
  ```
291
+
292
+ <!--SECTION END: Peer Dependencies-->
@@ -0,0 +1,263 @@
1
+ ## API Report File for "@atlaskit/quick-search"
2
+
3
+ > Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/).
4
+
5
+ ```ts
6
+
7
+ import { ComponentType } from 'react';
8
+ import { default as React_2 } from 'react';
9
+ import { ReactNode } from 'react';
10
+
11
+ // @public (undocumented)
12
+ export class AkNavigationItem extends React_2.PureComponent<Props_2> {
13
+ // (undocumented)
14
+ static defaultProps: Partial<Props_2>;
15
+ // (undocumented)
16
+ render(): JSX.Element;
17
+ }
18
+
19
+ // @public (undocumented)
20
+ export class AkSearch extends React_2.PureComponent<Props_4> {
21
+ // (undocumented)
22
+ static defaultProps: Partial<Props_4>;
23
+ // (undocumented)
24
+ inputRef?: React_2.Ref<any>;
25
+ // (undocumented)
26
+ onInputKeyDown: (event: React_2.KeyboardEvent<HTMLInputElement>) => void;
27
+ // (undocumented)
28
+ render(): JSX.Element;
29
+ // (undocumented)
30
+ renderInputControls: () => JSX.Element | null;
31
+ // (undocumented)
32
+ setInputRef: (ref: React_2.Ref<any>) => void;
33
+ }
34
+
35
+ // @public (undocumented)
36
+ type AnalyticsData = Object;
37
+
38
+ // @public (undocumented)
39
+ export type CancelableEvent = KeyboardEvent | MouseEvent | React.KeyboardEvent<HTMLInputElement> | React.MouseEvent<HTMLElement>;
40
+
41
+ // @public (undocumented)
42
+ type CommonResultProps = {
43
+ resultId: number | string;
44
+ type?: string;
45
+ avatarUrl?: string;
46
+ avatar?: ReactNode;
47
+ elemAfter?: ReactNode;
48
+ selectedIcon?: ReactNode;
49
+ href?: string;
50
+ target?: string;
51
+ isCompact?: boolean;
52
+ onClick?: (resultData: ResultData) => void;
53
+ analyticsData?: (() => AnalyticsData) | AnalyticsData;
54
+ };
55
+
56
+ // @public
57
+ export class ContainerResult extends React_2.PureComponent<ContainerResultProps> {
58
+ // (undocumented)
59
+ getAvatar: () => {};
60
+ // (undocumented)
61
+ render(): JSX.Element;
62
+ }
63
+
64
+ // @public (undocumented)
65
+ export type ContainerResultProps = CommonResultProps & {
66
+ name: React_2.ReactNode;
67
+ caption?: string;
68
+ isPrivate?: boolean;
69
+ subText?: React_2.ReactNode;
70
+ };
71
+
72
+ // @public (undocumented)
73
+ const _default: React_2.ComponentClass<Props_3, any>;
74
+ export { _default as AkQuickSearch }
75
+ export { _default as QuickSearch }
76
+
77
+ // @public (undocumented)
78
+ type DefaultProps = {
79
+ context: ResultContextType;
80
+ };
81
+
82
+ // @public
83
+ export class ObjectResult extends React_2.PureComponent<ObjectResultProps> {
84
+ // (undocumented)
85
+ getAvatar: () => {};
86
+ // (undocumented)
87
+ getSubtext(): null | undefined | {};
88
+ // (undocumented)
89
+ render(): JSX.Element;
90
+ }
91
+
92
+ // @public (undocumented)
93
+ export type ObjectResultProps = CommonResultProps & {
94
+ name: React_2.ReactNode;
95
+ caption?: string;
96
+ containerName?: React_2.ReactNode;
97
+ isPrivate?: boolean;
98
+ objectKey?: React_2.ReactNode;
99
+ };
100
+
101
+ // @public (undocumented)
102
+ export class PersonResult extends React_2.PureComponent<PersonResultProps> {
103
+ // (undocumented)
104
+ static defaultProps: Partial<PersonResultProps>;
105
+ // (undocumented)
106
+ getAvatar: () => {};
107
+ // (undocumented)
108
+ getMention: () => string | undefined;
109
+ // (undocumented)
110
+ render(): JSX.Element;
111
+ }
112
+
113
+ // @public (undocumented)
114
+ export type PersonResultProps = CommonResultProps & {
115
+ name: React_2.ReactNode;
116
+ mentionName?: string;
117
+ mentionPrefix?: string;
118
+ presenceMessage?: React_2.ReactNode;
119
+ presenceState?: 'busy' | 'offline' | 'online' | null;
120
+ };
121
+
122
+ // @public (undocumented)
123
+ type Props = {
124
+ title: React_2.ReactNode;
125
+ children?: React_2.ReactNode;
126
+ };
127
+
128
+ // @public (undocumented)
129
+ type Props_2 = {
130
+ caption?: string;
131
+ href?: string;
132
+ target?: string;
133
+ icon?: React_2.ReactNode;
134
+ isCompact?: boolean;
135
+ isSelected?: boolean;
136
+ isMouseSelected?: boolean;
137
+ onClick?(e: MouseEvent): void;
138
+ onMouseEnter?: (e: MouseEvent) => void;
139
+ onMouseLeave?: (e: MouseEvent) => void;
140
+ subText?: React_2.ReactNode;
141
+ text?: React_2.ReactNode;
142
+ textAfter?: React_2.ReactNode;
143
+ selectedIcon?: React_2.ReactNode;
144
+ linkComponent?: React_2.ComponentType;
145
+ };
146
+
147
+ // @public (undocumented)
148
+ type Props_3 = {
149
+ children: React_2.ReactNode;
150
+ isLoading?: boolean;
151
+ onSearchBlur?: (event: React_2.FocusEvent<HTMLInputElement>) => void;
152
+ onSearchInput?: (event: React_2.FormEvent<HTMLInputElement>, isAutocompleted?: boolean) => void;
153
+ onSearchKeyDown?: (event: React_2.KeyboardEvent<HTMLInputElement>) => void;
154
+ onSearchSubmit?: (event: React_2.KeyboardEvent<HTMLInputElement>) => void;
155
+ placeholder?: string;
156
+ value?: string;
157
+ selectedResultId?: SelectedResultId;
158
+ onSelectedResultIdChanged?: (id: SelectedResultId) => void;
159
+ firePrivateAnalyticsEvent?: (eventName: string, eventData: Object) => void;
160
+ linkComponent?: React_2.ComponentType<any>;
161
+ inputControls?: React_2.ReactNode;
162
+ autocompleteText?: string;
163
+ };
164
+
165
+ // @public (undocumented)
166
+ type Props_4 = {
167
+ children?: React_2.ReactNode;
168
+ inputControls?: React_2.ReactNode;
169
+ isLoading?: boolean;
170
+ onBlur?: (event: React_2.FocusEvent<HTMLInputElement>) => void;
171
+ onInput?: (event: React_2.FormEvent<HTMLInputElement>) => void;
172
+ onKeyDown?: (event: React_2.KeyboardEvent<HTMLInputElement>) => void;
173
+ placeholder?: string;
174
+ value?: string;
175
+ autocompleteText?: string;
176
+ };
177
+
178
+ declare namespace quickSearchResultTypes {
179
+ export {
180
+ ContainerResult,
181
+ ObjectResult,
182
+ PersonResult,
183
+ ResultBase
184
+ }
185
+ }
186
+ export { quickSearchResultTypes }
187
+
188
+ // @public (undocumented)
189
+ export const ResultBase: (props: ResultBaseProps) => JSX.Element;
190
+
191
+ // @public (undocumented)
192
+ class ResultBase_2 extends React_2.PureComponent<DefaultProps & ResultBaseProps> {
193
+ // (undocumented)
194
+ componentDidMount(): void;
195
+ // (undocumented)
196
+ componentDidUpdate(): void;
197
+ // (undocumented)
198
+ componentWillUnmount(): void;
199
+ // (undocumented)
200
+ static defaultProps: Partial<ResultBaseProps>;
201
+ // (undocumented)
202
+ getAnalyticsData(): AnalyticsData;
203
+ // (undocumented)
204
+ handleClick: (e: MouseEvent) => void;
205
+ // (undocumented)
206
+ handleMouseEnter: (event: MouseEvent) => void;
207
+ // (undocumented)
208
+ handleMouseLeave: () => void;
209
+ // (undocumented)
210
+ registerResult(): void;
211
+ // (undocumented)
212
+ render(): JSX.Element;
213
+ // (undocumented)
214
+ state: {
215
+ isMouseSelected: boolean;
216
+ };
217
+ }
218
+
219
+ // @public (undocumented)
220
+ export type ResultBaseProps = CommonResultProps & {
221
+ type: string;
222
+ text: React_2.ReactNode;
223
+ subText?: React_2.ReactNode;
224
+ caption?: string;
225
+ icon?: React_2.ReactNode;
226
+ context?: ResultContextType;
227
+ };
228
+
229
+ // @public (undocumented)
230
+ type ResultContextType = {
231
+ registerResult: (result: ResultBase_2) => void;
232
+ unregisterResult: (result: ResultBase_2) => void;
233
+ onMouseEnter: (resultData: ResultData) => void;
234
+ onMouseLeave: () => void;
235
+ sendAnalytics?: (eventName: string, eventData: Object) => void;
236
+ getIndex: (resultId: ResultId) => null | number;
237
+ linkComponent?: ComponentType;
238
+ };
239
+
240
+ // @public (undocumented)
241
+ export type ResultData = {
242
+ resultId: ResultId;
243
+ type: string;
244
+ event: CancelableEvent;
245
+ };
246
+
247
+ // @public (undocumented)
248
+ type ResultId = number | string;
249
+
250
+ // @public (undocumented)
251
+ class ResultItemGroup extends React_2.Component<Props> {
252
+ // (undocumented)
253
+ render(): JSX.Element;
254
+ }
255
+ export { ResultItemGroup as AkNavigationItemGroup }
256
+ export { ResultItemGroup }
257
+
258
+ // @public (undocumented)
259
+ type SelectedResultId = ResultId | null;
260
+
261
+ // (No @packageDocumentation comment for this package)
262
+
263
+ ```