@atlaskit/reactions 21.4.0 → 21.6.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 (319) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/MockReactionsClient/package.json +7 -0
  3. package/dist/cjs/MockReactionsClient.js +276 -0
  4. package/dist/cjs/analytics/analytics.js +141 -0
  5. package/dist/cjs/analytics/index.js +4 -134
  6. package/dist/cjs/client/ReactionServiceClient.js +29 -6
  7. package/dist/cjs/components/{Counter.js → Counter/Counter.js} +32 -39
  8. package/dist/cjs/components/Counter/index.js +36 -0
  9. package/dist/cjs/components/Counter/styles.js +33 -0
  10. package/dist/cjs/components/EmojiButton/EmojiButton.js +58 -0
  11. package/dist/cjs/components/EmojiButton/index.js +19 -0
  12. package/dist/cjs/components/EmojiButton/styles.js +25 -0
  13. package/dist/cjs/components/FlashAnimation/FlashAnimation.js +42 -0
  14. package/dist/cjs/components/FlashAnimation/index.js +19 -0
  15. package/dist/cjs/components/{FlashAnimation.js → FlashAnimation/styles.js} +7 -26
  16. package/dist/cjs/components/Reaction/Reaction.js +163 -0
  17. package/dist/cjs/components/Reaction/index.js +19 -0
  18. package/dist/cjs/components/Reaction/styles.js +70 -0
  19. package/dist/cjs/components/ReactionPicker/ReactionPicker.js +272 -0
  20. package/dist/cjs/components/ReactionPicker/index.js +19 -0
  21. package/dist/cjs/components/ReactionPicker/styles.js +37 -0
  22. package/dist/cjs/components/ReactionTooltip/ReactionTooltip.js +71 -0
  23. package/dist/cjs/components/ReactionTooltip/index.js +19 -0
  24. package/dist/cjs/components/ReactionTooltip/styles.js +46 -0
  25. package/dist/cjs/components/Reactions/Reactions.js +200 -0
  26. package/dist/cjs/components/Reactions/index.js +25 -0
  27. package/dist/cjs/components/Reactions/styles.js +29 -0
  28. package/dist/cjs/components/Selector/Selector.js +132 -0
  29. package/dist/cjs/components/Selector/index.js +30 -0
  30. package/dist/cjs/components/Selector/styles.js +56 -0
  31. package/dist/cjs/components/ShowMore/ShowMore.js +71 -0
  32. package/dist/cjs/components/ShowMore/index.js +19 -0
  33. package/dist/cjs/components/ShowMore/styles.js +44 -0
  34. package/dist/cjs/components/Trigger/Trigger.js +59 -0
  35. package/dist/cjs/components/Trigger/index.js +13 -0
  36. package/dist/cjs/components/Trigger/styles.js +46 -0
  37. package/dist/cjs/components/{UfoErrorBoundary.js → UfoErrorBoundary/UfoErrorBoundary.js} +3 -0
  38. package/dist/cjs/components/UfoErrorBoundary/index.js +13 -0
  39. package/dist/cjs/containers/ConnectedReactionPicker/ConnectedReactionPicker.js +62 -0
  40. package/dist/cjs/containers/ConnectedReactionPicker/index.js +13 -0
  41. package/dist/cjs/containers/ConnectedReactionsView/ConnectedReactionsView.js +258 -0
  42. package/dist/cjs/containers/ConnectedReactionsView/index.js +13 -0
  43. package/dist/cjs/containers/index.js +23 -13
  44. package/dist/cjs/hooks/index.js +13 -0
  45. package/dist/cjs/hooks/useClickAway.js +35 -0
  46. package/dist/cjs/index.js +8 -0
  47. package/dist/cjs/shared/constants.js +44 -0
  48. package/dist/cjs/{components → shared}/i18n.js +1 -1
  49. package/dist/cjs/shared/index.js +24 -0
  50. package/dist/cjs/shared/utils.js +54 -0
  51. package/dist/cjs/store/{ReactionsStore.js → MemoryReactionsStore.js} +41 -18
  52. package/dist/cjs/store/ReactionConsumer.js +43 -15
  53. package/dist/cjs/store/index.js +8 -2
  54. package/dist/cjs/store/utils.js +4 -10
  55. package/dist/cjs/{client/ReactionClient.js → types/client.js} +0 -0
  56. package/dist/cjs/types/index.js +2 -2
  57. package/dist/cjs/types/reaction.js +43 -0
  58. package/dist/cjs/types/{DetailedReaction.js → store.js} +0 -0
  59. package/dist/cjs/version.json +1 -1
  60. package/dist/es2019/MockReactionsClient.js +126 -0
  61. package/dist/es2019/analytics/analytics.js +64 -0
  62. package/dist/es2019/analytics/index.js +3 -65
  63. package/dist/es2019/analytics/ufo.js +0 -1
  64. package/dist/es2019/client/ReactionServiceClient.js +31 -6
  65. package/dist/es2019/components/{Counter.js → Counter/Counter.js} +26 -31
  66. package/dist/es2019/components/Counter/index.js +3 -0
  67. package/dist/es2019/components/Counter/styles.js +20 -0
  68. package/dist/es2019/components/EmojiButton/EmojiButton.js +35 -0
  69. package/dist/es2019/components/EmojiButton/index.js +1 -0
  70. package/dist/es2019/components/EmojiButton/styles.js +16 -0
  71. package/dist/es2019/components/FlashAnimation/FlashAnimation.js +18 -0
  72. package/dist/es2019/components/FlashAnimation/index.js +1 -0
  73. package/dist/es2019/components/{FlashAnimation.js → FlashAnimation/styles.js} +6 -17
  74. package/dist/es2019/components/Reaction/Reaction.js +104 -0
  75. package/dist/es2019/components/Reaction/index.js +1 -0
  76. package/dist/es2019/components/Reaction/styles.js +55 -0
  77. package/dist/es2019/components/ReactionPicker/ReactionPicker.js +208 -0
  78. package/dist/es2019/components/ReactionPicker/index.js +1 -0
  79. package/dist/es2019/components/ReactionPicker/styles.js +23 -0
  80. package/dist/es2019/components/ReactionTooltip/ReactionTooltip.js +46 -0
  81. package/dist/es2019/components/ReactionTooltip/index.js +1 -0
  82. package/dist/es2019/components/ReactionTooltip/styles.js +32 -0
  83. package/dist/es2019/components/Reactions/Reactions.js +156 -0
  84. package/dist/es2019/components/Reactions/index.js +1 -0
  85. package/dist/es2019/components/Reactions/styles.js +19 -0
  86. package/dist/es2019/components/Selector/Selector.js +98 -0
  87. package/dist/es2019/components/Selector/index.js +3 -0
  88. package/dist/es2019/components/Selector/styles.js +39 -0
  89. package/dist/es2019/components/ShowMore/ShowMore.js +43 -0
  90. package/dist/es2019/components/ShowMore/index.js +1 -0
  91. package/dist/es2019/components/ShowMore/styles.js +30 -0
  92. package/dist/es2019/components/{Trigger.js → Trigger/Trigger.js} +15 -20
  93. package/dist/es2019/components/Trigger/index.js +1 -0
  94. package/dist/es2019/components/Trigger/styles.js +24 -0
  95. package/dist/es2019/components/{UfoErrorBoundary.js → UfoErrorBoundary/UfoErrorBoundary.js} +4 -0
  96. package/dist/es2019/components/UfoErrorBoundary/index.js +1 -0
  97. package/dist/es2019/containers/ConnectedReactionPicker/ConnectedReactionPicker.js +27 -0
  98. package/dist/es2019/containers/ConnectedReactionPicker/index.js +1 -0
  99. package/dist/es2019/containers/ConnectedReactionsView/ConnectedReactionsView.js +166 -0
  100. package/dist/es2019/containers/ConnectedReactionsView/index.js +1 -0
  101. package/dist/es2019/containers/index.js +2 -2
  102. package/dist/es2019/hooks/index.js +1 -0
  103. package/dist/es2019/hooks/useClickAway.js +27 -0
  104. package/dist/es2019/index.js +3 -1
  105. package/dist/es2019/shared/constants.js +32 -0
  106. package/dist/es2019/{components → shared}/i18n.js +1 -1
  107. package/dist/es2019/shared/index.js +6 -0
  108. package/dist/es2019/shared/utils.js +35 -0
  109. package/dist/es2019/store/{ReactionsStore.js → MemoryReactionsStore.js} +40 -14
  110. package/dist/es2019/store/ReactionConsumer.js +18 -12
  111. package/dist/es2019/store/index.js +1 -1
  112. package/dist/es2019/store/utils.js +8 -4
  113. package/dist/es2019/{client/ReactionClient.js → types/client.js} +0 -0
  114. package/dist/es2019/types/index.js +1 -1
  115. package/dist/es2019/types/reaction.js +34 -0
  116. package/dist/es2019/types/{DetailedReaction.js → store.js} +0 -0
  117. package/dist/es2019/version.json +1 -1
  118. package/dist/esm/MockReactionsClient.js +257 -0
  119. package/dist/esm/analytics/analytics.js +99 -0
  120. package/dist/esm/analytics/index.js +3 -99
  121. package/dist/esm/analytics/ufo.js +0 -1
  122. package/dist/esm/client/ReactionServiceClient.js +30 -6
  123. package/dist/esm/components/{Counter.js → Counter/Counter.js} +26 -31
  124. package/dist/esm/components/Counter/index.js +3 -0
  125. package/dist/esm/components/Counter/styles.js +20 -0
  126. package/dist/esm/components/EmojiButton/EmojiButton.js +35 -0
  127. package/dist/esm/components/EmojiButton/index.js +1 -0
  128. package/dist/esm/components/EmojiButton/styles.js +16 -0
  129. package/dist/esm/components/FlashAnimation/FlashAnimation.js +20 -0
  130. package/dist/esm/components/FlashAnimation/index.js +1 -0
  131. package/dist/esm/components/{FlashAnimation.js → FlashAnimation/styles.js} +6 -19
  132. package/dist/esm/components/Reaction/Reaction.js +131 -0
  133. package/dist/esm/components/Reaction/index.js +1 -0
  134. package/dist/esm/components/Reaction/styles.js +55 -0
  135. package/dist/esm/components/ReactionPicker/ReactionPicker.js +243 -0
  136. package/dist/esm/components/ReactionPicker/index.js +1 -0
  137. package/dist/esm/components/ReactionPicker/styles.js +23 -0
  138. package/dist/esm/components/ReactionTooltip/ReactionTooltip.js +46 -0
  139. package/dist/esm/components/ReactionTooltip/index.js +1 -0
  140. package/dist/esm/components/ReactionTooltip/styles.js +32 -0
  141. package/dist/esm/components/Reactions/Reactions.js +166 -0
  142. package/dist/esm/components/Reactions/index.js +1 -0
  143. package/dist/esm/components/Reactions/styles.js +19 -0
  144. package/dist/esm/components/Selector/Selector.js +107 -0
  145. package/dist/esm/components/Selector/index.js +3 -0
  146. package/dist/esm/components/Selector/styles.js +41 -0
  147. package/dist/esm/components/ShowMore/ShowMore.js +46 -0
  148. package/dist/esm/components/ShowMore/index.js +1 -0
  149. package/dist/esm/components/ShowMore/styles.js +30 -0
  150. package/dist/esm/components/{Trigger.js → Trigger/Trigger.js} +15 -20
  151. package/dist/esm/components/Trigger/index.js +1 -0
  152. package/dist/esm/components/Trigger/styles.js +31 -0
  153. package/dist/esm/components/{UfoErrorBoundary.js → UfoErrorBoundary/UfoErrorBoundary.js} +4 -0
  154. package/dist/esm/components/UfoErrorBoundary/index.js +1 -0
  155. package/dist/esm/containers/ConnectedReactionPicker/ConnectedReactionPicker.js +46 -0
  156. package/dist/esm/containers/ConnectedReactionPicker/index.js +1 -0
  157. package/dist/esm/containers/ConnectedReactionsView/ConnectedReactionsView.js +227 -0
  158. package/dist/esm/containers/ConnectedReactionsView/index.js +1 -0
  159. package/dist/esm/containers/index.js +2 -2
  160. package/dist/esm/hooks/index.js +1 -0
  161. package/dist/esm/hooks/useClickAway.js +28 -0
  162. package/dist/esm/index.js +3 -1
  163. package/dist/esm/shared/constants.js +34 -0
  164. package/dist/esm/{components → shared}/i18n.js +1 -1
  165. package/dist/esm/shared/index.js +6 -0
  166. package/dist/esm/shared/utils.js +41 -0
  167. package/dist/esm/store/{ReactionsStore.js → MemoryReactionsStore.js} +40 -17
  168. package/dist/esm/store/ReactionConsumer.js +42 -15
  169. package/dist/esm/store/index.js +1 -1
  170. package/dist/esm/store/utils.js +8 -4
  171. package/dist/{es2019/types/ReactionSource.js → esm/types/client.js} +0 -0
  172. package/dist/esm/types/index.js +1 -1
  173. package/dist/esm/types/reaction.js +34 -0
  174. package/dist/{es2019/types/ReactionSummary.js → esm/types/store.js} +0 -0
  175. package/dist/esm/version.json +1 -1
  176. package/dist/types/MockReactionsClient.d.ts +20 -0
  177. package/dist/types/analytics/analytics.d.ts +96 -0
  178. package/dist/types/analytics/index.d.ts +1 -96
  179. package/dist/types/client/ReactionServiceClient.d.ts +27 -10
  180. package/dist/types/client/index.d.ts +0 -1
  181. package/dist/types/components/Counter/Counter.d.ts +40 -0
  182. package/dist/types/components/Counter/index.d.ts +3 -0
  183. package/dist/types/components/Counter/styles.d.ts +3 -0
  184. package/dist/types/components/EmojiButton/EmojiButton.d.ts +22 -0
  185. package/dist/types/components/EmojiButton/index.d.ts +2 -0
  186. package/dist/types/components/EmojiButton/styles.d.ts +1 -0
  187. package/dist/types/components/FlashAnimation/FlashAnimation.d.ts +20 -0
  188. package/dist/types/components/FlashAnimation/index.d.ts +2 -0
  189. package/dist/types/components/FlashAnimation/styles.d.ts +3 -0
  190. package/dist/types/components/Reaction/Reaction.d.ts +38 -0
  191. package/dist/types/components/Reaction/index.d.ts +2 -0
  192. package/dist/types/components/Reaction/styles.d.ts +10 -0
  193. package/dist/types/components/ReactionPicker/ReactionPicker.d.ts +53 -0
  194. package/dist/types/components/ReactionPicker/index.d.ts +2 -0
  195. package/dist/types/components/ReactionPicker/styles.d.ts +3 -0
  196. package/dist/types/components/ReactionTooltip/ReactionTooltip.d.ts +22 -0
  197. package/dist/types/components/ReactionTooltip/index.d.ts +2 -0
  198. package/dist/types/components/ReactionTooltip/styles.d.ts +4 -0
  199. package/dist/types/components/Reactions/Reactions.d.ts +64 -0
  200. package/dist/types/components/Reactions/index.d.ts +2 -0
  201. package/dist/types/components/Reactions/styles.d.ts +2 -0
  202. package/dist/types/components/Selector/Selector.d.ts +34 -0
  203. package/dist/types/components/Selector/index.d.ts +3 -0
  204. package/dist/types/components/Selector/styles.d.ts +10 -0
  205. package/dist/types/components/ShowMore/ShowMore.d.ts +34 -0
  206. package/dist/types/components/ShowMore/index.d.ts +2 -0
  207. package/dist/types/components/ShowMore/styles.d.ts +3 -0
  208. package/dist/types/components/Trigger/Trigger.d.ts +23 -0
  209. package/dist/types/components/Trigger/index.d.ts +2 -0
  210. package/dist/types/components/Trigger/styles.d.ts +5 -0
  211. package/dist/types/components/UfoErrorBoundary/UfoErrorBoundary.d.ts +16 -0
  212. package/dist/types/components/UfoErrorBoundary/index.d.ts +2 -0
  213. package/dist/types/components/index.d.ts +4 -1
  214. package/dist/types/containers/ConnectedReactionPicker/ConnectedReactionPicker.d.ts +27 -0
  215. package/dist/types/containers/ConnectedReactionPicker/index.d.ts +2 -0
  216. package/dist/types/containers/ConnectedReactionsView/ConnectedReactionsView.d.ts +52 -0
  217. package/dist/types/containers/ConnectedReactionsView/index.d.ts +2 -0
  218. package/dist/types/containers/index.d.ts +2 -2
  219. package/dist/types/hooks/index.d.ts +1 -0
  220. package/dist/types/hooks/useClickAway.d.ts +8 -0
  221. package/dist/types/index.d.ts +2 -2
  222. package/dist/types/shared/constants.d.ts +13 -0
  223. package/dist/types/{components → shared}/i18n.d.ts +0 -0
  224. package/dist/types/shared/index.d.ts +3 -0
  225. package/dist/types/shared/utils.d.ts +11 -0
  226. package/dist/types/store/{ReactionsStore.d.ts → MemoryReactionsStore.d.ts} +23 -26
  227. package/dist/types/store/ReactionConsumer.d.ts +47 -19
  228. package/dist/types/store/index.d.ts +2 -2
  229. package/dist/types/store/utils.d.ts +3 -7
  230. package/dist/types/types/Actions.d.ts +20 -4
  231. package/dist/types/types/User.d.ts +6 -0
  232. package/dist/types/types/client.d.ts +38 -0
  233. package/dist/types/types/index.d.ts +5 -7
  234. package/dist/types/types/reaction.d.ts +82 -0
  235. package/dist/types/types/store.d.ts +63 -0
  236. package/docs/0-intro.tsx +118 -27
  237. package/docs/1-connected-reaction-picker.tsx +133 -0
  238. package/docs/2-connected-reactions-view.tsx +130 -0
  239. package/docs/3-reactions-store.tsx +71 -0
  240. package/docs/4-reaction-service-client.tsx +42 -0
  241. package/extract-react-type/ConnectedReactionPicker.ts +6 -0
  242. package/extract-react-type/ConnectedReactionsView.ts +6 -0
  243. package/extract-react-type/Reaction.ts +6 -0
  244. package/extract-react-type/Reactions.ts +6 -0
  245. package/extract-react-type/actions.ts +6 -0
  246. package/extract-react-type/reactionClient.ts +6 -0
  247. package/extract-react-type/reactionsStore.ts +6 -0
  248. package/package.json +24 -7
  249. package/dist/cjs/client/MockReactionsClient.js +0 -183
  250. package/dist/cjs/components/EmojiButton.js +0 -100
  251. package/dist/cjs/components/Reaction.js +0 -226
  252. package/dist/cjs/components/ReactionPicker.js +0 -289
  253. package/dist/cjs/components/ReactionTooltip.js +0 -82
  254. package/dist/cjs/components/Reactions.js +0 -194
  255. package/dist/cjs/components/Selector.js +0 -189
  256. package/dist/cjs/components/ShowMore.js +0 -119
  257. package/dist/cjs/components/Trigger.js +0 -58
  258. package/dist/cjs/components/utils.js +0 -28
  259. package/dist/cjs/containers/ConnectedReactionPicker.js +0 -44
  260. package/dist/cjs/containers/ConnectedReactionsView.js +0 -139
  261. package/dist/cjs/types/ReactionSource.js +0 -5
  262. package/dist/cjs/types/ReactionStatus.js +0 -15
  263. package/dist/cjs/types/ReactionSummary.js +0 -5
  264. package/dist/cjs/types/Reactions.js +0 -5
  265. package/dist/cjs/types/ReactionsState.js +0 -5
  266. package/dist/es2019/client/MockReactionsClient.js +0 -123
  267. package/dist/es2019/components/EmojiButton.js +0 -50
  268. package/dist/es2019/components/Reaction.js +0 -180
  269. package/dist/es2019/components/ReactionPicker.js +0 -239
  270. package/dist/es2019/components/ReactionTooltip.js +0 -66
  271. package/dist/es2019/components/Reactions.js +0 -150
  272. package/dist/es2019/components/Selector.js +0 -127
  273. package/dist/es2019/components/ShowMore.js +0 -71
  274. package/dist/es2019/components/utils.js +0 -13
  275. package/dist/es2019/containers/ConnectedReactionPicker.js +0 -27
  276. package/dist/es2019/containers/ConnectedReactionsView.js +0 -118
  277. package/dist/es2019/types/ReactionStatus.js +0 -8
  278. package/dist/es2019/types/Reactions.js +0 -1
  279. package/dist/es2019/types/ReactionsState.js +0 -1
  280. package/dist/esm/client/MockReactionsClient.js +0 -164
  281. package/dist/esm/client/ReactionClient.js +0 -1
  282. package/dist/esm/components/EmojiButton.js +0 -77
  283. package/dist/esm/components/Reaction.js +0 -204
  284. package/dist/esm/components/ReactionPicker.js +0 -266
  285. package/dist/esm/components/ReactionTooltip.js +0 -63
  286. package/dist/esm/components/Reactions.js +0 -180
  287. package/dist/esm/components/Selector.js +0 -160
  288. package/dist/esm/components/ShowMore.js +0 -95
  289. package/dist/esm/components/utils.js +0 -15
  290. package/dist/esm/containers/ConnectedReactionPicker.js +0 -29
  291. package/dist/esm/containers/ConnectedReactionsView.js +0 -116
  292. package/dist/esm/types/DetailedReaction.js +0 -1
  293. package/dist/esm/types/ReactionSource.js +0 -1
  294. package/dist/esm/types/ReactionStatus.js +0 -8
  295. package/dist/esm/types/ReactionSummary.js +0 -1
  296. package/dist/esm/types/Reactions.js +0 -1
  297. package/dist/esm/types/ReactionsState.js +0 -1
  298. package/dist/types/client/MockReactionsClient.d.ts +0 -28
  299. package/dist/types/client/ReactionClient.d.ts +0 -25
  300. package/dist/types/components/Counter.d.ts +0 -14
  301. package/dist/types/components/EmojiButton.d.ts +0 -12
  302. package/dist/types/components/FlashAnimation.d.ts +0 -13
  303. package/dist/types/components/Reaction.d.ts +0 -25
  304. package/dist/types/components/ReactionPicker.d.ts +0 -39
  305. package/dist/types/components/ReactionTooltip.d.ts +0 -9
  306. package/dist/types/components/Reactions.d.ts +0 -49
  307. package/dist/types/components/Selector.d.ts +0 -27
  308. package/dist/types/components/ShowMore.d.ts +0 -21
  309. package/dist/types/components/Trigger.d.ts +0 -7
  310. package/dist/types/components/UfoErrorBoundary.d.ts +0 -9
  311. package/dist/types/components/utils.d.ts +0 -4
  312. package/dist/types/containers/ConnectedReactionPicker.d.ts +0 -10
  313. package/dist/types/containers/ConnectedReactionsView.d.ts +0 -19
  314. package/dist/types/types/DetailedReaction.d.ts +0 -7
  315. package/dist/types/types/ReactionSource.d.ts +0 -1
  316. package/dist/types/types/ReactionStatus.d.ts +0 -6
  317. package/dist/types/types/ReactionSummary.d.ts +0 -10
  318. package/dist/types/types/Reactions.d.ts +0 -4
  319. package/dist/types/types/ReactionsState.d.ts +0 -17
@@ -0,0 +1,35 @@
1
+ /** @jsx jsx */
2
+ import React from 'react';
3
+ import { jsx } from '@emotion/core';
4
+ import { ResourcedEmoji } from '@atlaskit/emoji';
5
+ import { utils } from '../../shared';
6
+ import * as styles from './styles';
7
+ export var RENDER_BUTTON_TESTID = 'button-emoji-id';
8
+
9
+ /**
10
+ * custom button to render the custom emoji selector inside the reaction picker
11
+ */
12
+ export var EmojiButton = function EmojiButton(_ref) {
13
+ var emojiId = _ref.emojiId,
14
+ onClick = _ref.onClick,
15
+ emojiProvider = _ref.emojiProvider;
16
+
17
+ var onButtonClick = function onButtonClick(event) {
18
+ event.preventDefault();
19
+
20
+ if (onClick && utils.isLeftClick(event)) {
21
+ onClick(emojiId, undefined, event);
22
+ }
23
+ };
24
+
25
+ return jsx("button", {
26
+ "data-testid": RENDER_BUTTON_TESTID,
27
+ onClick: onButtonClick,
28
+ title: emojiId.shortName,
29
+ type: "button",
30
+ css: styles.emojiButtonStyle
31
+ }, jsx(ResourcedEmoji, {
32
+ emojiProvider: emojiProvider,
33
+ emojiId: emojiId
34
+ }));
35
+ };
@@ -0,0 +1 @@
1
+ export { EmojiButton, RENDER_BUTTON_TESTID } from './EmojiButton';
@@ -0,0 +1,16 @@
1
+ /** @jsx jsx */
2
+ import { css } from '@emotion/core';
3
+ export var emojiButtonStyle = css({
4
+ outline: 'none',
5
+ display: 'flex',
6
+ backgroundColor: 'transparent',
7
+ border: 0,
8
+ borderRadius: '5px',
9
+ cursor: 'pointer',
10
+ margin: '0',
11
+ padding: '10px 8px',
12
+ '&:hover > span': {
13
+ transition: 'transform cubic-bezier(0.23, 1, 0.32, 1) 200ms',
14
+ transform: 'scale(1.33)'
15
+ }
16
+ });
@@ -0,0 +1,20 @@
1
+ /** @jsx jsx */
2
+ import React from 'react';
3
+ import { jsx } from '@emotion/core';
4
+ import * as styles from './styles';
5
+
6
+ /**
7
+ * Test id for wrapper FlashAnimation div
8
+ */
9
+ export var RENDER_FLASHANIMATION_TESTID = 'flash-animation';
10
+ /**
11
+ * Flash animation background component. See Reaction component for usage.
12
+ */
13
+
14
+ export var FlashAnimation = function FlashAnimation(props) {
15
+ return jsx("div", {
16
+ className: props.className,
17
+ css: [styles.containerStyle, props.flash && styles.flashStyle],
18
+ "data-testid": RENDER_FLASHANIMATION_TESTID
19
+ }, props.children);
20
+ };
@@ -0,0 +1 @@
1
+ export { FlashAnimation, RENDER_FLASHANIMATION_TESTID } from './FlashAnimation';
@@ -1,13 +1,7 @@
1
1
  /** @jsx jsx */
2
- import { jsx, css, keyframes } from '@emotion/core';
2
+ import { css, keyframes } from '@emotion/core';
3
3
  import { B75, B300 } from '@atlaskit/theme/colors';
4
4
  import { token } from '@atlaskit/tokens';
5
- import React from 'react';
6
- export var flashAnimationTestId = 'flash-animation';
7
- var containerStyle = css({
8
- width: '100%',
9
- height: '100%'
10
- });
11
5
  var flashTime = 700;
12
6
  export var flashAnimation = keyframes({
13
7
  '0%': {
@@ -26,17 +20,10 @@ export var flashAnimation = keyframes({
26
20
  borderColor: token('color.border.selected', B300)
27
21
  }
28
22
  });
23
+ export var containerStyle = css({
24
+ width: '100%',
25
+ height: '100%'
26
+ });
29
27
  export var flashStyle = css({
30
28
  animation: "".concat(flashAnimation, " ").concat(flashTime, "ms ease-in-out")
31
- });
32
- /**
33
- * Flash animation background component. See Reaction component for usage.
34
- */
35
-
36
- export var FlashAnimation = function FlashAnimation(props) {
37
- return jsx("div", {
38
- className: props.className,
39
- css: [containerStyle, props.flash && flashStyle],
40
- "data-testid": flashAnimationTestId
41
- }, props.children);
42
- };
29
+ });
@@ -0,0 +1,131 @@
1
+ import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
2
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
3
+ import _regeneratorRuntime from "@babel/runtime/regenerator";
4
+
5
+ /** @jsx jsx */
6
+ import React, { useCallback, useEffect, useRef, useState } from 'react';
7
+ import { jsx } from '@emotion/core';
8
+ import { useAnalyticsEvents } from '@atlaskit/analytics-next';
9
+ import { ResourcedEmoji } from '@atlaskit/emoji';
10
+ import { Analytics } from '../../analytics';
11
+ import { Counter } from '../Counter';
12
+ import { FlashAnimation } from '../FlashAnimation';
13
+ import { ReactionTooltip } from '../ReactionTooltip';
14
+ import { utils } from '../../shared';
15
+ import * as styles from './styles';
16
+ /**
17
+ * Test id for Reaction item wrapper div
18
+ */
19
+
20
+ export var RENDER_REACTION_TESTID = 'render_reaction_wrapper';
21
+
22
+ /**
23
+ * Render an emoji reaction button
24
+ */
25
+ export var Reaction = function Reaction(_ref) {
26
+ var emojiProvider = _ref.emojiProvider,
27
+ onClick = _ref.onClick,
28
+ reaction = _ref.reaction,
29
+ onMouseEnter = _ref.onMouseEnter,
30
+ className = _ref.className,
31
+ _ref$flash = _ref.flash,
32
+ flash = _ref$flash === void 0 ? false : _ref$flash;
33
+ var emojiId = {
34
+ id: reaction.emojiId,
35
+ shortName: ''
36
+ };
37
+ var hoverStart = useRef();
38
+
39
+ var _useAnalyticsEvents = useAnalyticsEvents(),
40
+ createAnalyticsEvent = _useAnalyticsEvents.createAnalyticsEvent;
41
+
42
+ var _useState = useState(),
43
+ _useState2 = _slicedToArray(_useState, 2),
44
+ emojiName = _useState2[0],
45
+ setEmojiName = _useState2[1]; // TODO: Extract the flow to a custom hook to retrieve emoji detailed description from an id using a custom hook. This will benefit a better optimization instead of the emojiProvider resolving everytime.
46
+ // Also optimize in future version to fetch in batch several emojiIds
47
+
48
+
49
+ useEffect(function () {
50
+ _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
51
+ var emojiResource, foundEmoji;
52
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
53
+ while (1) {
54
+ switch (_context.prev = _context.next) {
55
+ case 0:
56
+ _context.next = 2;
57
+ return Promise.resolve(emojiProvider);
58
+
59
+ case 2:
60
+ emojiResource = _context.sent;
61
+ _context.next = 5;
62
+ return emojiResource.findByEmojiId({
63
+ shortName: '',
64
+ id: reaction.emojiId
65
+ });
66
+
67
+ case 5:
68
+ foundEmoji = _context.sent;
69
+
70
+ if (foundEmoji) {
71
+ setEmojiName(foundEmoji.name);
72
+ }
73
+
74
+ case 7:
75
+ case "end":
76
+ return _context.stop();
77
+ }
78
+ }
79
+ }, _callee);
80
+ }))();
81
+ }, [emojiProvider, reaction.emojiId]);
82
+ var handleMouseUp = useCallback(function (event) {
83
+ event.preventDefault();
84
+
85
+ if (utils.isLeftClick(event)) {
86
+ var reacted = reaction.reacted,
87
+ _emojiId = reaction.emojiId;
88
+ Analytics.createAndFireSafe(createAnalyticsEvent, Analytics.createReactionClickedEvent, !reacted, _emojiId);
89
+ onClick(reaction.emojiId, event);
90
+ }
91
+ }, [createAnalyticsEvent, reaction, onClick]);
92
+ var handleMouseEnter = useCallback(function (event) {
93
+ event.preventDefault();
94
+
95
+ if (!reaction.users || !reaction.users.length) {
96
+ hoverStart.current = Date.now();
97
+ }
98
+
99
+ Analytics.createAndFireSafe(createAnalyticsEvent, Analytics.createReactionHoveredEvent, hoverStart.current);
100
+
101
+ if (onMouseEnter) {
102
+ onMouseEnter(reaction, event);
103
+ }
104
+ }, [createAnalyticsEvent, reaction, onMouseEnter]);
105
+ return jsx(ReactionTooltip, {
106
+ emojiName: emojiName,
107
+ reaction: reaction
108
+ }, jsx("button", {
109
+ className: className,
110
+ css: [styles.reactionStyle, reaction.reacted && styles.reactedStyle],
111
+ title: reaction.emojiId,
112
+ type: "button",
113
+ "data-testid": RENDER_REACTION_TESTID,
114
+ onMouseUp: handleMouseUp,
115
+ onMouseEnter: handleMouseEnter
116
+ }, jsx(FlashAnimation, {
117
+ flash: flash,
118
+ css: styles.flashStyle
119
+ }, jsx("div", {
120
+ css: [styles.emojiStyle, reaction.count === 0 && {
121
+ padding: '4px 2px 4px 10px'
122
+ }]
123
+ }, jsx(ResourcedEmoji, {
124
+ emojiProvider: emojiProvider,
125
+ emojiId: emojiId,
126
+ fitToHeight: 16
127
+ })), jsx(Counter, {
128
+ value: reaction.count,
129
+ highlight: reaction.reacted
130
+ }))));
131
+ };
@@ -0,0 +1 @@
1
+ export { Reaction, RENDER_REACTION_TESTID } from './Reaction';
@@ -0,0 +1,55 @@
1
+ /** @jsx jsx */
2
+ import { css } from '@emotion/core';
3
+ import { B50, B75, B300, N20, N40, N400 } from '@atlaskit/theme/colors';
4
+ import { token } from '@atlaskit/tokens';
5
+ /**
6
+ * Default styling px height for an emoji reaction
7
+ */
8
+
9
+ var akHeight = 24;
10
+ /**
11
+ * Styling Note:
12
+ * Padding and line height are set within the child components
13
+ * of FlashAnimation b/c it otherwise throws off the flash styling
14
+ */
15
+
16
+ export var emojiStyle = css({
17
+ transformOrigin: 'center center 0',
18
+ lineHeight: '12px',
19
+ padding: '4px 4px 4px 8px'
20
+ });
21
+ export var reactionStyle = css({
22
+ outline: 'none',
23
+ display: 'flex',
24
+ flexDirection: 'row',
25
+ alignItems: 'flex-start',
26
+ minWidth: '36px',
27
+ height: "".concat(akHeight, "px"),
28
+ background: 'transparent',
29
+ border: "1px solid ".concat(token('color.border', N40)),
30
+ boxSizing: 'border-box',
31
+ borderRadius: '20px',
32
+ color: "".concat(token('color.text.subtle', N400)),
33
+ cursor: 'pointer',
34
+ margin: 0,
35
+ padding: 0,
36
+ transition: '200ms ease-in-out',
37
+ '&:hover': {
38
+ background: "".concat(token('color.background.neutral.subtle.hovered', N20))
39
+ }
40
+ });
41
+ export var reactedStyle = css({
42
+ backgroundColor: token('color.background.selected', B50),
43
+ borderColor: token('color.border.selected', B300),
44
+ '&:hover': {
45
+ background: "".concat(token('color.background.selected.hovered', B75))
46
+ }
47
+ });
48
+ export var flashHeight = akHeight - 2; // height without the 1px border
49
+
50
+ export var flashStyle = css({
51
+ display: 'flex',
52
+ flexDirection: 'row',
53
+ borderRadius: '10px',
54
+ height: "".concat(flashHeight, "px")
55
+ });
@@ -0,0 +1,243 @@
1
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
+ import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
3
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
4
+
5
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
6
+
7
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
8
+
9
+ import _regeneratorRuntime from "@babel/runtime/regenerator";
10
+
11
+ /** @jsx jsx */
12
+ import React, { Fragment, useCallback, useRef, useState } from 'react';
13
+ import { jsx } from '@emotion/core';
14
+ import { EmojiPicker } from '@atlaskit/emoji/picker';
15
+ import { Manager, Popper, Reference } from '@atlaskit/popper';
16
+ import { layers } from '@atlaskit/theme/constants';
17
+ import { Selector } from '../Selector';
18
+ import { Trigger } from '../Trigger';
19
+ import { UFO } from '../../analytics';
20
+ import { useClickAway } from '../../hooks';
21
+ import * as styles from './styles';
22
+ /**
23
+ * Test id for wrapper ReactionPicker div
24
+ */
25
+
26
+ export var RENDER_REACTIONPICKER_TESTID = 'reactionPicker-testid';
27
+ var popperModifiers = [
28
+ /**
29
+ Removing this applyStyle modifier as it throws client errors ref:
30
+ https://popper.js.org/docs/v1/#modifiers
31
+ https://popper.js.org/docs/v1/#modifiers..applyStyle
32
+ { name: 'applyStyle', enabled: false },
33
+ */
34
+ {
35
+ name: 'hide',
36
+ enabled: false
37
+ }, {
38
+ name: 'offset',
39
+ enabled: true,
40
+ options: {
41
+ offset: [0, 0]
42
+ }
43
+ }, {
44
+ name: 'flip',
45
+ enabled: true,
46
+ options: {
47
+ flipVariations: true,
48
+ boundariesElement: 'scrollParent'
49
+ }
50
+ }, {
51
+ name: 'preventOverflow',
52
+ enabled: true
53
+ }];
54
+
55
+ /**
56
+ * Picker component for adding reactions
57
+ */
58
+ export var ReactionPicker = /*#__PURE__*/React.memo(function (props) {
59
+ var miniMode = props.miniMode,
60
+ className = props.className,
61
+ emojiProvider = props.emojiProvider,
62
+ onSelection = props.onSelection,
63
+ allowAllEmojis = props.allowAllEmojis,
64
+ disabled = props.disabled,
65
+ pickerQuickReactionEmojiIds = props.pickerQuickReactionEmojiIds,
66
+ onShowMore = props.onShowMore,
67
+ onOpen = props.onOpen,
68
+ onCancel = props.onCancel;
69
+ /**
70
+ * Container <div /> reference (used by custom hook to detect click outside)
71
+ */
72
+
73
+ var wrapperRef = useRef(null);
74
+ /**
75
+ * a function you can ask Popper to recompute your tooltip's position. It will directly call the Popper#update method
76
+ */
77
+
78
+ var updatePopper = useRef(function () {
79
+ return Promise.resolve();
80
+ });
81
+
82
+ var _useState = useState({
83
+ /**
84
+ * Show the picker floating panel
85
+ */
86
+ isOpen: false,
87
+
88
+ /**
89
+ * Show the full custom emoji list picker or the default list of emojis
90
+ */
91
+ showFullPicker: !!allowAllEmojis && Array.isArray(pickerQuickReactionEmojiIds) && pickerQuickReactionEmojiIds.length === 0
92
+ }),
93
+ _useState2 = _slicedToArray(_useState, 2),
94
+ settings = _useState2[0],
95
+ setSettings = _useState2[1];
96
+ /**
97
+ * Custom hook triggers when user clicks outside the reactions picker
98
+ */
99
+
100
+
101
+ useClickAway(wrapperRef, function () {
102
+ if (onCancel) {
103
+ onCancel();
104
+ }
105
+
106
+ close();
107
+ });
108
+ /**
109
+ * Event callback when the picker is closed
110
+ * @param _id Optional id if an emoji button was selected or undefineed if was clicked outside the picker
111
+ */
112
+
113
+ var close = useCallback(function (_id) {
114
+ setSettings({
115
+ isOpen: false,
116
+ showFullPicker: !!allowAllEmojis && Array.isArray(pickerQuickReactionEmojiIds) && pickerQuickReactionEmojiIds.length === 0
117
+ }); // ufo abort reaction experience
118
+
119
+ UFO.PickerRender.abort({
120
+ metadata: {
121
+ emojiId: _id,
122
+ source: 'Reaction-Picker',
123
+ reason: 'close dialog'
124
+ }
125
+ });
126
+ }, [allowAllEmojis, pickerQuickReactionEmojiIds]);
127
+ /**
128
+ * Event handle rwhen selecting to show the custom emoji icons picker
129
+ * @param e event param
130
+ */
131
+
132
+ var onSelectMoreClick = useCallback( /*#__PURE__*/function () {
133
+ var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(e) {
134
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
135
+ while (1) {
136
+ switch (_context.prev = _context.next) {
137
+ case 0:
138
+ e.preventDefault();
139
+ _context.next = 3;
140
+ return updatePopper.current();
141
+
142
+ case 3:
143
+ // Update popper position
144
+ setSettings({
145
+ isOpen: true,
146
+ showFullPicker: true
147
+ });
148
+
149
+ if (onShowMore) {
150
+ onShowMore();
151
+ }
152
+
153
+ case 5:
154
+ case "end":
155
+ return _context.stop();
156
+ }
157
+ }
158
+ }, _callee);
159
+ }));
160
+
161
+ return function (_x) {
162
+ return _ref.apply(this, arguments);
163
+ };
164
+ }(), [onShowMore]);
165
+ /**
166
+ * Event callback when an emoji icon is selected
167
+ * @param item selected item
168
+ */
169
+
170
+ var onEmojiSelected = useCallback(function (item) {
171
+ // no emoji was selected
172
+ if (!item.id) {
173
+ return;
174
+ }
175
+
176
+ onSelection(item.id, settings.showFullPicker ? 'emojiPicker' : 'quickSelector');
177
+ close(item.id);
178
+ }, [close, onSelection, settings.showFullPicker]);
179
+ /**
180
+ * Event handler when the emoji icon to open the custom picker is selected
181
+ */
182
+
183
+ var onTriggerClick = function onTriggerClick() {
184
+ // ufo start reactions picker open experience
185
+ UFO.PickerRender.start();
186
+ setSettings({
187
+ isOpen: !settings.isOpen,
188
+ showFullPicker: !!allowAllEmojis && Array.isArray(pickerQuickReactionEmojiIds) && pickerQuickReactionEmojiIds.length === 0
189
+ });
190
+
191
+ if (onOpen) {
192
+ onOpen();
193
+ } // ufo reactions picker opened success
194
+
195
+
196
+ UFO.PickerRender.success();
197
+ };
198
+
199
+ var wrapperClassName = " ".concat(settings.isOpen ? 'isOpen' : '', " ").concat(miniMode ? 'miniMode' : '', " ").concat(className);
200
+ return jsx("div", {
201
+ className: wrapperClassName,
202
+ css: styles.pickerStyle,
203
+ ref: wrapperRef,
204
+ "data-testid": RENDER_REACTIONPICKER_TESTID
205
+ }, jsx(Manager, null, jsx(Reference, null, function (_ref2) {
206
+ var popperRef = _ref2.ref;
207
+ return (// Render a button to open the <Selector /> panel
208
+ jsx(Trigger, {
209
+ ref: popperRef,
210
+ onClick: onTriggerClick,
211
+ miniMode: miniMode,
212
+ disabled: disabled
213
+ })
214
+ );
215
+ }), jsx(Popper, {
216
+ placement: "bottom-start",
217
+ modifiers: popperModifiers
218
+ }, function (_ref3) {
219
+ var ref = _ref3.ref,
220
+ style = _ref3.style,
221
+ update = _ref3.update;
222
+ updatePopper.current = update;
223
+ return jsx(Fragment, null, settings.isOpen && jsx("div", {
224
+ style: _objectSpread({
225
+ zIndex: layers.layer()
226
+ }, style),
227
+ ref: ref
228
+ }, jsx("div", {
229
+ css: styles.popupStyle
230
+ }, settings.showFullPicker ? jsx(EmojiPicker, {
231
+ emojiProvider: emojiProvider,
232
+ onSelection: onEmojiSelected
233
+ }) : jsx("div", {
234
+ css: styles.contentStyle
235
+ }, jsx(Selector, {
236
+ emojiProvider: emojiProvider,
237
+ onSelection: onEmojiSelected,
238
+ showMore: allowAllEmojis,
239
+ onMoreClick: onSelectMoreClick,
240
+ pickerQuickReactionEmojiIds: pickerQuickReactionEmojiIds
241
+ })))));
242
+ })));
243
+ });
@@ -0,0 +1 @@
1
+ export { ReactionPicker, RENDER_REACTIONPICKER_TESTID } from './ReactionPicker';
@@ -0,0 +1,23 @@
1
+ /** @jsx jsx */
2
+ import { css } from '@emotion/core';
3
+ import { borderRadius } from '@atlaskit/theme/constants';
4
+ import { N0, N50A, N60A } from '@atlaskit/theme/colors';
5
+ import { token } from '@atlaskit/tokens';
6
+ export var pickerStyle = css({
7
+ verticalAlign: 'middle',
8
+ '&.miniMode': {
9
+ display: 'inline-block',
10
+ marginRight: '4px'
11
+ }
12
+ });
13
+ export var contentStyle = css({
14
+ display: 'flex'
15
+ });
16
+ export var popupStyle = css({
17
+ background: token('elevation.surface.overlay', N0),
18
+ borderRadius: "".concat(borderRadius(), "px"),
19
+ boxShadow: token('elevation.shadow.overlay', "0 4px 8px -2px ".concat(N50A, ", 0 0 1px ").concat(N60A)),
20
+ '&> div': {
21
+ boxShadow: undefined
22
+ }
23
+ });
@@ -0,0 +1,46 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+
3
+ /** @jsx jsx */
4
+ import React from 'react';
5
+ import { jsx } from '@emotion/core';
6
+ import Tooltip from '@atlaskit/tooltip';
7
+ import { FormattedMessage } from 'react-intl-next';
8
+ import { constants, i18n } from '../../shared';
9
+ import * as styles from './styles';
10
+ /**
11
+ * Test id for wrapper ReactionTooltip div
12
+ */
13
+
14
+ export var RENDER_REACTIONTOOLTIP_TESTID = 'render-reactionTooltip';
15
+ export var ReactionTooltip = function ReactionTooltip(_ref) {
16
+ var emojiName = _ref.emojiName,
17
+ children = _ref.children,
18
+ _ref$maxReactions = _ref.maxReactions,
19
+ maxReactions = _ref$maxReactions === void 0 ? constants.TOOLTIP_USERS_LIMIT : _ref$maxReactions,
20
+ _ref$reaction$users = _ref.reaction.users,
21
+ users = _ref$reaction$users === void 0 ? [] : _ref$reaction$users;
22
+
23
+ /**
24
+ * Render list of users in the tooltip box
25
+ */
26
+ var content = !users || users.length === 0 ? null : jsx("div", {
27
+ css: styles.tooltipStyle
28
+ }, jsx("ul", null, emojiName ? jsx("li", {
29
+ css: styles.emojiNameStyle
30
+ }, emojiName) : null, users.slice(0, maxReactions).map(function (user, index) {
31
+ return jsx("li", {
32
+ key: index
33
+ }, user.displayName);
34
+ }), users.length > maxReactions ? jsx("li", {
35
+ css: styles.footerStyle
36
+ }, jsx(FormattedMessage, _extends({}, i18n.messages.otherUsers, {
37
+ values: {
38
+ count: users.length - maxReactions
39
+ }
40
+ }))) : null));
41
+ return jsx(Tooltip, {
42
+ content: content,
43
+ position: "bottom",
44
+ "data-testid": RENDER_REACTIONTOOLTIP_TESTID
45
+ }, React.Children.only(children));
46
+ };
@@ -0,0 +1 @@
1
+ export { ReactionTooltip, RENDER_REACTIONTOOLTIP_TESTID } from './ReactionTooltip';
@@ -0,0 +1,32 @@
1
+ /** @jsx jsx */
2
+ import { css } from '@emotion/core';
3
+ import { token } from '@atlaskit/tokens';
4
+ import { N90 } from '@atlaskit/theme/colors';
5
+ export var verticalMargin = 5;
6
+ export var tooltipStyle = css({
7
+ maxWidth: '150px',
8
+ textOverflow: 'ellipsis',
9
+ whiteSpace: 'nowrap',
10
+ overflow: 'hidden',
11
+ marginBottom: verticalMargin,
12
+ ul: {
13
+ listStyle: 'none',
14
+ margin: 0,
15
+ padding: 0,
16
+ textAlign: 'left'
17
+ },
18
+ li: {
19
+ overflow: 'hidden',
20
+ textOverflow: 'ellipsis',
21
+ marginTop: verticalMargin
22
+ }
23
+ });
24
+ export var emojiNameStyle = css({
25
+ textTransform: 'capitalize',
26
+ color: token('color.text.inverse', N90),
27
+ fontWeight: 600
28
+ });
29
+ export var footerStyle = css({
30
+ color: token('color.text.inverse', N90),
31
+ fontWeight: 300
32
+ });