@atlaskit/emoji 64.2.1 → 64.4.1

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 (160) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/dist/cjs/api/media/SiteEmojiResource.js +10 -2
  3. package/dist/cjs/components/common/CachingEmoji.js +6 -8
  4. package/dist/cjs/components/common/DeleteButton.js +9 -13
  5. package/dist/cjs/components/common/Emoji.js +18 -36
  6. package/dist/cjs/components/common/EmojiActions.js +26 -31
  7. package/dist/cjs/components/common/EmojiButton.js +7 -7
  8. package/dist/cjs/components/common/EmojiDeletePreview.js +20 -26
  9. package/dist/cjs/components/common/EmojiErrorMessage.js +10 -14
  10. package/dist/cjs/components/common/EmojiPlaceholder.js +5 -12
  11. package/dist/cjs/components/common/EmojiPreview.js +20 -40
  12. package/dist/cjs/components/common/EmojiPreviewComponent.js +34 -0
  13. package/dist/cjs/components/common/EmojiUploadPicker.js +26 -24
  14. package/dist/cjs/components/common/EmojiUploadPreview.js +22 -28
  15. package/dist/cjs/components/common/RecordSelectionDefault.js +8 -2
  16. package/dist/cjs/components/common/ResourcedEmojiComponent.js +17 -12
  17. package/dist/cjs/components/common/RetryableButton.js +12 -18
  18. package/dist/cjs/components/common/Scrollable.js +5 -10
  19. package/dist/cjs/components/common/UploadEmoji.js +8 -0
  20. package/dist/cjs/components/common/styles.js +210 -266
  21. package/dist/cjs/components/picker/CategorySelector.js +13 -12
  22. package/dist/cjs/components/picker/EmojiPicker.js +17 -6
  23. package/dist/cjs/components/picker/EmojiPickerCategoryHeading.js +8 -14
  24. package/dist/cjs/components/picker/EmojiPickerComponent.js +51 -30
  25. package/dist/cjs/components/picker/EmojiPickerEmojiRow.js +8 -12
  26. package/dist/cjs/components/picker/EmojiPickerFooter.js +8 -14
  27. package/dist/cjs/components/picker/EmojiPickerList.js +28 -9
  28. package/dist/cjs/components/picker/EmojiPickerListSearch.js +10 -8
  29. package/dist/cjs/components/picker/EmojiPickerVirtualItems.js +9 -15
  30. package/dist/cjs/components/picker/styles.js +113 -161
  31. package/dist/cjs/components/typeahead/EmojiTypeAheadComponent.js +40 -24
  32. package/dist/cjs/components/typeahead/EmojiTypeAheadItem.js +10 -13
  33. package/dist/cjs/components/typeahead/EmojiTypeAheadList.js +17 -22
  34. package/dist/cjs/components/typeahead/styles.js +17 -19
  35. package/dist/cjs/components/uploader/EmojiUploadComponent.js +22 -15
  36. package/dist/cjs/components/uploader/styles.js +4 -4
  37. package/dist/cjs/index.js +21 -3
  38. package/dist/cjs/types.js +23 -2
  39. package/dist/cjs/util/analytics/analytics.js +11 -41
  40. package/dist/cjs/util/analytics/index.js +16 -14
  41. package/dist/cjs/util/analytics/ufoExperiences.js +48 -0
  42. package/dist/cjs/version.json +1 -1
  43. package/dist/es2019/api/media/SiteEmojiResource.js +10 -2
  44. package/dist/es2019/components/common/CachingEmoji.js +5 -7
  45. package/dist/es2019/components/common/DeleteButton.js +8 -6
  46. package/dist/es2019/components/common/Emoji.js +19 -34
  47. package/dist/es2019/components/common/EmojiActions.js +26 -24
  48. package/dist/es2019/components/common/EmojiButton.js +6 -6
  49. package/dist/es2019/components/common/EmojiDeletePreview.js +20 -20
  50. package/dist/es2019/components/common/EmojiErrorMessage.js +9 -8
  51. package/dist/es2019/components/common/EmojiPlaceholder.js +5 -8
  52. package/dist/es2019/components/common/EmojiPreview.js +19 -35
  53. package/dist/es2019/components/common/EmojiPreviewComponent.js +21 -0
  54. package/dist/es2019/components/common/EmojiUploadPicker.js +25 -22
  55. package/dist/es2019/components/common/EmojiUploadPreview.js +22 -22
  56. package/dist/es2019/components/common/RecordSelectionDefault.js +9 -2
  57. package/dist/es2019/components/common/ResourcedEmojiComponent.js +16 -11
  58. package/dist/es2019/components/common/RetryableButton.js +10 -11
  59. package/dist/es2019/components/common/Scrollable.js +6 -10
  60. package/dist/es2019/components/common/UploadEmoji.js +4 -0
  61. package/dist/es2019/components/common/styles.js +195 -262
  62. package/dist/es2019/components/picker/CategorySelector.js +15 -12
  63. package/dist/es2019/components/picker/EmojiPicker.js +15 -6
  64. package/dist/es2019/components/picker/EmojiPickerCategoryHeading.js +8 -8
  65. package/dist/es2019/components/picker/EmojiPickerComponent.js +46 -22
  66. package/dist/es2019/components/picker/EmojiPickerEmojiRow.js +8 -7
  67. package/dist/es2019/components/picker/EmojiPickerFooter.js +8 -8
  68. package/dist/es2019/components/picker/EmojiPickerList.js +28 -8
  69. package/dist/es2019/components/picker/EmojiPickerListSearch.js +11 -8
  70. package/dist/es2019/components/picker/EmojiPickerVirtualItems.js +10 -8
  71. package/dist/es2019/components/picker/styles.js +112 -160
  72. package/dist/es2019/components/typeahead/EmojiTypeAheadComponent.js +35 -17
  73. package/dist/es2019/components/typeahead/EmojiTypeAheadItem.js +12 -13
  74. package/dist/es2019/components/typeahead/EmojiTypeAheadList.js +18 -19
  75. package/dist/es2019/components/typeahead/styles.js +14 -15
  76. package/dist/es2019/components/uploader/EmojiUploadComponent.js +19 -9
  77. package/dist/es2019/components/uploader/styles.js +4 -4
  78. package/dist/es2019/index.js +5 -4
  79. package/dist/es2019/types.js +20 -1
  80. package/dist/es2019/util/analytics/analytics.js +16 -37
  81. package/dist/es2019/util/analytics/index.js +2 -1
  82. package/dist/es2019/util/analytics/ufoExperiences.js +35 -0
  83. package/dist/es2019/version.json +1 -1
  84. package/dist/esm/api/media/SiteEmojiResource.js +10 -2
  85. package/dist/esm/components/common/CachingEmoji.js +5 -7
  86. package/dist/esm/components/common/DeleteButton.js +8 -6
  87. package/dist/esm/components/common/Emoji.js +18 -27
  88. package/dist/esm/components/common/EmojiActions.js +26 -25
  89. package/dist/esm/components/common/EmojiButton.js +6 -6
  90. package/dist/esm/components/common/EmojiDeletePreview.js +19 -20
  91. package/dist/esm/components/common/EmojiErrorMessage.js +9 -8
  92. package/dist/esm/components/common/EmojiPlaceholder.js +5 -8
  93. package/dist/esm/components/common/EmojiPreview.js +19 -33
  94. package/dist/esm/components/common/EmojiPreviewComponent.js +20 -0
  95. package/dist/esm/components/common/EmojiUploadPicker.js +27 -25
  96. package/dist/esm/components/common/EmojiUploadPreview.js +21 -22
  97. package/dist/esm/components/common/RecordSelectionDefault.js +6 -3
  98. package/dist/esm/components/common/ResourcedEmojiComponent.js +16 -10
  99. package/dist/esm/components/common/RetryableButton.js +11 -12
  100. package/dist/esm/components/common/Scrollable.js +6 -10
  101. package/dist/esm/components/common/UploadEmoji.js +4 -0
  102. package/dist/esm/components/common/styles.js +192 -242
  103. package/dist/esm/components/picker/CategorySelector.js +14 -12
  104. package/dist/esm/components/picker/EmojiPicker.js +13 -6
  105. package/dist/esm/components/picker/EmojiPickerCategoryHeading.js +8 -8
  106. package/dist/esm/components/picker/EmojiPickerComponent.js +47 -22
  107. package/dist/esm/components/picker/EmojiPickerEmojiRow.js +8 -7
  108. package/dist/esm/components/picker/EmojiPickerFooter.js +8 -8
  109. package/dist/esm/components/picker/EmojiPickerList.js +29 -8
  110. package/dist/esm/components/picker/EmojiPickerListSearch.js +10 -8
  111. package/dist/esm/components/picker/EmojiPickerVirtualItems.js +9 -8
  112. package/dist/esm/components/picker/styles.js +108 -149
  113. package/dist/esm/components/typeahead/EmojiTypeAheadComponent.js +35 -17
  114. package/dist/esm/components/typeahead/EmojiTypeAheadItem.js +11 -13
  115. package/dist/esm/components/typeahead/EmojiTypeAheadList.js +17 -19
  116. package/dist/esm/components/typeahead/styles.js +14 -14
  117. package/dist/esm/components/uploader/EmojiUploadComponent.js +19 -9
  118. package/dist/esm/components/uploader/styles.js +4 -4
  119. package/dist/esm/index.js +5 -4
  120. package/dist/esm/types.js +20 -1
  121. package/dist/esm/util/analytics/analytics.js +8 -33
  122. package/dist/esm/util/analytics/index.js +2 -1
  123. package/dist/esm/util/analytics/ufoExperiences.js +35 -0
  124. package/dist/esm/version.json +1 -1
  125. package/dist/types/components/common/CachingEmoji.d.ts +8 -6
  126. package/dist/types/components/common/EmojiActions.d.ts +2 -3
  127. package/dist/types/components/common/EmojiDeletePreview.d.ts +3 -3
  128. package/dist/types/components/common/EmojiErrorMessage.d.ts +2 -1
  129. package/dist/types/components/common/EmojiPreview.d.ts +2 -3
  130. package/dist/types/components/common/EmojiPreviewComponent.d.ts +7 -0
  131. package/dist/types/components/common/EmojiUploadPreview.d.ts +3 -3
  132. package/dist/types/components/common/ResourcedEmojiComponent.d.ts +6 -0
  133. package/dist/types/components/common/RetryableButton.d.ts +0 -2
  134. package/dist/types/components/common/styles.d.ts +44 -44
  135. package/dist/types/components/picker/EmojiPicker.d.ts +2 -3
  136. package/dist/types/components/picker/EmojiPickerComponent.d.ts +6 -0
  137. package/dist/types/components/picker/EmojiPickerList.d.ts +10 -0
  138. package/dist/types/components/picker/styles.d.ts +17 -18
  139. package/dist/types/components/typeahead/EmojiTypeAheadComponent.d.ts +6 -0
  140. package/dist/types/components/typeahead/styles.d.ts +8 -7
  141. package/dist/types/components/uploader/EmojiUploadComponent.d.ts +1 -0
  142. package/dist/types/components/uploader/styles.d.ts +2 -2
  143. package/dist/types/index.d.ts +4 -4
  144. package/dist/types/types.d.ts +13 -0
  145. package/dist/types/util/analytics/analytics.d.ts +3 -7
  146. package/dist/types/util/analytics/index.d.ts +3 -2
  147. package/dist/types/util/analytics/ufoExperiences.d.ts +11 -0
  148. package/package.json +9 -10
  149. package/dist/cjs/components/picker/EmojiPickerPreview.js +0 -87
  150. package/dist/cjs/context/EmojiContext.js +0 -11
  151. package/dist/cjs/context/EmojiContextProvider.js +0 -22
  152. package/dist/es2019/components/picker/EmojiPickerPreview.js +0 -43
  153. package/dist/es2019/context/EmojiContext.js +0 -2
  154. package/dist/es2019/context/EmojiContextProvider.js +0 -10
  155. package/dist/esm/components/picker/EmojiPickerPreview.js +0 -67
  156. package/dist/esm/context/EmojiContext.js +0 -2
  157. package/dist/esm/context/EmojiContextProvider.js +0 -9
  158. package/dist/types/components/picker/EmojiPickerPreview.d.ts +0 -9
  159. package/dist/types/context/EmojiContext.d.ts +0 -4
  160. package/dist/types/context/EmojiContextProvider.d.ts +0 -7
@@ -23,9 +23,9 @@ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/ge
23
23
 
24
24
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
25
25
 
26
- var _spinner = _interopRequireDefault(require("@atlaskit/spinner"));
26
+ var _core = require("@emotion/core");
27
27
 
28
- var _classnames = _interopRequireDefault(require("classnames"));
28
+ var _spinner = _interopRequireDefault(require("@atlaskit/spinner"));
29
29
 
30
30
  var _react = _interopRequireWildcard(require("react"));
31
31
 
@@ -41,7 +41,7 @@ var _Scrollable = _interopRequireDefault(require("../common/Scrollable"));
41
41
 
42
42
  var _EmojiTypeAheadItem = _interopRequireDefault(require("./EmojiTypeAheadItem"));
43
43
 
44
- var styles = _interopRequireWildcard(require("./styles"));
44
+ var _styles = require("./styles");
45
45
 
46
46
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
47
47
 
@@ -230,10 +230,9 @@ var EmojiTypeAheadList = /*#__PURE__*/function (_PureComponent) {
230
230
 
231
231
  if (emojis && emojis.length) {
232
232
  this.items = {};
233
- return /*#__PURE__*/_react.default.createElement("div", null, emojis.map(function (emoji, idx) {
233
+ return (0, _core.jsx)("div", null, emojis.map(function (emoji, idx) {
234
234
  var key = getKey(emoji);
235
-
236
- var item = /*#__PURE__*/_react.default.createElement(_EmojiTypeAheadItem.default, {
235
+ var item = (0, _core.jsx)(_EmojiTypeAheadItem.default, {
237
236
  emoji: emoji,
238
237
  key: key,
239
238
  selected: _this2.isSelectedEmoji(emoji, idx),
@@ -247,7 +246,6 @@ var EmojiTypeAheadList = /*#__PURE__*/function (_PureComponent) {
247
246
  }
248
247
  }
249
248
  });
250
-
251
249
  return item;
252
250
  }));
253
251
  }
@@ -263,34 +261,31 @@ var EmojiTypeAheadList = /*#__PURE__*/function (_PureComponent) {
263
261
  }, {
264
262
  key: "render",
265
263
  value: function render() {
266
- var _classNames;
267
-
268
264
  var _this$props2 = this.props,
269
265
  emojis = _this$props2.emojis,
270
266
  loading = _this$props2.loading;
271
267
  var hasEmoji = emojis && emojis.length;
272
- var classes = (0, _classnames.default)((_classNames = {
273
- 'ak-emoji-typeahead-list': true
274
- }, (0, _defineProperty2.default)(_classNames, styles.typeAheadList, true), (0, _defineProperty2.default)(_classNames, styles.typeAheadEmpty, !hasEmoji && !loading), _classNames));
268
+ var classes = [_styles.typeAheadList, !hasEmoji && !loading && _styles.typeAheadEmpty];
275
269
  var listBody;
276
270
 
277
271
  if (loading) {
278
- listBody = /*#__PURE__*/_react.default.createElement("div", {
279
- className: styles.emojiTypeAheadSpinnerContainer
280
- }, /*#__PURE__*/_react.default.createElement("div", {
281
- className: styles.emojiTypeAheadSpinner
282
- }, /*#__PURE__*/_react.default.createElement(_spinner.default, {
272
+ listBody = (0, _core.jsx)("div", {
273
+ css: _styles.emojiTypeAheadSpinnerContainer
274
+ }, (0, _core.jsx)("div", {
275
+ css: _styles.emojiTypeAheadSpinner
276
+ }, (0, _core.jsx)(_spinner.default, {
283
277
  size: "medium"
284
278
  })));
285
279
  } else {
286
280
  listBody = this.renderItems(emojis);
287
281
  }
288
282
 
289
- return /*#__PURE__*/_react.default.createElement("div", {
290
- className: styles.typeAheadListContainer
291
- }, /*#__PURE__*/_react.default.createElement("div", {
292
- className: classes
293
- }, /*#__PURE__*/_react.default.createElement(_Scrollable.default, {
283
+ return (0, _core.jsx)("div", {
284
+ css: _styles.typeAheadListContainer
285
+ }, (0, _core.jsx)("div", {
286
+ className: 'ak-emoji-typeahead-list',
287
+ css: classes
288
+ }, (0, _core.jsx)(_Scrollable.default, {
294
289
  ref: this.handleScrollableRef,
295
290
  maxHeight: "".concat(_sharedStyles.emojiTypeAheadMaxHeight, "px")
296
291
  }, listBody)));
@@ -1,27 +1,24 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
3
  Object.defineProperty(exports, "__esModule", {
6
4
  value: true
7
5
  });
8
- exports.typeAheadListContainer = exports.typeAheadList = exports.typeAheadItemRow = exports.typeAheadItem = exports.typeAheadEmpty = exports.selected = exports.emojiTypeAheadSpinnerContainer = exports.emojiTypeAheadSpinner = exports.emojiTypeAhead = void 0;
9
-
10
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
6
+ exports.typeaheadSelected = exports.typeAheadListContainer = exports.typeAheadList = exports.typeAheadItemRow = exports.typeAheadItem = exports.typeAheadEmpty = exports.selected = exports.emojiTypeAheadSpinnerContainer = exports.emojiTypeAheadSpinner = exports.emojiTypeAhead = void 0;
11
7
 
12
- var _typestyle = require("typestyle");
8
+ var _core = require("@emotion/core");
13
9
 
14
10
  var _tokens = require("@atlaskit/tokens");
15
11
 
16
12
  var _sharedStyles = require("../../util/shared-styles");
17
13
 
18
- var selected = 'emoji-typeahead-selected';
19
- exports.selected = selected;
20
14
  var emojiTypeAhead = 'emoji-typeahead-element';
21
15
  exports.emojiTypeAhead = emojiTypeAhead;
22
- var typeAheadListContainer = 'emoji-typeahead-list-container';
16
+ var typeAheadListContainer = 'emoji-typeahead-list-container'; // editor-core is using this static class name for testing
17
+
23
18
  exports.typeAheadListContainer = typeAheadListContainer;
24
- var typeAheadList = (0, _typestyle.style)({
19
+ var typeaheadSelected = 'emoji-typeahead-selected';
20
+ exports.typeaheadSelected = typeaheadSelected;
21
+ var typeAheadList = (0, _core.css)({
25
22
  background: (0, _tokens.token)('elevation.surface.overlay', 'white'),
26
23
  border: "1px solid ".concat(_sharedStyles.noDialogContainerBorderColor),
27
24
  borderRadius: _sharedStyles.noDialogContainerBorderRadius,
@@ -30,36 +27,37 @@ var typeAheadList = (0, _typestyle.style)({
30
27
  width: _sharedStyles.emojiTypeAheadWidth
31
28
  });
32
29
  exports.typeAheadList = typeAheadList;
33
- var typeAheadEmpty = (0, _typestyle.style)({
30
+ var typeAheadEmpty = (0, _core.css)({
34
31
  display: 'none'
35
32
  });
36
33
  exports.typeAheadEmpty = typeAheadEmpty;
37
- var typeAheadItem = (0, _typestyle.style)({
34
+ var selected = (0, _core.css)({
35
+ backgroundColor: _sharedStyles.emojiPreviewSelectedColor
36
+ });
37
+ exports.selected = selected;
38
+ var typeAheadItem = (0, _core.css)({
38
39
  cursor: 'pointer',
39
40
  display: 'block',
40
41
  listStyleType: 'none',
41
42
  overflow: 'hidden',
42
- width: _sharedStyles.emojiTypeAheadWidth,
43
- $nest: (0, _defineProperty2.default)({}, "&.".concat(selected), {
44
- backgroundColor: _sharedStyles.emojiPreviewSelectedColor
45
- })
43
+ width: _sharedStyles.emojiTypeAheadWidth
46
44
  });
47
45
  exports.typeAheadItem = typeAheadItem;
48
- var typeAheadItemRow = (0, _typestyle.style)({
46
+ var typeAheadItemRow = (0, _core.css)({
49
47
  display: 'flex',
50
48
  flexDirection: 'row',
51
49
  flexWrap: 'wrap',
52
50
  verticalAlign: 'middle'
53
51
  });
54
52
  exports.typeAheadItemRow = typeAheadItemRow;
55
- var emojiTypeAheadSpinnerContainer = (0, _typestyle.style)({
53
+ var emojiTypeAheadSpinnerContainer = (0, _core.css)({
56
54
  position: 'relative',
57
55
  height: "".concat(_sharedStyles.emojiTypeAheadMaxHeight, "px"),
58
56
  paddingTop: "".concat(((_sharedStyles.emojiTypeAheadMaxHeight - 30) / 2).toFixed(), "px"),
59
57
  boxSizing: 'border-box'
60
58
  });
61
59
  exports.emojiTypeAheadSpinnerContainer = emojiTypeAheadSpinnerContainer;
62
- var emojiTypeAheadSpinner = (0, _typestyle.style)({
60
+ var emojiTypeAheadSpinner = (0, _core.css)({
63
61
  textAlign: 'center'
64
62
  });
65
63
  exports.emojiTypeAheadSpinner = emojiTypeAheadSpinner;
@@ -2,8 +2,6 @@
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
- var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
@@ -23,13 +21,11 @@ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/ge
23
21
 
24
22
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
25
23
 
26
- var _react = _interopRequireWildcard(require("react"));
27
-
28
- var _reactIntlNext = require("react-intl-next");
24
+ var _core = require("@emotion/core");
29
25
 
30
- var _classnames = _interopRequireDefault(require("classnames"));
26
+ var _react = require("react");
31
27
 
32
- var styles = _interopRequireWildcard(require("./styles"));
28
+ var _reactIntlNext = require("react-intl-next");
33
29
 
34
30
  var _EmojiResource = require("../../api/EmojiResource");
35
31
 
@@ -39,9 +35,9 @@ var _UploadEmoji = require("../common/UploadEmoji");
39
35
 
40
36
  var _analytics = require("../../util/analytics");
41
37
 
42
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
38
+ var _styles = require("./styles");
43
39
 
44
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
40
+ var _ufoExperiences = require("../../util/analytics/ufoExperiences");
45
41
 
46
42
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
47
43
 
@@ -60,6 +56,12 @@ var EmojiUploadComponent = /*#__PURE__*/function (_PureComponent) {
60
56
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onUploadEmoji", function (upload, retry) {
61
57
  var emojiProvider = _this.props.emojiProvider;
62
58
 
59
+ _ufoExperiences.ufoExperiences['emoji-uploaded'].start();
60
+
61
+ _ufoExperiences.ufoExperiences['emoji-uploaded'].addMetadata({
62
+ retry: retry
63
+ });
64
+
63
65
  _this.fireAnalytics((0, _analytics.uploadConfirmButton)({
64
66
  retry: retry
65
67
  }));
@@ -115,16 +117,21 @@ var EmojiUploadComponent = /*#__PURE__*/function (_PureComponent) {
115
117
  }
116
118
 
117
119
  (0, _createClass2.default)(EmojiUploadComponent, [{
120
+ key: "componentWillUnmount",
121
+ value: function componentWillUnmount() {
122
+ _ufoExperiences.ufoExperiences['emoji-uploaded'].abort();
123
+ }
124
+ }, {
118
125
  key: "render",
119
126
  value: function render() {
120
127
  var uploadErrorMessage = this.state.uploadErrorMessage;
121
- var errorMessage = uploadErrorMessage ? /*#__PURE__*/_react.default.createElement(_reactIntlNext.FormattedMessage, uploadErrorMessage) : null;
122
- return /*#__PURE__*/_react.default.createElement("div", {
123
- className: (0, _classnames.default)([styles.emojiUploadWidget]),
128
+ var errorMessage = uploadErrorMessage ? (0, _core.jsx)(_reactIntlNext.FormattedMessage, uploadErrorMessage) : null;
129
+ return (0, _core.jsx)("div", {
130
+ css: _styles.emojiUploadWidget,
124
131
  ref: this.props.onUploaderRef
125
- }, /*#__PURE__*/_react.default.createElement("div", {
126
- className: (0, _classnames.default)([styles.emojiUploadFooter])
127
- }, /*#__PURE__*/_react.default.createElement(_EmojiUploadPicker.default, {
132
+ }, (0, _core.jsx)("div", {
133
+ css: _styles.emojiUploadFooter
134
+ }, (0, _core.jsx)(_EmojiUploadPicker.default, {
128
135
  ref: this.onUploaderRef,
129
136
  onFileChooserClicked: this.onFileChooserClicked,
130
137
  onUploadCancelled: this.onUploadCancelled,
@@ -5,14 +5,14 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.emojiUploadWidget = exports.emojiUploadFooter = void 0;
7
7
 
8
- var _typestyle = require("typestyle");
9
-
10
8
  var _tokens = require("@atlaskit/tokens");
11
9
 
12
10
  var _constants = require("../../util/constants");
13
11
 
12
+ var _core = require("@emotion/core");
13
+
14
14
  // Uploader
15
- var emojiUploadWidget = (0, _typestyle.style)({
15
+ var emojiUploadWidget = (0, _core.css)({
16
16
  display: 'flex',
17
17
  flexDirection: 'column',
18
18
  justifyContent: 'center',
@@ -27,7 +27,7 @@ var emojiUploadWidget = (0, _typestyle.style)({
27
27
  }); /// Footer
28
28
 
29
29
  exports.emojiUploadWidget = emojiUploadWidget;
30
- var emojiUploadFooter = (0, _typestyle.style)({
30
+ var emojiUploadFooter = (0, _core.css)({
31
31
  flex: '0 0 auto'
32
32
  });
33
33
  exports.emojiUploadFooter = emojiUploadFooter;
package/dist/cjs/index.js CHANGED
@@ -77,6 +77,18 @@ Object.defineProperty(exports, "SearchSort", {
77
77
  return _types.SearchSort;
78
78
  }
79
79
  });
80
+ Object.defineProperty(exports, "UfoComponentName", {
81
+ enumerable: true,
82
+ get: function get() {
83
+ return _types.UfoComponentName;
84
+ }
85
+ });
86
+ Object.defineProperty(exports, "UfoExperienceName", {
87
+ enumerable: true,
88
+ get: function get() {
89
+ return _types.UfoExperienceName;
90
+ }
91
+ });
80
92
  Object.defineProperty(exports, "UsageFrequencyTracker", {
81
93
  enumerable: true,
82
94
  get: function get() {
@@ -111,7 +123,7 @@ Object.defineProperty(exports, "emojiImage", {
111
123
  Object.defineProperty(exports, "emojiNode", {
112
124
  enumerable: true,
113
125
  get: function get() {
114
- return _styles.emojiNode;
126
+ return _styles.emojiNodeStyles;
115
127
  }
116
128
  });
117
129
  Object.defineProperty(exports, "emojiPickerHeight", {
@@ -147,13 +159,13 @@ Object.defineProperty(exports, "recordSelectionSucceededSli", {
147
159
  Object.defineProperty(exports, "selectOnHover", {
148
160
  enumerable: true,
149
161
  get: function get() {
150
- return _styles.selectOnHover;
162
+ return _styles.selectOnHoverStyles;
151
163
  }
152
164
  });
153
165
  Object.defineProperty(exports, "selected", {
154
166
  enumerable: true,
155
167
  get: function get() {
156
- return _styles.selected;
168
+ return _styles.commonSelectedStyles;
157
169
  }
158
170
  });
159
171
  Object.defineProperty(exports, "toEmojiId", {
@@ -168,6 +180,12 @@ Object.defineProperty(exports, "toOptionalEmojiId", {
168
180
  return _typeHelpers.toOptionalEmojiId;
169
181
  }
170
182
  });
183
+ Object.defineProperty(exports, "ufoExperiences", {
184
+ enumerable: true,
185
+ get: function get() {
186
+ return _analytics.ufoExperiences;
187
+ }
188
+ });
171
189
 
172
190
  var _utilServiceSupport = require("@atlaskit/util-service-support");
173
191
 
package/dist/cjs/types.js CHANGED
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.SearchSort = exports.ProviderTypes = void 0;
6
+ exports.UfoExperienceName = exports.UfoComponentName = exports.SearchSort = exports.ProviderTypes = void 0;
7
7
 
8
8
  /**
9
9
  * Minimum information to defined an emoji is the shortName.
@@ -51,4 +51,25 @@ exports.ProviderTypes = ProviderTypes;
51
51
  ProviderTypes["STANDARD"] = "STANDARD";
52
52
  ProviderTypes["ATLASSIAN"] = "ATLASSIAN";
53
53
  ProviderTypes["UNKNOWN"] = "UNKNOWN";
54
- })(ProviderTypes || (exports.ProviderTypes = ProviderTypes = {}));
54
+ })(ProviderTypes || (exports.ProviderTypes = ProviderTypes = {}));
55
+
56
+ var UfoExperienceName;
57
+ exports.UfoExperienceName = UfoExperienceName;
58
+
59
+ (function (UfoExperienceName) {
60
+ UfoExperienceName["EMOJI_RENDERED"] = "emoji-rendered";
61
+ UfoExperienceName["EMOJI_RESOURCE_FETCHED"] = "emoji-resource-fetched";
62
+ UfoExperienceName["EMOJI_PICKER_OPENED"] = "emoji-picker-opened";
63
+ UfoExperienceName["EMOJI_SELECTION_RECORDED"] = "emoji-selection-recorded";
64
+ UfoExperienceName["EMOJI_UPLOADED"] = "emoji-uploaded";
65
+ UfoExperienceName["EMOJI_SEARCHED"] = "emoji-searched";
66
+ })(UfoExperienceName || (exports.UfoExperienceName = UfoExperienceName = {}));
67
+
68
+ var UfoComponentName;
69
+ exports.UfoComponentName = UfoComponentName;
70
+
71
+ (function (UfoComponentName) {
72
+ UfoComponentName["EMOJI"] = "emoji";
73
+ UfoComponentName["EMOJI_PICKER"] = "emoji-picker";
74
+ UfoComponentName["EMOJI_PROVIDER"] = "emoji-provider";
75
+ })(UfoComponentName || (exports.UfoComponentName = UfoComponentName = {}));
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.uploadSucceededEvent = exports.uploadFailedEvent = exports.uploadConfirmButton = exports.uploadCancelButton = exports.uploadBeginButton = exports.ufoExperiences = exports.typeaheadSelectedEvent = exports.typeaheadRenderedEvent = exports.typeaheadCancelledEvent = exports.toneSelectorOpenedEvent = exports.toneSelectorClosedEvent = exports.toneSelectedEvent = exports.selectedFileEvent = exports.sampledUfoRenderedEmoji = exports.recordSelectionSucceededSli = exports.recordSelectionFailedSli = exports.pickerSearchedEvent = exports.pickerClickedEvent = exports.openedPickerEvent = exports.insertionSucceeded = exports.insertionFailed = exports.deleteConfirmEvent = exports.deleteCancelEvent = exports.deleteBeginEvent = exports.createAndFireEventInElementsChannel = exports.closedPickerEvent = exports.categoryClickedEvent = void 0;
8
+ exports.uploadSucceededEvent = exports.uploadFailedEvent = exports.uploadConfirmButton = exports.uploadCancelButton = exports.uploadBeginButton = exports.typeaheadSelectedEvent = exports.typeaheadRenderedEvent = exports.typeaheadCancelledEvent = exports.toneSelectorOpenedEvent = exports.toneSelectorClosedEvent = exports.toneSelectedEvent = exports.selectedFileEvent = exports.recordSucceeded = exports.recordSelectionSucceededSli = exports.recordSelectionFailedSli = exports.recordFailed = exports.pickerSearchedEvent = exports.pickerClickedEvent = exports.openedPickerEvent = exports.deleteConfirmEvent = exports.deleteCancelEvent = exports.deleteBeginEvent = exports.createAndFireEventInElementsChannel = exports.closedPickerEvent = exports.categoryClickedEvent = void 0;
9
9
 
10
10
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
11
 
@@ -13,10 +13,6 @@ var _analyticsNext = require("@atlaskit/analytics-next");
13
13
 
14
14
  var _version = require("../../version.json");
15
15
 
16
- var _ufo = require("@atlaskit/ufo");
17
-
18
- var _samplingUfo = require("./samplingUfo");
19
-
20
16
  function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
21
17
 
22
18
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
@@ -27,34 +23,6 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
27
23
 
28
24
  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) { (0, _defineProperty2.default)(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; }
29
25
 
30
- var createRenderExperience = function createRenderExperience(componentName) {
31
- return {
32
- platform: {
33
- component: componentName
34
- },
35
- type: _ufo.ExperienceTypes.Load,
36
- performanceType: _ufo.ExperiencePerformanceTypes.PageSegmentLoad
37
- };
38
- }; // const createInlineExperience = (componentName: string) => {
39
- // return {
40
- // platform: { component: componentName },
41
- // type: ExperienceTypes.Experience,
42
- // performanceType: ExperiencePerformanceTypes.InlineResult,
43
- // };
44
- // };
45
-
46
-
47
- var ufoExperiences = {
48
- 'emoji-rendered': new _ufo.ConcurrentExperience('emoji-rendered', createRenderExperience('emoji')),
49
- 'emoji-resource-fetched': new _ufo.ConcurrentExperience('emoji-resource-fetched', createRenderExperience('emoji-provider'))
50
- };
51
- exports.ufoExperiences = ufoExperiences;
52
-
53
- var sampledUfoRenderedEmoji = function sampledUfoRenderedEmoji(emojiId) {
54
- return (0, _samplingUfo.withSampling)(ufoExperiences['emoji-rendered'].getInstance(emojiId.id || emojiId.shortName));
55
- };
56
-
57
- exports.sampledUfoRenderedEmoji = sampledUfoRenderedEmoji;
58
26
  var createAndFireEventInElementsChannel = (0, _analyticsNext.createAndFireEvent)('fabric-elements');
59
27
  exports.createAndFireEventInElementsChannel = createAndFireEventInElementsChannel;
60
28
 
@@ -72,21 +40,21 @@ var createEvent = function createEvent(eventType, action, actionSubject, actionS
72
40
  };
73
41
  };
74
42
 
75
- var insertionSucceeded = function insertionSucceeded(source) {
43
+ var recordSucceeded = function recordSucceeded(source) {
76
44
  return createEvent('operational', 'succeeded', 'recordEmojiSelection', undefined, {
77
45
  source: source
78
46
  });
79
47
  };
80
48
 
81
- exports.insertionSucceeded = insertionSucceeded;
49
+ exports.recordSucceeded = recordSucceeded;
82
50
 
83
- var insertionFailed = function insertionFailed(source) {
51
+ var recordFailed = function recordFailed(source) {
84
52
  return createEvent('operational', 'failed', 'recordEmojiSelection', undefined, {
85
53
  source: source
86
54
  });
87
55
  };
88
56
 
89
- exports.insertionFailed = insertionFailed;
57
+ exports.recordFailed = recordFailed;
90
58
 
91
59
  var emojiPickerEvent = function emojiPickerEvent(action) {
92
60
  var attributes = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
@@ -296,24 +264,26 @@ var typeaheadRenderedEvent = function typeaheadRenderedEvent(duration, query, em
296
264
  return createEvent('operational', 'rendered', 'emojiTypeahead', undefined, _objectSpread({
297
265
  duration: duration
298
266
  }, extractCommonAttributes(query, emojiList)));
299
- };
267
+ }; // it's used in editor typeahead to fire success record analytics
268
+
300
269
 
301
270
  exports.typeaheadRenderedEvent = typeaheadRenderedEvent;
302
271
 
303
272
  var recordSelectionSucceededSli = function recordSelectionSucceededSli(options) {
304
273
  return function () {
305
274
  if (options && options.createAnalyticsEvent) {
306
- (0, _analyticsNext.createAndFireEvent)('editor')(insertionSucceeded('typeahead'))(options.createAnalyticsEvent);
275
+ (0, _analyticsNext.createAndFireEvent)('editor')(recordSucceeded('typeahead'))(options.createAnalyticsEvent);
307
276
  }
308
277
  };
309
- };
278
+ }; // it's used in editor typeahead to fire failure record analytics
279
+
310
280
 
311
281
  exports.recordSelectionSucceededSli = recordSelectionSucceededSli;
312
282
 
313
283
  var recordSelectionFailedSli = function recordSelectionFailedSli(options) {
314
284
  return function (err) {
315
285
  if (options && options.createAnalyticsEvent) {
316
- (0, _analyticsNext.createAndFireEvent)('editor')(insertionFailed('typeahead'))(options.createAnalyticsEvent);
286
+ (0, _analyticsNext.createAndFireEvent)('editor')(recordFailed('typeahead'))(options.createAnalyticsEvent);
317
287
  }
318
288
 
319
289
  return Promise.reject(err);
@@ -45,18 +45,6 @@ Object.defineProperty(exports, "deleteConfirmEvent", {
45
45
  return _analytics.deleteConfirmEvent;
46
46
  }
47
47
  });
48
- Object.defineProperty(exports, "insertionFailed", {
49
- enumerable: true,
50
- get: function get() {
51
- return _analytics.insertionFailed;
52
- }
53
- });
54
- Object.defineProperty(exports, "insertionSucceeded", {
55
- enumerable: true,
56
- get: function get() {
57
- return _analytics.insertionSucceeded;
58
- }
59
- });
60
48
  Object.defineProperty(exports, "isExperienceSampled", {
61
49
  enumerable: true,
62
50
  get: function get() {
@@ -81,6 +69,12 @@ Object.defineProperty(exports, "pickerSearchedEvent", {
81
69
  return _analytics.pickerSearchedEvent;
82
70
  }
83
71
  });
72
+ Object.defineProperty(exports, "recordFailed", {
73
+ enumerable: true,
74
+ get: function get() {
75
+ return _analytics.recordFailed;
76
+ }
77
+ });
84
78
  Object.defineProperty(exports, "recordSelectionFailedSli", {
85
79
  enumerable: true,
86
80
  get: function get() {
@@ -93,10 +87,16 @@ Object.defineProperty(exports, "recordSelectionSucceededSli", {
93
87
  return _analytics.recordSelectionSucceededSli;
94
88
  }
95
89
  });
90
+ Object.defineProperty(exports, "recordSucceeded", {
91
+ enumerable: true,
92
+ get: function get() {
93
+ return _analytics.recordSucceeded;
94
+ }
95
+ });
96
96
  Object.defineProperty(exports, "sampledUfoRenderedEmoji", {
97
97
  enumerable: true,
98
98
  get: function get() {
99
- return _analytics.sampledUfoRenderedEmoji;
99
+ return _ufoExperiences.sampledUfoRenderedEmoji;
100
100
  }
101
101
  });
102
102
  Object.defineProperty(exports, "selectedFileEvent", {
@@ -144,7 +144,7 @@ Object.defineProperty(exports, "typeaheadSelectedEvent", {
144
144
  Object.defineProperty(exports, "ufoExperiences", {
145
145
  enumerable: true,
146
146
  get: function get() {
147
- return _analytics.ufoExperiences;
147
+ return _ufoExperiences.ufoExperiences;
148
148
  }
149
149
  });
150
150
  Object.defineProperty(exports, "ufoExperiencesSampled", {
@@ -200,4 +200,6 @@ var _samplingUfo = require("./samplingUfo");
200
200
 
201
201
  var _analytics = require("./analytics");
202
202
 
203
+ var _ufoExperiences = require("./ufoExperiences");
204
+
203
205
  var _useSampledUFOComponentExperience = require("./useSampledUFOComponentExperience");
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.ufoExperiences = exports.sampledUfoRenderedEmoji = void 0;
7
+
8
+ var _types = require("../../types");
9
+
10
+ var _ufo = require("@atlaskit/ufo");
11
+
12
+ var _samplingUfo = require("./samplingUfo");
13
+
14
+ var createRenderExperience = function createRenderExperience(componentName) {
15
+ return {
16
+ platform: {
17
+ component: componentName
18
+ },
19
+ type: _ufo.ExperienceTypes.Load,
20
+ performanceType: _ufo.ExperiencePerformanceTypes.PageSegmentLoad
21
+ };
22
+ };
23
+
24
+ var createInlineExperience = function createInlineExperience(componentName) {
25
+ return {
26
+ platform: {
27
+ component: componentName
28
+ },
29
+ type: _ufo.ExperienceTypes.Experience,
30
+ performanceType: _ufo.ExperiencePerformanceTypes.InlineResult
31
+ };
32
+ };
33
+
34
+ var ufoExperiences = {
35
+ 'emoji-rendered': new _ufo.ConcurrentExperience(_types.UfoExperienceName.EMOJI_RENDERED, createRenderExperience(_types.UfoComponentName.EMOJI)),
36
+ 'emoji-resource-fetched': new _ufo.ConcurrentExperience(_types.UfoExperienceName.EMOJI_RESOURCE_FETCHED, createRenderExperience(_types.UfoComponentName.EMOJI_PROVIDER)),
37
+ 'emoji-picker-opened': new _ufo.UFOExperience(_types.UfoExperienceName.EMOJI_PICKER_OPENED, createRenderExperience(_types.UfoComponentName.EMOJI_PICKER)),
38
+ 'emoji-selection-recorded': new _ufo.UFOExperience(_types.UfoExperienceName.EMOJI_SELECTION_RECORDED, createInlineExperience(_types.UfoComponentName.EMOJI_PROVIDER)),
39
+ 'emoji-uploaded': new _ufo.UFOExperience(_types.UfoExperienceName.EMOJI_UPLOADED, createInlineExperience(_types.UfoComponentName.EMOJI_PICKER)),
40
+ 'emoji-searched': new _ufo.UFOExperience(_types.UfoExperienceName.EMOJI_SEARCHED, createInlineExperience(_types.UfoComponentName.EMOJI_PICKER))
41
+ };
42
+ exports.ufoExperiences = ufoExperiences;
43
+
44
+ var sampledUfoRenderedEmoji = function sampledUfoRenderedEmoji(emojiId) {
45
+ return (0, _samplingUfo.withSampling)(ufoExperiences['emoji-rendered'].getInstance(emojiId.id || emojiId.shortName));
46
+ };
47
+
48
+ exports.sampledUfoRenderedEmoji = sampledUfoRenderedEmoji;
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "name": "@atlaskit/emoji",
3
- "version": "64.2.1",
3
+ "version": "64.4.1",
4
4
  "sideEffects": false
5
5
  }
@@ -163,7 +163,11 @@ export default class SiteEmojiResource {
163
163
  }
164
164
 
165
165
  findEmoji(emojiId) {
166
- const path = `../${emojiId.id}`;
166
+ if (!emojiId.id) {
167
+ return Promise.reject(false);
168
+ }
169
+
170
+ const path = `../${encodeURIComponent(emojiId.id)}`;
167
171
  return emojiRequest(this.siteServiceConfig, {
168
172
  path
169
173
  }).then(serviceResponse => {
@@ -186,7 +190,11 @@ export default class SiteEmojiResource {
186
190
  return Promise.reject(false);
187
191
  }
188
192
 
189
- const path = `${emoji.id}`;
193
+ if (!emoji.id) {
194
+ return Promise.reject(false);
195
+ }
196
+
197
+ const path = `${encodeURIComponent(emoji.id)}`;
190
198
  const requestInit = {
191
199
  method: 'DELETE'
192
200
  };