@atlaskit/emoji 69.2.0 → 69.3.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 (57) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/dist/cjs/api/EmojiResource.js +19 -19
  3. package/dist/cjs/components/common/CachingEmoji.js +1 -2
  4. package/dist/cjs/components/common/DeleteButton.js +1 -2
  5. package/dist/cjs/components/common/Emoji.js +1 -2
  6. package/dist/cjs/components/common/EmojiActions.js +1 -2
  7. package/dist/cjs/components/common/EmojiDeletePreview.js +1 -2
  8. package/dist/cjs/components/common/EmojiErrorMessage.js +1 -2
  9. package/dist/cjs/components/common/EmojiPlaceholder.js +4 -4
  10. package/dist/cjs/components/common/EmojiPreviewComponent.js +1 -2
  11. package/dist/cjs/components/common/EmojiRadioButton.js +1 -2
  12. package/dist/cjs/components/common/EmojiUploadPicker.js +4 -5
  13. package/dist/cjs/components/common/EmojiUploadPreview.js +1 -2
  14. package/dist/cjs/components/common/FileChooser.js +1 -2
  15. package/dist/cjs/components/common/Popup.js +1 -2
  16. package/dist/cjs/components/common/ResourcedEmoji.js +1 -2
  17. package/dist/cjs/components/common/ResourcedEmojiComponent.js +25 -22
  18. package/dist/cjs/components/common/RetryableButton.js +1 -2
  19. package/dist/cjs/components/common/Scrollable.js +1 -2
  20. package/dist/cjs/components/common/TonePreviewButton.js +1 -2
  21. package/dist/cjs/components/common/ToneSelector.js +1 -2
  22. package/dist/cjs/components/common/ToolTipContentWithKeymap.js +1 -2
  23. package/dist/cjs/components/picker/CategorySelector.js +1 -2
  24. package/dist/cjs/components/picker/EmojiPicker.js +1 -2
  25. package/dist/cjs/components/picker/EmojiPickerCategoryHeading.js +1 -2
  26. package/dist/cjs/components/picker/EmojiPickerComponent.js +30 -31
  27. package/dist/cjs/components/picker/EmojiPickerEmojiRow.js +1 -2
  28. package/dist/cjs/components/picker/EmojiPickerFooter.js +1 -2
  29. package/dist/cjs/components/picker/EmojiPickerList.js +1 -2
  30. package/dist/cjs/components/picker/EmojiPickerListSearch.js +1 -2
  31. package/dist/cjs/components/picker/EmojiPickerTabPanel.js +1 -2
  32. package/dist/cjs/components/picker/EmojiPickerVirtualItems.js +1 -2
  33. package/dist/cjs/components/picker/VirtualList.js +1 -2
  34. package/dist/cjs/components/typeahead/EmojiTypeAhead.js +1 -2
  35. package/dist/cjs/components/typeahead/EmojiTypeAheadComponent.js +1 -2
  36. package/dist/cjs/components/typeahead/EmojiTypeAheadList.js +1 -2
  37. package/dist/cjs/components/typeahead/EmojiTypeAheadSpinner.js +1 -2
  38. package/dist/cjs/components/uploader/EmojiUploadComponent.js +1 -2
  39. package/dist/cjs/components/uploader/EmojiUploader.js +1 -2
  40. package/dist/cjs/context/EmojiContextProvider.js +1 -2
  41. package/dist/cjs/context/EmojiPickerListContext.js +1 -2
  42. package/dist/cjs/index.js +1 -2
  43. package/dist/cjs/util/analytics/analytics.js +1 -1
  44. package/dist/es2019/components/common/EmojiPlaceholder.js +3 -2
  45. package/dist/es2019/components/common/ResourcedEmojiComponent.js +18 -15
  46. package/dist/es2019/util/analytics/analytics.js +1 -1
  47. package/dist/esm/api/EmojiResource.js +19 -19
  48. package/dist/esm/components/common/EmojiPlaceholder.js +3 -2
  49. package/dist/esm/components/common/EmojiUploadPicker.js +3 -3
  50. package/dist/esm/components/common/ResourcedEmojiComponent.js +24 -20
  51. package/dist/esm/components/picker/EmojiPickerComponent.js +29 -29
  52. package/dist/esm/util/analytics/analytics.js +1 -1
  53. package/dist/types/components/common/EmojiPlaceholder.d.ts +2 -0
  54. package/dist/types/components/common/ResourcedEmojiComponent.d.ts +6 -1
  55. package/dist/types-ts4.5/components/common/EmojiPlaceholder.d.ts +2 -0
  56. package/dist/types-ts4.5/components/common/ResourcedEmojiComponent.d.ts +6 -1
  57. package/package.json +13 -10
@@ -19,22 +19,23 @@ var ResourcedEmojiComponentRenderStatesEnum = /*#__PURE__*/function (ResourcedEm
19
19
  ResourcedEmojiComponentRenderStatesEnum["EMOJI"] = "EMOJI";
20
20
  return ResourcedEmojiComponentRenderStatesEnum;
21
21
  }(ResourcedEmojiComponentRenderStatesEnum || {});
22
- export var ResourcedEmojiComponent = function ResourcedEmojiComponent(props) {
23
- var emojiProvider = props.emojiProvider,
24
- emojiId = props.emojiId,
25
- _props$showTooltip = props.showTooltip,
26
- showTooltip = _props$showTooltip === void 0 ? false : _props$showTooltip,
27
- _props$customFallback = props.customFallback,
28
- customFallback = _props$customFallback === void 0 ? undefined : _props$customFallback,
29
- _props$fitToHeight = props.fitToHeight,
30
- fitToHeight = _props$fitToHeight === void 0 ? defaultEmojiHeight : _props$fitToHeight,
31
- _props$optimistic = props.optimistic,
32
- optimistic = _props$optimistic === void 0 ? false : _props$optimistic,
33
- _props$optimisticImag = props.optimisticImageURL,
34
- optimisticImageURL = _props$optimisticImag === void 0 ? undefined : _props$optimisticImag,
35
- editorEmoji = props.editorEmoji,
36
- onEmojiLoadSuccess = props.onEmojiLoadSuccess,
37
- onEmojiLoadFail = props.onEmojiLoadFail;
22
+ export var ResourcedEmojiComponent = function ResourcedEmojiComponent(_ref) {
23
+ var emojiProvider = _ref.emojiProvider,
24
+ emojiId = _ref.emojiId,
25
+ _ref$showTooltip = _ref.showTooltip,
26
+ showTooltip = _ref$showTooltip === void 0 ? false : _ref$showTooltip,
27
+ _ref$customFallback = _ref.customFallback,
28
+ customFallback = _ref$customFallback === void 0 ? undefined : _ref$customFallback,
29
+ _ref$fitToHeight = _ref.fitToHeight,
30
+ fitToHeight = _ref$fitToHeight === void 0 ? defaultEmojiHeight : _ref$fitToHeight,
31
+ _ref$optimistic = _ref.optimistic,
32
+ optimistic = _ref$optimistic === void 0 ? false : _ref$optimistic,
33
+ _ref$optimisticImageU = _ref.optimisticImageURL,
34
+ optimisticImageURL = _ref$optimisticImageU === void 0 ? undefined : _ref$optimisticImageU,
35
+ editorEmoji = _ref.editorEmoji,
36
+ placeholderXcss = _ref.placeholderXcss,
37
+ onEmojiLoadSuccess = _ref.onEmojiLoadSuccess,
38
+ onEmojiLoadFail = _ref.onEmojiLoadFail;
38
39
  var shortName = emojiId.shortName,
39
40
  id = emojiId.id,
40
41
  fallback = emojiId.fallback;
@@ -55,7 +56,7 @@ export var ResourcedEmojiComponent = function ResourcedEmojiComponent(props) {
55
56
  resolvedEmojiProvider = _useState8[0],
56
57
  setResolvedEmojiProvider = _useState8[1];
57
58
  var fetchOrGetEmoji = useCallback( /*#__PURE__*/function () {
58
- var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(_emojiProvider, emojiId) {
59
+ var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(_emojiProvider, emojiId) {
59
60
  var optimisticFetch,
60
61
  reason,
61
62
  foundEmoji,
@@ -130,7 +131,7 @@ export var ResourcedEmojiComponent = function ResourcedEmojiComponent(props) {
130
131
  }, _callee);
131
132
  }));
132
133
  return function (_x, _x2) {
133
- return _ref.apply(this, arguments);
134
+ return _ref2.apply(this, arguments);
134
135
  };
135
136
  }(), [onEmojiLoadFail]);
136
137
  useEffect(function () {
@@ -215,12 +216,15 @@ export var ResourcedEmojiComponent = function ResourcedEmojiComponent(props) {
215
216
  }, /*#__PURE__*/React.createElement("span", {
216
217
  "data-emoji-id": id,
217
218
  "data-emoji-short-name": shortName,
218
- "data-emoji-text": fallback || shortName
219
+ "data-emoji-text": fallback || shortName,
220
+ "data-ssr-placeholder": "emoji-".concat(id !== null && id !== void 0 ? id : shortName),
221
+ "data-ssr-placeholder-replace": "emoji-".concat(id !== null && id !== void 0 ? id : shortName)
219
222
  }, emojiRenderState === ResourcedEmojiComponentRenderStatesEnum.INITIAL && /*#__PURE__*/React.createElement(EmojiPlaceholder, {
220
223
  shortName: shortName,
221
224
  showTooltip: showTooltip,
222
225
  size: fitToHeight || defaultEmojiHeight,
223
- loading: true
226
+ loading: true,
227
+ xcss: placeholderXcss
224
228
  }), emojiRenderState === ResourcedEmojiComponentRenderStatesEnum.FALLBACK && /*#__PURE__*/React.createElement(React.Fragment, null, customFallback || fallback || shortName), emojiRenderState === ResourcedEmojiComponentRenderStatesEnum.EMOJI && optimisticEmojiDescription && /*#__PURE__*/React.createElement(Emoji, {
225
229
  emoji: optimisticEmojiDescription,
226
230
  onLoadError: handleOnLoadError,
@@ -74,45 +74,45 @@ var EmojiPickerComponent = function EmojiPickerComponent(_ref) {
74
74
  query = _useState8[0],
75
75
  setQuery = _useState8[1];
76
76
  var _useState9 = useState([]),
77
- _useState10 = _slicedToArray(_useState9, 2),
78
- dynamicCategories = _useState10[0],
79
- setDynamicCategories = _useState10[1];
80
- var _useState11 = useState(!hideToneSelector ? emojiProvider.getSelectedTone() : undefined),
77
+ _useState0 = _slicedToArray(_useState9, 2),
78
+ dynamicCategories = _useState0[0],
79
+ setDynamicCategories = _useState0[1];
80
+ var _useState1 = useState(!hideToneSelector ? emojiProvider.getSelectedTone() : undefined),
81
+ _useState10 = _slicedToArray(_useState1, 2),
82
+ selectedTone = _useState10[0],
83
+ setSelectedTone = _useState10[1];
84
+ var _useState11 = useState(true),
81
85
  _useState12 = _slicedToArray(_useState11, 2),
82
- selectedTone = _useState12[0],
83
- setSelectedTone = _useState12[1];
84
- var _useState13 = useState(true),
86
+ loading = _useState12[0],
87
+ setLoading = _useState12[1];
88
+ var _useState13 = useState(false),
85
89
  _useState14 = _slicedToArray(_useState13, 2),
86
- loading = _useState14[0],
87
- setLoading = _useState14[1];
88
- var _useState15 = useState(false),
90
+ uploading = _useState14[0],
91
+ setUploading = _useState14[1];
92
+ var _useState15 = useState(),
89
93
  _useState16 = _slicedToArray(_useState15, 2),
90
- uploading = _useState16[0],
91
- setUploading = _useState16[1];
92
- var _useState17 = useState(),
94
+ selectedEmoji = _useState16[0],
95
+ setSelectedEmoji = _useState16[1];
96
+ var _useState17 = useState(null),
93
97
  _useState18 = _slicedToArray(_useState17, 2),
94
- selectedEmoji = _useState18[0],
95
- setSelectedEmoji = _useState18[1];
96
- var _useState19 = useState(null),
98
+ activeCategory = _useState18[0],
99
+ setActiveCategory = _useState18[1];
100
+ var _useState19 = useState(false),
97
101
  _useState20 = _slicedToArray(_useState19, 2),
98
- activeCategory = _useState20[0],
99
- setActiveCategory = _useState20[1];
100
- var _useState21 = useState(false),
102
+ disableCategories = _useState20[0],
103
+ setDisableCategories = _useState20[1];
104
+ var _useState21 = useState(),
101
105
  _useState22 = _slicedToArray(_useState21, 2),
102
- disableCategories = _useState22[0],
103
- setDisableCategories = _useState22[1];
106
+ uploadErrorMessage = _useState22[0],
107
+ setUploadErrorMessage = _useState22[1];
104
108
  var _useState23 = useState(),
105
109
  _useState24 = _slicedToArray(_useState23, 2),
106
- uploadErrorMessage = _useState24[0],
107
- setUploadErrorMessage = _useState24[1];
110
+ emojiToDelete = _useState24[0],
111
+ setEmojiToDelete = _useState24[1];
108
112
  var _useState25 = useState(),
109
113
  _useState26 = _slicedToArray(_useState25, 2),
110
- emojiToDelete = _useState26[0],
111
- setEmojiToDelete = _useState26[1];
112
- var _useState27 = useState(),
113
- _useState28 = _slicedToArray(_useState27, 2),
114
- toneEmoji = _useState28[0],
115
- setToneEmoji = _useState28[1];
114
+ toneEmoji = _useState26[0],
115
+ setToneEmoji = _useState26[1];
116
116
  var emojiPickerList = useMemo(function () {
117
117
  return fg('platform_editor_react18_elements_emoji') || fg('platform_editor_react18_elements_emoji_jira_bb') ? /*#__PURE__*/createRef() : /*#__PURE__*/createRef();
118
118
  }, []);
@@ -13,7 +13,7 @@ var createEvent = function createEvent(eventType, action, actionSubject, actionS
13
13
  actionSubjectId: actionSubjectId,
14
14
  attributes: _objectSpread({
15
15
  packageName: "@atlaskit/emoji",
16
- packageVersion: "69.2.0"
16
+ packageVersion: "69.3.0"
17
17
  }, attributes)
18
18
  };
19
19
  };
@@ -1,4 +1,5 @@
1
1
  /// <reference types="react" />
2
+ import type { StrictXCSSProp } from '@atlaskit/css';
2
3
  import type { EmojiImageRepresentation } from '../../types';
3
4
  export interface Props {
4
5
  shortName: string;
@@ -6,6 +7,7 @@ export interface Props {
6
7
  showTooltip?: boolean;
7
8
  representation?: EmojiImageRepresentation;
8
9
  loading?: boolean;
10
+ xcss?: StrictXCSSProp<'backgroundColor', never>;
9
11
  }
10
12
  export declare const emojiPlaceholderTestId: (shortName: string) => string;
11
13
  declare const EmojiPlaceholder: (props: Props) => JSX.Element;
@@ -1,4 +1,5 @@
1
1
  import React from 'react';
2
+ import type { StrictXCSSProp } from '@atlaskit/css';
2
3
  import type { EmojiProvider } from '../../api/EmojiResource';
3
4
  import type { EmojiLoadSuccessCallback, EmojiLoadFailCallback } from '../../api/EmojiUtils';
4
5
  import { type EmojiId } from '../../types';
@@ -44,6 +45,10 @@ export interface BaseResourcedEmojiProps {
44
45
  * This is acceptable in Editor -- as it uses another technique to announce the emoji nodes.
45
46
  */
46
47
  editorEmoji?: true;
48
+ /**
49
+ * allows custom styling to the placeholder component while the emoji is loading.
50
+ */
51
+ placeholderXcss?: StrictXCSSProp<'backgroundColor', never>;
47
52
  }
48
53
  export interface Props extends BaseResourcedEmojiProps {
49
54
  /**
@@ -59,5 +64,5 @@ export interface Props extends BaseResourcedEmojiProps {
59
64
  */
60
65
  onEmojiLoadFail?: EmojiLoadFailCallback;
61
66
  }
62
- export declare const ResourcedEmojiComponent: (props: Props) => React.JSX.Element;
67
+ export declare const ResourcedEmojiComponent: ({ emojiProvider, emojiId, showTooltip, customFallback, fitToHeight, optimistic, optimisticImageURL, editorEmoji, placeholderXcss, onEmojiLoadSuccess, onEmojiLoadFail, }: Props) => React.JSX.Element;
63
68
  export default ResourcedEmojiComponent;
@@ -1,4 +1,5 @@
1
1
  /// <reference types="react" />
2
+ import type { StrictXCSSProp } from '@atlaskit/css';
2
3
  import type { EmojiImageRepresentation } from '../../types';
3
4
  export interface Props {
4
5
  shortName: string;
@@ -6,6 +7,7 @@ export interface Props {
6
7
  showTooltip?: boolean;
7
8
  representation?: EmojiImageRepresentation;
8
9
  loading?: boolean;
10
+ xcss?: StrictXCSSProp<'backgroundColor', never>;
9
11
  }
10
12
  export declare const emojiPlaceholderTestId: (shortName: string) => string;
11
13
  declare const EmojiPlaceholder: (props: Props) => JSX.Element;
@@ -1,4 +1,5 @@
1
1
  import React from 'react';
2
+ import type { StrictXCSSProp } from '@atlaskit/css';
2
3
  import type { EmojiProvider } from '../../api/EmojiResource';
3
4
  import type { EmojiLoadSuccessCallback, EmojiLoadFailCallback } from '../../api/EmojiUtils';
4
5
  import { type EmojiId } from '../../types';
@@ -44,6 +45,10 @@ export interface BaseResourcedEmojiProps {
44
45
  * This is acceptable in Editor -- as it uses another technique to announce the emoji nodes.
45
46
  */
46
47
  editorEmoji?: true;
48
+ /**
49
+ * allows custom styling to the placeholder component while the emoji is loading.
50
+ */
51
+ placeholderXcss?: StrictXCSSProp<'backgroundColor', never>;
47
52
  }
48
53
  export interface Props extends BaseResourcedEmojiProps {
49
54
  /**
@@ -59,5 +64,5 @@ export interface Props extends BaseResourcedEmojiProps {
59
64
  */
60
65
  onEmojiLoadFail?: EmojiLoadFailCallback;
61
66
  }
62
- export declare const ResourcedEmojiComponent: (props: Props) => React.JSX.Element;
67
+ export declare const ResourcedEmojiComponent: ({ emojiProvider, emojiId, showTooltip, customFallback, fitToHeight, optimistic, optimisticImageURL, editorEmoji, placeholderXcss, onEmojiLoadSuccess, onEmojiLoadFail, }: Props) => React.JSX.Element;
63
68
  export default ResourcedEmojiComponent;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/emoji",
3
- "version": "69.2.0",
3
+ "version": "69.3.0",
4
4
  "description": "Fabric emoji React components",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/"
@@ -35,22 +35,22 @@
35
35
  "access": "public"
36
36
  },
37
37
  "dependencies": {
38
- "@atlaskit/analytics-next": "^11.0.0",
39
- "@atlaskit/button": "^23.0.0",
38
+ "@atlaskit/analytics-next": "^11.1.0",
39
+ "@atlaskit/button": "^23.2.0",
40
40
  "@atlaskit/css": "^0.10.0",
41
41
  "@atlaskit/heading": "^5.2.0",
42
- "@atlaskit/icon": "^26.0.0",
43
- "@atlaskit/media-client": "^33.1.0",
44
- "@atlaskit/media-client-react": "^4.0.0",
42
+ "@atlaskit/icon": "^26.4.0",
43
+ "@atlaskit/media-client": "^33.3.0",
44
+ "@atlaskit/media-client-react": "^4.1.0",
45
45
  "@atlaskit/platform-feature-flags": "^1.1.0",
46
46
  "@atlaskit/platform-feature-flags-react": "^0.2.0",
47
- "@atlaskit/primitives": "^14.7.0",
48
- "@atlaskit/react-ufo": "^3.11.0",
47
+ "@atlaskit/primitives": "^14.8.0",
48
+ "@atlaskit/react-ufo": "^3.13.0",
49
49
  "@atlaskit/spinner": "^18.0.0",
50
50
  "@atlaskit/textfield": "^8.0.0",
51
51
  "@atlaskit/theme": "^18.0.0",
52
- "@atlaskit/tokens": "^4.8.0",
53
- "@atlaskit/tooltip": "^20.0.0",
52
+ "@atlaskit/tokens": "^5.0.0",
53
+ "@atlaskit/tooltip": "^20.3.0",
54
54
  "@atlaskit/ufo": "^0.4.0",
55
55
  "@atlaskit/util-service-support": "^6.3.0",
56
56
  "@atlaskit/visually-hidden": "^3.0.0",
@@ -138,6 +138,9 @@
138
138
  },
139
139
  "cc_complexit_fe_remove_emoji_animation": {
140
140
  "type": "boolean"
141
+ },
142
+ "platform_reactions_placeholder_custom_background": {
143
+ "type": "boolean"
141
144
  }
142
145
  },
143
146
  "scripts": {