@atlaskit/emoji 67.0.7 → 67.2.0

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 (238) hide show
  1. package/CHANGELOG.md +37 -0
  2. package/dist/cjs/api/EmojiResource.js +41 -25
  3. package/dist/cjs/api/media/TokenManager.js +4 -4
  4. package/dist/cjs/components/common/CachingEmoji.js +14 -6
  5. package/dist/cjs/components/common/Emoji.js +48 -12
  6. package/dist/cjs/components/common/EmojiActions.js +62 -26
  7. package/dist/cjs/components/common/EmojiErrorMessage.js +12 -7
  8. package/dist/cjs/components/common/EmojiPlaceholder.js +1 -0
  9. package/dist/cjs/components/common/{EmojiButton.js → EmojiRadioButton.js} +28 -19
  10. package/dist/cjs/components/common/EmojiUploadPicker.js +80 -37
  11. package/dist/cjs/components/common/EmojiUploadPreview.js +11 -2
  12. package/dist/cjs/components/common/FileChooser.js +2 -2
  13. package/dist/cjs/components/common/ResourcedEmojiComponent.js +4 -0
  14. package/dist/cjs/components/common/RetryableButton.js +7 -3
  15. package/dist/cjs/components/common/TonePreviewButton.js +44 -0
  16. package/dist/cjs/components/common/ToneSelector.js +53 -25
  17. package/dist/cjs/components/common/styles.js +45 -16
  18. package/dist/cjs/components/i18n.js +44 -4
  19. package/dist/cjs/components/picker/CategorySelector.js +112 -90
  20. package/dist/cjs/components/picker/CategoryTracker.js +0 -28
  21. package/dist/cjs/components/picker/EmojiPickerCategoryHeading.js +2 -1
  22. package/dist/cjs/components/picker/EmojiPickerComponent.js +33 -44
  23. package/dist/cjs/components/picker/EmojiPickerEmojiRow.js +32 -4
  24. package/dist/cjs/components/picker/EmojiPickerList.js +154 -88
  25. package/dist/cjs/components/picker/EmojiPickerListSearch.js +66 -117
  26. package/dist/cjs/components/picker/EmojiPickerVirtualItems.js +5 -2
  27. package/dist/cjs/components/picker/VirtualList.js +273 -171
  28. package/dist/cjs/components/picker/styles.js +43 -51
  29. package/dist/cjs/components/typeahead/EmojiTypeAheadComponent.js +0 -10
  30. package/dist/cjs/context/EmojiPickerListContext.js +33 -0
  31. package/dist/cjs/hooks/useEmojiPickerListContext.js +12 -0
  32. package/dist/cjs/hooks/useIsMounted.js +17 -0
  33. package/dist/cjs/i18n/cs.js +35 -34
  34. package/dist/cjs/i18n/da.js +35 -34
  35. package/dist/cjs/i18n/de.js +35 -34
  36. package/dist/cjs/i18n/en.js +35 -34
  37. package/dist/cjs/i18n/en_GB.js +35 -34
  38. package/dist/cjs/i18n/es.js +35 -34
  39. package/dist/cjs/i18n/fi.js +35 -34
  40. package/dist/cjs/i18n/fr.js +35 -34
  41. package/dist/cjs/i18n/hu.js +35 -34
  42. package/dist/cjs/i18n/it.js +35 -34
  43. package/dist/cjs/i18n/ja.js +35 -34
  44. package/dist/cjs/i18n/ko.js +35 -34
  45. package/dist/cjs/i18n/nb.js +35 -34
  46. package/dist/cjs/i18n/nl.js +35 -34
  47. package/dist/cjs/i18n/pl.js +35 -34
  48. package/dist/cjs/i18n/pt_BR.js +35 -34
  49. package/dist/cjs/i18n/ru.js +35 -34
  50. package/dist/cjs/i18n/sv.js +35 -34
  51. package/dist/cjs/i18n/th.js +35 -34
  52. package/dist/cjs/i18n/tr.js +35 -34
  53. package/dist/cjs/i18n/uk.js +35 -34
  54. package/dist/cjs/i18n/vi.js +35 -34
  55. package/dist/cjs/i18n/zh.js +35 -34
  56. package/dist/cjs/i18n/zh_TW.js +35 -34
  57. package/dist/cjs/types.js +7 -1
  58. package/dist/cjs/util/constants.js +43 -2
  59. package/dist/cjs/util/shared-styles.js +3 -4
  60. package/dist/cjs/version.json +1 -1
  61. package/dist/es2019/api/EmojiResource.js +42 -26
  62. package/dist/es2019/api/media/TokenManager.js +4 -4
  63. package/dist/es2019/components/common/CachingEmoji.js +10 -3
  64. package/dist/es2019/components/common/Emoji.js +44 -11
  65. package/dist/es2019/components/common/EmojiActions.js +55 -24
  66. package/dist/es2019/components/common/EmojiErrorMessage.js +7 -3
  67. package/dist/es2019/components/common/EmojiPlaceholder.js +1 -0
  68. package/dist/es2019/components/common/EmojiRadioButton.js +54 -0
  69. package/dist/es2019/components/common/EmojiUploadPicker.js +75 -36
  70. package/dist/es2019/components/common/EmojiUploadPreview.js +11 -2
  71. package/dist/es2019/components/common/FileChooser.js +1 -1
  72. package/dist/es2019/components/common/ResourcedEmojiComponent.js +4 -0
  73. package/dist/es2019/components/common/RetryableButton.js +7 -3
  74. package/dist/es2019/components/common/TonePreviewButton.js +34 -0
  75. package/dist/es2019/components/common/ToneSelector.js +55 -21
  76. package/dist/es2019/components/common/styles.js +41 -10
  77. package/dist/es2019/components/i18n.js +44 -4
  78. package/dist/es2019/components/picker/CategorySelector.js +114 -89
  79. package/dist/es2019/components/picker/CategoryTracker.js +0 -24
  80. package/dist/es2019/components/picker/EmojiPickerCategoryHeading.js +2 -2
  81. package/dist/es2019/components/picker/EmojiPickerComponent.js +36 -46
  82. package/dist/es2019/components/picker/EmojiPickerEmojiRow.js +51 -21
  83. package/dist/es2019/components/picker/EmojiPickerList.js +113 -55
  84. package/dist/es2019/components/picker/EmojiPickerListSearch.js +61 -98
  85. package/dist/es2019/components/picker/EmojiPickerVirtualItems.js +4 -1
  86. package/dist/es2019/components/picker/VirtualList.js +247 -108
  87. package/dist/es2019/components/picker/styles.js +20 -28
  88. package/dist/es2019/components/typeahead/EmojiTypeAheadComponent.js +0 -10
  89. package/dist/es2019/context/EmojiPickerListContext.js +17 -0
  90. package/dist/es2019/hooks/useEmojiPickerListContext.js +3 -0
  91. package/dist/es2019/hooks/useIsMounted.js +11 -0
  92. package/dist/es2019/i18n/cs.js +35 -34
  93. package/dist/es2019/i18n/da.js +35 -34
  94. package/dist/es2019/i18n/de.js +35 -34
  95. package/dist/es2019/i18n/en.js +35 -34
  96. package/dist/es2019/i18n/en_GB.js +35 -34
  97. package/dist/es2019/i18n/es.js +35 -34
  98. package/dist/es2019/i18n/fi.js +35 -34
  99. package/dist/es2019/i18n/fr.js +35 -34
  100. package/dist/es2019/i18n/hu.js +35 -34
  101. package/dist/es2019/i18n/it.js +35 -34
  102. package/dist/es2019/i18n/ja.js +35 -34
  103. package/dist/es2019/i18n/ko.js +35 -34
  104. package/dist/es2019/i18n/nb.js +35 -34
  105. package/dist/es2019/i18n/nl.js +35 -34
  106. package/dist/es2019/i18n/pl.js +35 -34
  107. package/dist/es2019/i18n/pt_BR.js +35 -34
  108. package/dist/es2019/i18n/ru.js +35 -34
  109. package/dist/es2019/i18n/sv.js +35 -34
  110. package/dist/es2019/i18n/th.js +35 -34
  111. package/dist/es2019/i18n/tr.js +35 -34
  112. package/dist/es2019/i18n/uk.js +35 -34
  113. package/dist/es2019/i18n/vi.js +35 -34
  114. package/dist/es2019/i18n/zh.js +35 -34
  115. package/dist/es2019/i18n/zh_TW.js +35 -34
  116. package/dist/es2019/types.js +5 -0
  117. package/dist/es2019/util/constants.js +32 -0
  118. package/dist/es2019/util/shared-styles.js +1 -2
  119. package/dist/es2019/version.json +1 -1
  120. package/dist/esm/api/EmojiResource.js +42 -26
  121. package/dist/esm/api/media/TokenManager.js +4 -4
  122. package/dist/esm/components/common/CachingEmoji.js +14 -6
  123. package/dist/esm/components/common/Emoji.js +48 -12
  124. package/dist/esm/components/common/EmojiActions.js +62 -26
  125. package/dist/esm/components/common/EmojiErrorMessage.js +7 -3
  126. package/dist/esm/components/common/EmojiPlaceholder.js +1 -0
  127. package/dist/esm/components/common/EmojiRadioButton.js +52 -0
  128. package/dist/esm/components/common/EmojiUploadPicker.js +77 -36
  129. package/dist/esm/components/common/EmojiUploadPreview.js +11 -2
  130. package/dist/esm/components/common/FileChooser.js +1 -1
  131. package/dist/esm/components/common/ResourcedEmojiComponent.js +4 -0
  132. package/dist/esm/components/common/RetryableButton.js +7 -3
  133. package/dist/esm/components/common/TonePreviewButton.js +33 -0
  134. package/dist/esm/components/common/ToneSelector.js +49 -18
  135. package/dist/esm/components/common/styles.js +40 -12
  136. package/dist/esm/components/i18n.js +44 -4
  137. package/dist/esm/components/picker/CategorySelector.js +114 -95
  138. package/dist/esm/components/picker/CategoryTracker.js +0 -28
  139. package/dist/esm/components/picker/EmojiPickerCategoryHeading.js +2 -2
  140. package/dist/esm/components/picker/EmojiPickerComponent.js +35 -46
  141. package/dist/esm/components/picker/EmojiPickerEmojiRow.js +32 -4
  142. package/dist/esm/components/picker/EmojiPickerList.js +156 -86
  143. package/dist/esm/components/picker/EmojiPickerListSearch.js +64 -117
  144. package/dist/esm/components/picker/EmojiPickerVirtualItems.js +5 -2
  145. package/dist/esm/components/picker/VirtualList.js +274 -172
  146. package/dist/esm/components/picker/styles.js +37 -45
  147. package/dist/esm/components/typeahead/EmojiTypeAheadComponent.js +0 -10
  148. package/dist/esm/context/EmojiPickerListContext.js +21 -0
  149. package/dist/esm/hooks/useEmojiPickerListContext.js +5 -0
  150. package/dist/esm/hooks/useIsMounted.js +11 -0
  151. package/dist/esm/i18n/cs.js +35 -34
  152. package/dist/esm/i18n/da.js +35 -34
  153. package/dist/esm/i18n/de.js +35 -34
  154. package/dist/esm/i18n/en.js +35 -34
  155. package/dist/esm/i18n/en_GB.js +35 -34
  156. package/dist/esm/i18n/es.js +35 -34
  157. package/dist/esm/i18n/fi.js +35 -34
  158. package/dist/esm/i18n/fr.js +35 -34
  159. package/dist/esm/i18n/hu.js +35 -34
  160. package/dist/esm/i18n/it.js +35 -34
  161. package/dist/esm/i18n/ja.js +35 -34
  162. package/dist/esm/i18n/ko.js +35 -34
  163. package/dist/esm/i18n/nb.js +35 -34
  164. package/dist/esm/i18n/nl.js +35 -34
  165. package/dist/esm/i18n/pl.js +35 -34
  166. package/dist/esm/i18n/pt_BR.js +35 -34
  167. package/dist/esm/i18n/ru.js +35 -34
  168. package/dist/esm/i18n/sv.js +35 -34
  169. package/dist/esm/i18n/th.js +35 -34
  170. package/dist/esm/i18n/tr.js +35 -34
  171. package/dist/esm/i18n/uk.js +35 -34
  172. package/dist/esm/i18n/vi.js +35 -34
  173. package/dist/esm/i18n/zh.js +35 -34
  174. package/dist/esm/i18n/zh_TW.js +35 -34
  175. package/dist/esm/types.js +5 -0
  176. package/dist/esm/util/constants.js +32 -0
  177. package/dist/esm/util/shared-styles.js +1 -2
  178. package/dist/esm/version.json +1 -1
  179. package/dist/types/api/EmojiResource.d.ts +2 -0
  180. package/dist/types/components/common/Emoji.d.ts +7 -1
  181. package/dist/types/components/common/EmojiActions.d.ts +4 -3
  182. package/dist/types/components/common/{EmojiButton.d.ts → EmojiRadioButton.d.ts} +3 -4
  183. package/dist/types/components/common/EmojiUploadPicker.d.ts +6 -4
  184. package/dist/types/components/common/RetryableButton.d.ts +1 -0
  185. package/dist/types/components/common/TonePreviewButton.d.ts +14 -0
  186. package/dist/types/components/common/ToneSelector.d.ts +8 -5
  187. package/dist/types/components/common/internal-types.d.ts +9 -0
  188. package/dist/types/components/common/styles.d.ts +2 -1
  189. package/dist/types/components/i18n.d.ts +40 -0
  190. package/dist/types/components/picker/CategorySelector.d.ts +3 -10
  191. package/dist/types/components/picker/CategoryTracker.d.ts +0 -2
  192. package/dist/types/components/picker/EmojiPickerCategoryHeading.d.ts +2 -1
  193. package/dist/types/components/picker/EmojiPickerEmojiRow.d.ts +5 -0
  194. package/dist/types/components/picker/EmojiPickerList.d.ts +14 -7
  195. package/dist/types/components/picker/EmojiPickerListSearch.d.ts +4 -8
  196. package/dist/types/components/picker/EmojiPickerVirtualItems.d.ts +1 -1
  197. package/dist/types/components/picker/VirtualList.d.ts +7 -24
  198. package/dist/types/components/picker/styles.d.ts +1 -1
  199. package/dist/types/context/EmojiPickerListContext.d.ts +10 -0
  200. package/dist/types/hooks/useEmojiPickerListContext.d.ts +1 -0
  201. package/dist/types/hooks/useIsMounted.d.ts +1 -0
  202. package/dist/types/i18n/cs.d.ts +34 -34
  203. package/dist/types/i18n/da.d.ts +34 -34
  204. package/dist/types/i18n/de.d.ts +34 -34
  205. package/dist/types/i18n/en.d.ts +34 -34
  206. package/dist/types/i18n/en_GB.d.ts +34 -34
  207. package/dist/types/i18n/es.d.ts +34 -34
  208. package/dist/types/i18n/fi.d.ts +34 -34
  209. package/dist/types/i18n/fr.d.ts +34 -34
  210. package/dist/types/i18n/hu.d.ts +34 -34
  211. package/dist/types/i18n/it.d.ts +34 -34
  212. package/dist/types/i18n/ja.d.ts +34 -34
  213. package/dist/types/i18n/ko.d.ts +34 -34
  214. package/dist/types/i18n/nb.d.ts +34 -34
  215. package/dist/types/i18n/nl.d.ts +34 -34
  216. package/dist/types/i18n/pl.d.ts +34 -34
  217. package/dist/types/i18n/pt_BR.d.ts +34 -34
  218. package/dist/types/i18n/ru.d.ts +34 -34
  219. package/dist/types/i18n/sv.d.ts +34 -34
  220. package/dist/types/i18n/th.d.ts +34 -34
  221. package/dist/types/i18n/tr.d.ts +34 -34
  222. package/dist/types/i18n/uk.d.ts +34 -34
  223. package/dist/types/i18n/vi.d.ts +34 -34
  224. package/dist/types/i18n/zh.d.ts +34 -34
  225. package/dist/types/i18n/zh_TW.d.ts +34 -34
  226. package/dist/types/types.d.ts +5 -0
  227. package/dist/types/util/constants.d.ts +28 -0
  228. package/dist/types/util/shared-styles.d.ts +1 -1
  229. package/dist/types/util/type-helpers.d.ts +1 -1
  230. package/package.json +12 -8
  231. package/report.api.md +62 -1
  232. package/README.md +0 -3
  233. package/dist/cjs/components/hooks.js +0 -14
  234. package/dist/es2019/components/common/EmojiButton.js +0 -49
  235. package/dist/es2019/components/hooks.js +0 -8
  236. package/dist/esm/components/common/EmojiButton.js +0 -43
  237. package/dist/esm/components/hooks.js +0 -8
  238. package/dist/types/components/hooks.d.ts +0 -1
@@ -44,6 +44,11 @@ export declare const messages: {
44
44
  defaultMessage: string;
45
45
  description: string;
46
46
  };
47
+ emojiSelectSkinToneListAriaLabelText: {
48
+ id: string;
49
+ defaultMessage: string;
50
+ description: string;
51
+ };
47
52
  emojiImageRequirements: {
48
53
  id: string;
49
54
  defaultMessage: string;
@@ -84,6 +89,21 @@ export declare const messages: {
84
89
  defaultMessage: string;
85
90
  description: string;
86
91
  };
92
+ searchResultsStatus: {
93
+ id: string;
94
+ defaultMessage: string;
95
+ description: string;
96
+ };
97
+ searchResultsStatusSeeAll: {
98
+ id: string;
99
+ defaultMessage: string;
100
+ description: string;
101
+ };
102
+ categoriesSelectorLabel: {
103
+ id: string;
104
+ defaultMessage: string;
105
+ description: string;
106
+ };
87
107
  categoriesSearchResults: {
88
108
  id: string;
89
109
  defaultMessage: string;
@@ -169,4 +189,24 @@ export declare const messages: {
169
189
  defaultMessage: string;
170
190
  description: string;
171
191
  };
192
+ emojiPickerTitle: {
193
+ id: string;
194
+ defaultMessage: string;
195
+ description: string;
196
+ };
197
+ emojiPickerListPanel: {
198
+ id: string;
199
+ defaultMessage: string;
200
+ description: string;
201
+ };
202
+ emojiPickerGrid: {
203
+ id: string;
204
+ defaultMessage: string;
205
+ description: string;
206
+ };
207
+ emojiButtonRoleDescription: {
208
+ id: string;
209
+ defaultMessage: string;
210
+ description: string;
211
+ };
172
212
  };
@@ -1,6 +1,4 @@
1
- /** @jsx jsx */
2
- import React from 'react';
3
- import { WrappedComponentProps } from 'react-intl-next';
1
+ import { jsx } from '@emotion/react';
4
2
  import { CategoryDescription, OnCategory } from '../../types';
5
3
  import { CategoryGroupKey, CategoryId } from './categories';
6
4
  export interface Props {
@@ -9,16 +7,11 @@ export interface Props {
9
7
  disableCategories?: boolean;
10
8
  onCategorySelected?: OnCategory;
11
9
  }
12
- export interface State {
13
- categories: CategoryId[];
14
- }
15
10
  export declare type CategoryMap = {
16
11
  [id: string]: CategoryDescription;
17
12
  };
18
13
  export declare const sortCategories: (c1: CategoryGroupKey, c2: CategoryGroupKey) => number;
19
14
  export declare const categorySelectorComponentTestId = "category-selector-component";
20
15
  export declare const categorySelectorCategoryTestId: (categoryId: string) => string;
21
- declare const _default: React.FC<import("react-intl-next").WithIntlProps<Props & WrappedComponentProps<"intl">>> & {
22
- WrappedComponent: React.ComponentType<Props & WrappedComponentProps<"intl">>;
23
- };
24
- export default _default;
16
+ declare const CategorySelector: (props: Props) => jsx.JSX.Element;
17
+ export default CategorySelector;
@@ -1,5 +1,4 @@
1
1
  import { CategoryId } from './categories';
2
- import { VirtualList } from './VirtualList';
3
2
  /**
4
3
  * Mapping between CategoryId and row
5
4
  *
@@ -13,5 +12,4 @@ export default class CategoryTracker {
13
12
  reset(): void;
14
13
  add(category: CategoryId, row: number): void;
15
14
  getRow(category: CategoryId): number | undefined;
16
- findNearestCategoryAbove(startIndex: number, list?: VirtualList): CategoryId | undefined;
17
15
  }
@@ -1,11 +1,12 @@
1
1
  /** @jsx jsx */
2
2
  import { FC } from 'react';
3
+ import { CategoryGroupKey } from './categories';
3
4
  /**
4
5
  * Test id for wrapper Emoji Picker List div
5
6
  */
6
7
  export declare const RENDER_EMOJI_PICKER_CATEGORY_HEADING_TESTID = "render-emoji-picker-categorty-heading";
7
8
  export interface Props {
8
- id: string;
9
+ id: CategoryGroupKey;
9
10
  title: string;
10
11
  className?: string;
11
12
  }
@@ -1,12 +1,17 @@
1
1
  /// <reference types="react" />
2
2
  import { EmojiDescription, OnEmojiEvent } from '../../types';
3
+ import { VirtualItem as VirtualItemContext } from '@tanstack/react-virtual';
4
+ import { CategoryGroupKey } from './categories';
3
5
  export interface Props {
6
+ category: CategoryGroupKey;
4
7
  emojis: EmojiDescription[];
5
8
  title: string;
6
9
  showDelete: boolean;
7
10
  onSelected?: OnEmojiEvent;
8
11
  onMouseMove?: OnEmojiEvent;
12
+ onFocus?: OnEmojiEvent;
9
13
  onDelete?: OnEmojiEvent;
14
+ virtualItemContext?: VirtualItemContext;
10
15
  }
11
16
  declare const _default: import("react").NamedExoticComponent<Props>;
12
17
  export default _default;
@@ -38,10 +38,11 @@ export interface Props {
38
38
  onFileChooserClicked?: () => void;
39
39
  onOpenUpload: () => void;
40
40
  size?: PickerSize;
41
+ activeCategoryId?: CategoryId | null;
41
42
  }
42
43
  export interface State {
43
44
  }
44
- export default class EmojiPickerVirtualList extends PureComponent<Props, State> {
45
+ export default class EmojiPickerVirtualListInternal extends PureComponent<Props, State> {
45
46
  static defaultProps: {
46
47
  onEmojiSelected: () => void;
47
48
  onEmojiActive: () => void;
@@ -51,29 +52,35 @@ export default class EmojiPickerVirtualList extends PureComponent<Props, State>
51
52
  size: string;
52
53
  };
53
54
  private allEmojiGroups;
54
- private activeCategoryId;
55
55
  private virtualItems;
56
56
  private categoryTracker;
57
+ private lastYourUploadsRow;
58
+ private listRef;
57
59
  constructor(props: Props);
58
60
  UNSAFE_componentWillUpdate(nextProps: Props, nextState: State): void;
59
- private onEmojiMouseEnter;
61
+ private onEmojiActive;
60
62
  private onSearch;
61
63
  /**
62
64
  * Scrolls to a category in the list view
63
65
  */
64
66
  reveal(category: CategoryId): void;
65
67
  scrollToBottom(): void;
68
+ scrollToTop(): void;
69
+ scrollToRow(index?: number): void;
70
+ scrollToRecentlyUploaded(): void;
66
71
  private buildVirtualItemFromGroup;
67
72
  private buildVirtualItems;
68
73
  private addToCategoryMap;
69
74
  private groupByCategory;
70
75
  private buildEmojiGroupedByCategory;
71
- private repaintList;
76
+ private findCategoryToActivate;
72
77
  /**
73
- * Checks if list is showing a new CategoryId
74
- * to inform selector to change active category
78
+ * onRowsRendered callback function
79
+ *
80
+ * Check the category of top of rendered row and inform category selector to change active category
81
+ * Rove index of emoji picker list
75
82
  */
76
- private checkCategoryIdChange;
83
+ private onRowsRendered;
77
84
  private rowSize;
78
85
  private renderRow;
79
86
  render(): jsx.JSX.Element;
@@ -1,14 +1,10 @@
1
- /** @jsx jsx */
2
- import React from 'react';
3
- import { WrappedComponentProps } from 'react-intl-next';
1
+ import { jsx } from '@emotion/react';
4
2
  import { Styles } from '../../types';
5
3
  export interface Props {
6
4
  style?: Styles;
7
5
  query?: string;
8
- onChange: any;
6
+ onChange: (value: string) => void;
7
+ resultsCount: number;
9
8
  }
10
9
  export declare const emojiPickerSearchTestId = "emoji-picker-serach";
11
- declare const _default: React.FC<import("react-intl-next").WithIntlProps<Props & WrappedComponentProps<"intl">>> & {
12
- WrappedComponent: React.ComponentType<Props & WrappedComponentProps<"intl">>;
13
- };
14
- export default _default;
10
+ export declare const EmojiPickerListSearch: (props: Props) => jsx.JSX.Element;
@@ -20,7 +20,7 @@ export declare abstract class AbstractItem<P> implements VirtualItem<P> {
20
20
  }
21
21
  export declare class EmojisRowItem extends AbstractItem<EmojiRowProps> {
22
22
  constructor(props: EmojiRowProps);
23
- renderItem: () => jsx.JSX.Element;
23
+ renderItem: (context?: VirtualItemContext | undefined) => jsx.JSX.Element;
24
24
  }
25
25
  export declare class LoadingItem extends AbstractItem<{}> {
26
26
  constructor();
@@ -1,7 +1,5 @@
1
- /** @jsx jsx */
2
- import { jsx } from '@emotion/react';
3
1
  import { VirtualItem as VirtualItemContext } from '@tanstack/react-virtual';
4
- import { PureComponent, UIEvent } from 'react';
2
+ import React from 'react';
5
3
  declare type Props = {
6
4
  overscanRowCount: number;
7
5
  rowHeight: (index: number) => number;
@@ -14,26 +12,11 @@ declare type Props = {
14
12
  width: number;
15
13
  height: number;
16
14
  };
15
+ export declare type ListRef = {
16
+ scrollToRow: (index?: number) => void;
17
+ scrollToRowAndFocusLastEmoji: (index?: number) => void;
18
+ updateFocusIndex: (index: number) => void;
19
+ };
17
20
  export declare const virtualListScrollContainerTestId = "virtual-list-scroll-container";
18
- export declare class VirtualList extends PureComponent<Props> {
19
- private parentRef;
20
- private rowVirtualizer;
21
- /**
22
- * Determine if the component is mounted to the DOM or not
23
- */
24
- private _isMounted;
25
- constructor(props: Props);
26
- private getVirtualizerOptions;
27
- private isElementVisible;
28
- private getFirstVisibleListElementIndex;
29
- private onRendered;
30
- componentDidUpdate(): void;
31
- componentDidMount(): void;
32
- componentWillUnmount(): void;
33
- scrollToRow(index?: number): void;
34
- forceUpdateGrid(): void;
35
- recomputeRowHeights(): void;
36
- handleScroll(e: UIEvent<HTMLDivElement>): void;
37
- render(): jsx.JSX.Element;
38
- }
21
+ export declare const VirtualList: React.ForwardRefExoticComponent<Props & React.RefAttributes<ListRef>>;
39
22
  export {};
@@ -1,7 +1,7 @@
1
1
  import { PickerSize } from '../../types';
2
2
  export declare const emojiPicker: (hasPreview?: boolean | undefined, size?: PickerSize) => import("@emotion/react").SerializedStyles;
3
- export declare const addButton = "emoji-picker-add-button";
4
3
  export declare const categorySelector: import("@emotion/react").SerializedStyles;
4
+ export declare const categorySelectorTablist: import("@emotion/react").SerializedStyles;
5
5
  export declare const active: import("@emotion/react").SerializedStyles;
6
6
  export declare const disable: import("@emotion/react").SerializedStyles;
7
7
  export declare const categoryStyles: import("@emotion/react").SerializedStyles;
@@ -0,0 +1,10 @@
1
+ import React, { FC } from 'react';
2
+ import { EmojiPickerListContextType } from '../components/common/internal-types';
3
+ export declare const EmojiPickerListContext: React.Context<EmojiPickerListContextType>;
4
+ export interface EmojiPickerListContextProviderProps {
5
+ initialEmojisFocus: {
6
+ rowIndex: number;
7
+ columnIndex: number;
8
+ };
9
+ }
10
+ export declare const EmojiPickerListContextProvider: FC<EmojiPickerListContextProviderProps>;
@@ -0,0 +1 @@
1
+ export declare const useEmojiPickerListContext: () => import("../components/common/internal-types").EmojiPickerListContextType;
@@ -0,0 +1 @@
1
+ export declare function useIsMounted(): boolean;
@@ -1,38 +1,38 @@
1
1
  declare const _default: {
2
- 'fabric.emoji.add.custom.emoji.label': string;
3
- 'fabric.emoji.add.label': string;
4
- 'fabric.emoji.cancel.label': string;
5
- 'fabric.emoji.categories.search.results': string;
6
- 'fabric.emoji.category.activity': string;
7
- 'fabric.emoji.category.all.uploads': string;
8
- 'fabric.emoji.category.flags': string;
9
- 'fabric.emoji.category.foods': string;
10
- 'fabric.emoji.category.frequent': string;
11
- 'fabric.emoji.category.nature': string;
12
- 'fabric.emoji.category.objects': string;
13
- 'fabric.emoji.category.people': string;
14
- 'fabric.emoji.category.places': string;
15
- 'fabric.emoji.category.productivity': string;
16
- 'fabric.emoji.category.symbols': string;
17
- 'fabric.emoji.category.user.uploads': string;
18
- 'fabric.emoji.choose.file.screenReaderDescription': string;
19
- 'fabric.emoji.choose.file.title': string;
20
- 'fabric.emoji.delete.description': string;
21
- 'fabric.emoji.delete.label': string;
22
- 'fabric.emoji.delete.title': string;
23
- 'fabric.emoji.error.delete.failed': string;
24
- 'fabric.emoji.error.image.too.big': string;
25
- 'fabric.emoji.error.invalid.image': string;
26
- 'fabric.emoji.error.upload.failed': string;
27
- 'fabric.emoji.image.requirements': string;
28
- 'fabric.emoji.name.ariaLabel': string;
29
- 'fabric.emoji.placeholder': string;
30
- 'fabric.emoji.preview': string;
31
- 'fabric.emoji.preview.title': string;
32
- 'fabric.emoji.retry.label': string;
33
- 'fabric.emoji.search.label': string;
34
- 'fabric.emoji.search.placeholder': string;
35
- 'fabric.emoji.select.skin.tone.ariaLabel': string;
2
+ "fabric.emoji.add.custom.emoji.label": string;
3
+ "fabric.emoji.add.label": string;
4
+ "fabric.emoji.cancel.label": string;
5
+ "fabric.emoji.categories.search.results": string;
6
+ "fabric.emoji.category.activity": string;
7
+ "fabric.emoji.category.all.uploads": string;
8
+ "fabric.emoji.category.flags": string;
9
+ "fabric.emoji.category.foods": string;
10
+ "fabric.emoji.category.frequent": string;
11
+ "fabric.emoji.category.nature": string;
12
+ "fabric.emoji.category.objects": string;
13
+ "fabric.emoji.category.people": string;
14
+ "fabric.emoji.category.places": string;
15
+ "fabric.emoji.category.productivity": string;
16
+ "fabric.emoji.category.symbols": string;
17
+ "fabric.emoji.category.user.uploads": string;
18
+ "fabric.emoji.choose.file.screenReaderDescription": string;
19
+ "fabric.emoji.choose.file.title": string;
20
+ "fabric.emoji.delete.description": string;
21
+ "fabric.emoji.delete.label": string;
22
+ "fabric.emoji.delete.title": string;
23
+ "fabric.emoji.error.delete.failed": string;
24
+ "fabric.emoji.error.image.too.big": string;
25
+ "fabric.emoji.error.invalid.image": string;
26
+ "fabric.emoji.error.upload.failed": string;
27
+ "fabric.emoji.image.requirements": string;
28
+ "fabric.emoji.name.ariaLabel": string;
29
+ "fabric.emoji.placeholder": string;
30
+ "fabric.emoji.preview": string;
31
+ "fabric.emoji.preview.title": string;
32
+ "fabric.emoji.retry.label": string;
33
+ "fabric.emoji.search.label": string;
34
+ "fabric.emoji.search.placeholder": string;
35
+ "fabric.emoji.select.skin.tone.ariaLabel": string;
36
36
  };
37
37
  /**
38
38
  * NOTE:
@@ -1,38 +1,38 @@
1
1
  declare const _default: {
2
- 'fabric.emoji.add.custom.emoji.label': string;
3
- 'fabric.emoji.add.label': string;
4
- 'fabric.emoji.cancel.label': string;
5
- 'fabric.emoji.categories.search.results': string;
6
- 'fabric.emoji.category.activity': string;
7
- 'fabric.emoji.category.all.uploads': string;
8
- 'fabric.emoji.category.flags': string;
9
- 'fabric.emoji.category.foods': string;
10
- 'fabric.emoji.category.frequent': string;
11
- 'fabric.emoji.category.nature': string;
12
- 'fabric.emoji.category.objects': string;
13
- 'fabric.emoji.category.people': string;
14
- 'fabric.emoji.category.places': string;
15
- 'fabric.emoji.category.productivity': string;
16
- 'fabric.emoji.category.symbols': string;
17
- 'fabric.emoji.category.user.uploads': string;
18
- 'fabric.emoji.choose.file.screenReaderDescription': string;
19
- 'fabric.emoji.choose.file.title': string;
20
- 'fabric.emoji.delete.description': string;
21
- 'fabric.emoji.delete.label': string;
22
- 'fabric.emoji.delete.title': string;
23
- 'fabric.emoji.error.delete.failed': string;
24
- 'fabric.emoji.error.image.too.big': string;
25
- 'fabric.emoji.error.invalid.image': string;
26
- 'fabric.emoji.error.upload.failed': string;
27
- 'fabric.emoji.image.requirements': string;
28
- 'fabric.emoji.name.ariaLabel': string;
29
- 'fabric.emoji.placeholder': string;
30
- 'fabric.emoji.preview': string;
31
- 'fabric.emoji.preview.title': string;
32
- 'fabric.emoji.retry.label': string;
33
- 'fabric.emoji.search.label': string;
34
- 'fabric.emoji.search.placeholder': string;
35
- 'fabric.emoji.select.skin.tone.ariaLabel': string;
2
+ "fabric.emoji.add.custom.emoji.label": string;
3
+ "fabric.emoji.add.label": string;
4
+ "fabric.emoji.cancel.label": string;
5
+ "fabric.emoji.categories.search.results": string;
6
+ "fabric.emoji.category.activity": string;
7
+ "fabric.emoji.category.all.uploads": string;
8
+ "fabric.emoji.category.flags": string;
9
+ "fabric.emoji.category.foods": string;
10
+ "fabric.emoji.category.frequent": string;
11
+ "fabric.emoji.category.nature": string;
12
+ "fabric.emoji.category.objects": string;
13
+ "fabric.emoji.category.people": string;
14
+ "fabric.emoji.category.places": string;
15
+ "fabric.emoji.category.productivity": string;
16
+ "fabric.emoji.category.symbols": string;
17
+ "fabric.emoji.category.user.uploads": string;
18
+ "fabric.emoji.choose.file.screenReaderDescription": string;
19
+ "fabric.emoji.choose.file.title": string;
20
+ "fabric.emoji.delete.description": string;
21
+ "fabric.emoji.delete.label": string;
22
+ "fabric.emoji.delete.title": string;
23
+ "fabric.emoji.error.delete.failed": string;
24
+ "fabric.emoji.error.image.too.big": string;
25
+ "fabric.emoji.error.invalid.image": string;
26
+ "fabric.emoji.error.upload.failed": string;
27
+ "fabric.emoji.image.requirements": string;
28
+ "fabric.emoji.name.ariaLabel": string;
29
+ "fabric.emoji.placeholder": string;
30
+ "fabric.emoji.preview": string;
31
+ "fabric.emoji.preview.title": string;
32
+ "fabric.emoji.retry.label": string;
33
+ "fabric.emoji.search.label": string;
34
+ "fabric.emoji.search.placeholder": string;
35
+ "fabric.emoji.select.skin.tone.ariaLabel": string;
36
36
  };
37
37
  /**
38
38
  * NOTE:
@@ -1,38 +1,38 @@
1
1
  declare const _default: {
2
- 'fabric.emoji.add.custom.emoji.label': string;
3
- 'fabric.emoji.add.label': string;
4
- 'fabric.emoji.cancel.label': string;
5
- 'fabric.emoji.categories.search.results': string;
6
- 'fabric.emoji.category.activity': string;
7
- 'fabric.emoji.category.all.uploads': string;
8
- 'fabric.emoji.category.flags': string;
9
- 'fabric.emoji.category.foods': string;
10
- 'fabric.emoji.category.frequent': string;
11
- 'fabric.emoji.category.nature': string;
12
- 'fabric.emoji.category.objects': string;
13
- 'fabric.emoji.category.people': string;
14
- 'fabric.emoji.category.places': string;
15
- 'fabric.emoji.category.productivity': string;
16
- 'fabric.emoji.category.symbols': string;
17
- 'fabric.emoji.category.user.uploads': string;
18
- 'fabric.emoji.choose.file.screenReaderDescription': string;
19
- 'fabric.emoji.choose.file.title': string;
20
- 'fabric.emoji.delete.description': string;
21
- 'fabric.emoji.delete.label': string;
22
- 'fabric.emoji.delete.title': string;
23
- 'fabric.emoji.error.delete.failed': string;
24
- 'fabric.emoji.error.image.too.big': string;
25
- 'fabric.emoji.error.invalid.image': string;
26
- 'fabric.emoji.error.upload.failed': string;
27
- 'fabric.emoji.image.requirements': string;
28
- 'fabric.emoji.name.ariaLabel': string;
29
- 'fabric.emoji.placeholder': string;
30
- 'fabric.emoji.preview': string;
31
- 'fabric.emoji.preview.title': string;
32
- 'fabric.emoji.retry.label': string;
33
- 'fabric.emoji.search.label': string;
34
- 'fabric.emoji.search.placeholder': string;
35
- 'fabric.emoji.select.skin.tone.ariaLabel': string;
2
+ "fabric.emoji.add.custom.emoji.label": string;
3
+ "fabric.emoji.add.label": string;
4
+ "fabric.emoji.cancel.label": string;
5
+ "fabric.emoji.categories.search.results": string;
6
+ "fabric.emoji.category.activity": string;
7
+ "fabric.emoji.category.all.uploads": string;
8
+ "fabric.emoji.category.flags": string;
9
+ "fabric.emoji.category.foods": string;
10
+ "fabric.emoji.category.frequent": string;
11
+ "fabric.emoji.category.nature": string;
12
+ "fabric.emoji.category.objects": string;
13
+ "fabric.emoji.category.people": string;
14
+ "fabric.emoji.category.places": string;
15
+ "fabric.emoji.category.productivity": string;
16
+ "fabric.emoji.category.symbols": string;
17
+ "fabric.emoji.category.user.uploads": string;
18
+ "fabric.emoji.choose.file.screenReaderDescription": string;
19
+ "fabric.emoji.choose.file.title": string;
20
+ "fabric.emoji.delete.description": string;
21
+ "fabric.emoji.delete.label": string;
22
+ "fabric.emoji.delete.title": string;
23
+ "fabric.emoji.error.delete.failed": string;
24
+ "fabric.emoji.error.image.too.big": string;
25
+ "fabric.emoji.error.invalid.image": string;
26
+ "fabric.emoji.error.upload.failed": string;
27
+ "fabric.emoji.image.requirements": string;
28
+ "fabric.emoji.name.ariaLabel": string;
29
+ "fabric.emoji.placeholder": string;
30
+ "fabric.emoji.preview": string;
31
+ "fabric.emoji.preview.title": string;
32
+ "fabric.emoji.retry.label": string;
33
+ "fabric.emoji.search.label": string;
34
+ "fabric.emoji.search.placeholder": string;
35
+ "fabric.emoji.select.skin.tone.ariaLabel": string;
36
36
  };
37
37
  /**
38
38
  * NOTE:
@@ -1,38 +1,38 @@
1
1
  declare const _default: {
2
- 'fabric.emoji.add.custom.emoji.label': string;
3
- 'fabric.emoji.add.label': string;
4
- 'fabric.emoji.cancel.label': string;
5
- 'fabric.emoji.categories.search.results': string;
6
- 'fabric.emoji.category.activity': string;
7
- 'fabric.emoji.category.all.uploads': string;
8
- 'fabric.emoji.category.flags': string;
9
- 'fabric.emoji.category.foods': string;
10
- 'fabric.emoji.category.frequent': string;
11
- 'fabric.emoji.category.nature': string;
12
- 'fabric.emoji.category.objects': string;
13
- 'fabric.emoji.category.people': string;
14
- 'fabric.emoji.category.places': string;
15
- 'fabric.emoji.category.productivity': string;
16
- 'fabric.emoji.category.symbols': string;
17
- 'fabric.emoji.category.user.uploads': string;
18
- 'fabric.emoji.choose.file.screenReaderDescription': string;
19
- 'fabric.emoji.choose.file.title': string;
20
- 'fabric.emoji.delete.description': string;
21
- 'fabric.emoji.delete.label': string;
22
- 'fabric.emoji.delete.title': string;
23
- 'fabric.emoji.error.delete.failed': string;
24
- 'fabric.emoji.error.image.too.big': string;
25
- 'fabric.emoji.error.invalid.image': string;
26
- 'fabric.emoji.error.upload.failed': string;
27
- 'fabric.emoji.image.requirements': string;
28
- 'fabric.emoji.name.ariaLabel': string;
29
- 'fabric.emoji.placeholder': string;
30
- 'fabric.emoji.preview': string;
31
- 'fabric.emoji.preview.title': string;
32
- 'fabric.emoji.retry.label': string;
33
- 'fabric.emoji.search.label': string;
34
- 'fabric.emoji.search.placeholder': string;
35
- 'fabric.emoji.select.skin.tone.ariaLabel': string;
2
+ "fabric.emoji.add.custom.emoji.label": string;
3
+ "fabric.emoji.add.label": string;
4
+ "fabric.emoji.cancel.label": string;
5
+ "fabric.emoji.categories.search.results": string;
6
+ "fabric.emoji.category.activity": string;
7
+ "fabric.emoji.category.all.uploads": string;
8
+ "fabric.emoji.category.flags": string;
9
+ "fabric.emoji.category.foods": string;
10
+ "fabric.emoji.category.frequent": string;
11
+ "fabric.emoji.category.nature": string;
12
+ "fabric.emoji.category.objects": string;
13
+ "fabric.emoji.category.people": string;
14
+ "fabric.emoji.category.places": string;
15
+ "fabric.emoji.category.productivity": string;
16
+ "fabric.emoji.category.symbols": string;
17
+ "fabric.emoji.category.user.uploads": string;
18
+ "fabric.emoji.choose.file.screenReaderDescription": string;
19
+ "fabric.emoji.choose.file.title": string;
20
+ "fabric.emoji.delete.description": string;
21
+ "fabric.emoji.delete.label": string;
22
+ "fabric.emoji.delete.title": string;
23
+ "fabric.emoji.error.delete.failed": string;
24
+ "fabric.emoji.error.image.too.big": string;
25
+ "fabric.emoji.error.invalid.image": string;
26
+ "fabric.emoji.error.upload.failed": string;
27
+ "fabric.emoji.image.requirements": string;
28
+ "fabric.emoji.name.ariaLabel": string;
29
+ "fabric.emoji.placeholder": string;
30
+ "fabric.emoji.preview": string;
31
+ "fabric.emoji.preview.title": string;
32
+ "fabric.emoji.retry.label": string;
33
+ "fabric.emoji.search.label": string;
34
+ "fabric.emoji.search.placeholder": string;
35
+ "fabric.emoji.select.skin.tone.ariaLabel": string;
36
36
  };
37
37
  /**
38
38
  * NOTE: