@atlaskit/emoji 71.7.7 → 71.7.9

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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,19 @@
1
1
  # @atlaskit/emoji
2
2
 
3
+ ## 71.7.9
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies
8
+
9
+ ## 71.7.8
10
+
11
+ ### Patch Changes
12
+
13
+ - [`ca797600724c6`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/ca797600724c6) -
14
+ Increase emoji picker height when dropzone (preview) upload errors are shown
15
+ - Updated dependencies
16
+
3
17
  ## 71.7.7
4
18
 
5
19
  ### Patch Changes
@@ -269,6 +269,7 @@ var EmojiActions = exports.EmojiActions = function EmojiActions(props) {
269
269
  onCloseDelete = props.onCloseDelete,
270
270
  onDeleteEmoji = props.onDeleteEmoji,
271
271
  onUploadEmoji = props.onUploadEmoji,
272
+ onUploadPreviewErrorChange = props.onUploadPreviewErrorChange,
272
273
  uploadErrorMessage = props.uploadErrorMessage,
273
274
  uploading = props.uploading,
274
275
  onFileChooserClicked = props.onFileChooserClicked,
@@ -328,6 +329,7 @@ var EmojiActions = exports.EmojiActions = function EmojiActions(props) {
328
329
  onFileChooserClicked: onFileChooserClicked,
329
330
  errorMessage: uploadErrorMessage,
330
331
  initialUploadName: initialUploadName,
332
+ onUploadPreviewErrorChange: onUploadPreviewErrorChange,
331
333
  contentId: props.contentId,
332
334
  fireAnalytics: props.fireAnalytics
333
335
  })) : /*#__PURE__*/React.createElement("div", {
@@ -338,6 +340,7 @@ var EmojiActions = exports.EmojiActions = function EmojiActions(props) {
338
340
  onFileChooserClicked: onFileChooserClicked,
339
341
  errorMessage: uploadErrorMessage,
340
342
  initialUploadName: initialUploadName,
343
+ onUploadPreviewErrorChange: onUploadPreviewErrorChange,
341
344
  contentId: props.contentId,
342
345
  fireAnalytics: props.fireAnalytics
343
346
  }));
@@ -250,6 +250,7 @@ var EmojiUploadPicker = function EmojiUploadPicker(props) {
250
250
  disableFocusLock = _props$disableFocusLo === void 0 ? false : _props$disableFocusLo,
251
251
  contentId = props.contentId,
252
252
  fireAnalytics = props.fireAnalytics,
253
+ onUploadPreviewErrorChange = props.onUploadPreviewErrorChange,
253
254
  intl = props.intl;
254
255
  var _useState = (0, _react.useState)(errorMessage ? _internalTypes.UploadStatus.Error : _internalTypes.UploadStatus.Waiting),
255
256
  _useState2 = (0, _slicedToArray2.default)(_useState, 2),
@@ -292,7 +293,8 @@ var EmojiUploadPicker = function EmojiUploadPicker(props) {
292
293
  setName(undefined);
293
294
  setPreviewImage(undefined);
294
295
  setUploadStatus(_internalTypes.UploadStatus.Waiting);
295
- }, []);
296
+ onUploadPreviewErrorChange === null || onUploadPreviewErrorChange === void 0 || onUploadPreviewErrorChange(false);
297
+ }, [onUploadPreviewErrorChange]);
296
298
  var onNameChange = (0, _react.useCallback)(function (event) {
297
299
  var newName = sanitizeName(event.target.value);
298
300
  if (name !== newName) {
@@ -340,16 +342,18 @@ var EmojiUploadPicker = function EmojiUploadPicker(props) {
340
342
  setFilename('rovo-emoji.png');
341
343
  setPreviewImage(dataURL);
342
344
  setChooseEmojiErrorMessage(undefined);
345
+ onUploadPreviewErrorChange === null || onUploadPreviewErrorChange === void 0 || onUploadPreviewErrorChange(false);
343
346
  // Only auto-populate the name if the user hasn't already typed one.
344
347
  setName(function (current) {
345
348
  return current || sanitizeName(suggestedName);
346
349
  });
347
- }, []);
350
+ }, [onUploadPreviewErrorChange]);
348
351
  var errorOnUpload = (0, _react.useCallback)(function (event) {
349
352
  (0, _logger.default)('File load error: ', event);
350
353
  setChooseEmojiErrorMessage( /*#__PURE__*/React.createElement(_reactIntl.FormattedMessage, _i18n.messages.emojiUploadFailed));
354
+ onUploadPreviewErrorChange === null || onUploadPreviewErrorChange === void 0 || onUploadPreviewErrorChange(false);
351
355
  cancelChooseFile();
352
- }, [cancelChooseFile]);
356
+ }, [cancelChooseFile, onUploadPreviewErrorChange]);
353
357
  var onFileLoad = (0, _react.useCallback)(function (file) {
354
358
  return /*#__PURE__*/function () {
355
359
  var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(f) {
@@ -367,12 +371,14 @@ var EmojiUploadPicker = function EmojiUploadPicker(props) {
367
371
  case 1:
368
372
  setPreviewImage(f.target.result);
369
373
  setChooseEmojiErrorMessage(undefined);
374
+ onUploadPreviewErrorChange === null || onUploadPreviewErrorChange === void 0 || onUploadPreviewErrorChange(false);
370
375
  _context.next = 3;
371
376
  break;
372
377
  case 2:
373
378
  _context.prev = 2;
374
379
  _t = _context["catch"](0);
375
380
  setChooseEmojiErrorMessage( /*#__PURE__*/React.createElement(_reactIntl.FormattedMessage, _i18n.messages.emojiInvalidImage));
381
+ onUploadPreviewErrorChange === null || onUploadPreviewErrorChange === void 0 || onUploadPreviewErrorChange(false);
376
382
  cancelChooseFile();
377
383
  case 3:
378
384
  case "end":
@@ -384,7 +390,7 @@ var EmojiUploadPicker = function EmojiUploadPicker(props) {
384
390
  return _ref.apply(this, arguments);
385
391
  };
386
392
  }();
387
- }, [cancelChooseFile, name]);
393
+ }, [cancelChooseFile, name, onUploadPreviewErrorChange]);
388
394
  var onChooseFile = (0, _react.useCallback)(function (event) {
389
395
  var files = event.target.files;
390
396
  if (files.length) {
@@ -392,11 +398,13 @@ var EmojiUploadPicker = function EmojiUploadPicker(props) {
392
398
  var file = files[0];
393
399
  if (!isSupportedEmojiUploadFileType(file)) {
394
400
  setChooseEmojiErrorMessage( /*#__PURE__*/React.createElement(_reactIntl.FormattedMessage, _i18n.messages.emojiUnsupportedFileType));
401
+ onUploadPreviewErrorChange === null || onUploadPreviewErrorChange === void 0 || onUploadPreviewErrorChange(true);
395
402
  cancelChooseFile();
396
403
  return;
397
404
  }
398
405
  if (ImageUtil.hasFileExceededSize(file)) {
399
406
  setChooseEmojiErrorMessage( /*#__PURE__*/React.createElement(_reactIntl.FormattedMessage, _i18n.messages.emojiImageTooBig));
407
+ onUploadPreviewErrorChange === null || onUploadPreviewErrorChange === void 0 || onUploadPreviewErrorChange(false);
400
408
  cancelChooseFile();
401
409
  return;
402
410
  }
@@ -405,9 +413,10 @@ var EmojiUploadPicker = function EmojiUploadPicker(props) {
405
413
  reader.addEventListener('error', errorOnUpload);
406
414
  reader.readAsDataURL(file);
407
415
  } else {
416
+ onUploadPreviewErrorChange === null || onUploadPreviewErrorChange === void 0 || onUploadPreviewErrorChange(false);
408
417
  cancelChooseFile();
409
418
  }
410
- }, [cancelChooseFile, errorOnUpload, onFileLoad]);
419
+ }, [cancelChooseFile, errorOnUpload, onFileLoad, onUploadPreviewErrorChange]);
411
420
  var cancelUpload = (0, _react.useCallback)(function (event) {
412
421
  if ((0, _platformFeatureFlags.fg)('platform_emoji_keep_picker_open_on_upload') || isRefreshEmojiPickerEnabled()) {
413
422
  event === null || event === void 0 || event.preventDefault();
@@ -415,6 +424,7 @@ var EmojiUploadPicker = function EmojiUploadPicker(props) {
415
424
  }
416
425
  clearUploadPicker();
417
426
  onUploadCancelled();
427
+ onUploadPreviewErrorChange === null || onUploadPreviewErrorChange === void 0 || onUploadPreviewErrorChange(false);
418
428
 
419
429
  // using setTimeout here to allow the UI to update before setting focus
420
430
  setTimeout(function (lastFocus) {
@@ -423,7 +433,7 @@ var EmojiUploadPicker = function EmojiUploadPicker(props) {
423
433
  (_getDocument = (0, _browserApis.getDocument)()) === null || _getDocument === void 0 || (_getDocument = _getDocument.getElementById(lastFocus)) === null || _getDocument === void 0 || _getDocument.focus();
424
434
  }
425
435
  }, 0, lastFocusedElementId.current);
426
- }, [clearUploadPicker, onUploadCancelled]);
436
+ }, [clearUploadPicker, onUploadCancelled, onUploadPreviewErrorChange]);
427
437
  var onChooseFileClicked = function onChooseFileClicked() {
428
438
  onFileChooserClicked && onFileChooserClicked();
429
439
  };
@@ -17,6 +17,7 @@
17
17
  ._1ul910mj{min-width:var(--_gsvyy7)}
18
18
  ._2lx21bp4{flex-direction:column}
19
19
  ._4t3i1784{height:470px}
20
+ ._4t3i189v{height:495px}
20
21
  ._4t3i19lm{height:514px}
21
22
  ._4t3i1ckg{height:455px}
22
23
  ._4t3i1dsu{height:419px}
@@ -24,12 +25,14 @@
24
25
  ._4t3i1sa4{height:390px}
25
26
  ._4t3i2300{height:429px}
26
27
  ._4t3i50k7{height:499px}
28
+ ._4t3i6iir{height:335px}
27
29
  ._4t3iaq3k{height:295px}
28
30
  ._4t3ibqjm{height:310px}
29
31
  ._4t3iihnn{height:434px}
30
32
  ._4t3iixjv{height:375px}
31
33
  ._4t3ikbql{height:450px}
32
34
  ._4t3iqbeb{height:339px}
35
+ ._4t3iqxjr{height:415px}
33
36
  ._4t3iuxo9{height:var(--_19dn98e)}
34
37
  ._4t3ivixp{height:349px}
35
38
  ._4t3ixt2k{height:509px}
@@ -58,6 +58,7 @@ var emojiPickerBoxShadow = "var(--ds-shadow-overlay, 0px 8px 12px #1E1F2126, 0px
58
58
  var emojiPickerHeight = 295;
59
59
  var emojiPickerHeightWithPreview = 349; // emojiPickerHeight + emojiPickerPreviewHeight;
60
60
  var emojiPickerHeightWithPreviewNew = 310;
61
+ var emojiPickerHeightWithPreviewAndPreviewErrorNew = 335;
61
62
  var emojiPickerHeightDeleteRefresh = 339;
62
63
  var emojiPickerWidth = 350;
63
64
  var emojiPickerMinHeight = 260;
@@ -86,6 +87,11 @@ var withUploadRefreshHeight = {
86
87
  medium: "_4t3i1sa4 _1tke5x59",
87
88
  large: "_4t3i1784 _1tke1pna"
88
89
  };
90
+ var withUploadRefreshAndPreviewErrorHeight = {
91
+ small: "_4t3i6iir _1tkegx0z",
92
+ medium: "_4t3iqxjr _1tke5x59",
93
+ large: "_4t3i189v _1tke1pna"
94
+ };
89
95
  var withDeleteRefreshHeight = {
90
96
  small: "_4t3iqbeb _1tkegx0z",
91
97
  medium: "_4t3i1dsu _1tke5x59",
@@ -171,14 +177,18 @@ var EmojiPickerComponent = function EmojiPickerComponent(_ref) {
171
177
  _useState24 = (0, _slicedToArray2.default)(_useState23, 2),
172
178
  uploadErrorMessage = _useState24[0],
173
179
  setUploadErrorMessage = _useState24[1];
174
- var _useState25 = (0, _react.useState)(),
180
+ var _useState25 = (0, _react.useState)(false),
175
181
  _useState26 = (0, _slicedToArray2.default)(_useState25, 2),
176
- emojiToDelete = _useState26[0],
177
- setEmojiToDelete = _useState26[1];
182
+ hasUploadPreviewError = _useState26[0],
183
+ setHasUploadPreviewError = _useState26[1];
178
184
  var _useState27 = (0, _react.useState)(),
179
185
  _useState28 = (0, _slicedToArray2.default)(_useState27, 2),
180
- toneEmoji = _useState28[0],
181
- setToneEmoji = _useState28[1];
186
+ emojiToDelete = _useState28[0],
187
+ setEmojiToDelete = _useState28[1];
188
+ var _useState29 = (0, _react.useState)(),
189
+ _useState30 = (0, _slicedToArray2.default)(_useState29, 2),
190
+ toneEmoji = _useState30[0],
191
+ setToneEmoji = _useState30[1];
182
192
  var emojiPickerList = (0, _react.useMemo)(function () {
183
193
  return /*#__PURE__*/(0, _react.createRef)();
184
194
  }, []);
@@ -508,6 +518,7 @@ var EmojiPickerComponent = function EmojiPickerComponent(_ref) {
508
518
  }
509
519
  (0, _reactDom.unstable_batchedUpdates)(function () {
510
520
  setUploadErrorMessage(undefined);
521
+ setHasUploadPreviewError(false);
511
522
  setUploading(true);
512
523
  });
513
524
  fireAnalytics((0, _analytics.uploadBeginButton)());
@@ -692,7 +703,7 @@ var EmojiPickerComponent = function EmojiPickerComponent(_ref) {
692
703
  role: "dialog",
693
704
  "aria-label": formatMessage(_i18n.messages.emojiPickerTitle),
694
705
  "aria-modal": true,
695
- className: (0, _runtime.ax)([isRefreshEmojiPickerEnabled() ? "_19itahnd _2rko1mok _1e0c1txw _2lx21bp4 _1bah1yb4 _bfhk1bhr _16qs130s _4t3iuxo9 _1bsb10mj _1ul910mj _c71l1y6z _kqswh2mm" : "_19itahnd _2rkofajl _1e0c1txw _2lx21bp4 _1bah1yb4 _bfhk1bhr _16qs130s _4t3iuxo9 _1bsb10mj _1ul910mj _c71l1y6z _kqswh2mm", !!emojiToDelete && isRefreshEmojiPickerEnabled() ? withDeleteRefreshHeight[size] : uploading && isRefreshEmojiPickerEnabled() ? withUploadRefreshHeight[size] : query && filteredEmojis.length === 0 && isRefreshEmojiPickerEnabled() ? withNoResultsRefreshHeight[size] : showPreview ? withPreviewHeight[size] : withoutPreviewHeight[size], showAiUpload && "_4t3ikbql _c71l8k0t"]),
706
+ className: (0, _runtime.ax)([isRefreshEmojiPickerEnabled() ? "_19itahnd _2rko1mok _1e0c1txw _2lx21bp4 _1bah1yb4 _bfhk1bhr _16qs130s _4t3iuxo9 _1bsb10mj _1ul910mj _c71l1y6z _kqswh2mm" : "_19itahnd _2rkofajl _1e0c1txw _2lx21bp4 _1bah1yb4 _bfhk1bhr _16qs130s _4t3iuxo9 _1bsb10mj _1ul910mj _c71l1y6z _kqswh2mm", !!emojiToDelete && isRefreshEmojiPickerEnabled() ? withDeleteRefreshHeight[size] : uploading && isRefreshEmojiPickerEnabled() ? hasUploadPreviewError ? withUploadRefreshAndPreviewErrorHeight[size] : withUploadRefreshHeight[size] : query && filteredEmojis.length === 0 && isRefreshEmojiPickerEnabled() ? withNoResultsRefreshHeight[size] : showPreview ? withPreviewHeight[size] : withoutPreviewHeight[size], showAiUpload && "_4t3ikbql _c71l8k0t"]),
696
707
  style: {
697
708
  "--_19dn98e": (0, _runtime.ix)("".concat(emojiPickerHeight, "px")),
698
709
  "--_gsvyy7": (0, _runtime.ix)("".concat(emojiPickerWidth, "px"))
@@ -733,6 +744,7 @@ var EmojiPickerComponent = function EmojiPickerComponent(_ref) {
733
744
  uploadEnabled: uploadEnabled,
734
745
  onUploadEmoji: onUploadEmoji,
735
746
  onUploadCancelled: onUploadCancelled,
747
+ onUploadPreviewErrorChange: setHasUploadPreviewError,
736
748
  onDeleteEmoji: onDeleteEmoji,
737
749
  onCloseDelete: onCloseDelete,
738
750
  onFileChooserClicked: onFileChooserClicked,
@@ -87,6 +87,7 @@ var EmojiPickerVirtualListInternal = exports.EmojiPickerVirtualListInternal = /*
87
87
  uploadErrorMessage = props.uploadErrorMessage,
88
88
  onUploadCancelled = props.onUploadCancelled,
89
89
  onUploadEmoji = props.onUploadEmoji,
90
+ onUploadPreviewErrorChange = props.onUploadPreviewErrorChange,
90
91
  onDeleteEmoji = props.onDeleteEmoji,
91
92
  onCloseDelete = props.onCloseDelete,
92
93
  onFileChooserClicked = props.onFileChooserClicked,
@@ -508,6 +509,7 @@ var EmojiPickerVirtualListInternal = exports.EmojiPickerVirtualListInternal = /*
508
509
  emojiToDelete: emojiToDelete,
509
510
  initialUploadName: initialUploadName,
510
511
  uploadErrorMessage: uploadErrorMessage,
512
+ onUploadPreviewErrorChange: onUploadPreviewErrorChange,
511
513
  onUploadCancelled: onUploadCancelled,
512
514
  onUploadEmoji: onUploadEmoji,
513
515
  onCloseDelete: handleOnCloseDelete,
@@ -20,7 +20,7 @@ var createEvent = function createEvent(eventType, action, actionSubject, actionS
20
20
  actionSubjectId: actionSubjectId,
21
21
  attributes: _objectSpread({
22
22
  packageName: "@atlaskit/emoji",
23
- packageVersion: "71.7.6"
23
+ packageVersion: "71.7.8"
24
24
  }, attributes)
25
25
  };
26
26
  };
@@ -260,6 +260,7 @@ export const EmojiActions = props => {
260
260
  onCloseDelete,
261
261
  onDeleteEmoji,
262
262
  onUploadEmoji,
263
+ onUploadPreviewErrorChange,
263
264
  uploadErrorMessage,
264
265
  uploading,
265
266
  onFileChooserClicked,
@@ -310,6 +311,7 @@ export const EmojiActions = props => {
310
311
  onFileChooserClicked: onFileChooserClicked,
311
312
  errorMessage: uploadErrorMessage,
312
313
  initialUploadName: initialUploadName,
314
+ onUploadPreviewErrorChange: onUploadPreviewErrorChange,
313
315
  contentId: props.contentId,
314
316
  fireAnalytics: props.fireAnalytics
315
317
  })) : /*#__PURE__*/React.createElement("div", {
@@ -320,6 +322,7 @@ export const EmojiActions = props => {
320
322
  onFileChooserClicked: onFileChooserClicked,
321
323
  errorMessage: uploadErrorMessage,
322
324
  initialUploadName: initialUploadName,
325
+ onUploadPreviewErrorChange: onUploadPreviewErrorChange,
323
326
  contentId: props.contentId,
324
327
  fireAnalytics: props.fireAnalytics
325
328
  }));
@@ -236,6 +236,7 @@ const EmojiUploadPicker = props => {
236
236
  disableFocusLock = false,
237
237
  contentId,
238
238
  fireAnalytics,
239
+ onUploadPreviewErrorChange,
239
240
  intl
240
241
  } = props;
241
242
  const [uploadStatus, setUploadStatus] = useState(errorMessage ? UploadStatus.Error : UploadStatus.Waiting);
@@ -264,7 +265,8 @@ const EmojiUploadPicker = props => {
264
265
  setName(undefined);
265
266
  setPreviewImage(undefined);
266
267
  setUploadStatus(UploadStatus.Waiting);
267
- }, []);
268
+ onUploadPreviewErrorChange === null || onUploadPreviewErrorChange === void 0 ? void 0 : onUploadPreviewErrorChange(false);
269
+ }, [onUploadPreviewErrorChange]);
268
270
  const onNameChange = useCallback(event => {
269
271
  let newName = sanitizeName(event.target.value);
270
272
  if (name !== newName) {
@@ -314,14 +316,16 @@ const EmojiUploadPicker = props => {
314
316
  setFilename('rovo-emoji.png');
315
317
  setPreviewImage(dataURL);
316
318
  setChooseEmojiErrorMessage(undefined);
319
+ onUploadPreviewErrorChange === null || onUploadPreviewErrorChange === void 0 ? void 0 : onUploadPreviewErrorChange(false);
317
320
  // Only auto-populate the name if the user hasn't already typed one.
318
321
  setName(current => current || sanitizeName(suggestedName));
319
- }, []);
322
+ }, [onUploadPreviewErrorChange]);
320
323
  const errorOnUpload = useCallback(event => {
321
324
  debug('File load error: ', event);
322
325
  setChooseEmojiErrorMessage( /*#__PURE__*/React.createElement(FormattedMessage, messages.emojiUploadFailed));
326
+ onUploadPreviewErrorChange === null || onUploadPreviewErrorChange === void 0 ? void 0 : onUploadPreviewErrorChange(false);
323
327
  cancelChooseFile();
324
- }, [cancelChooseFile]);
328
+ }, [cancelChooseFile, onUploadPreviewErrorChange]);
325
329
  const onFileLoad = useCallback(file => async f => {
326
330
  try {
327
331
  setFilename(file.name);
@@ -331,11 +335,13 @@ const EmojiUploadPicker = props => {
331
335
  await ImageUtil.parseImage(f.target.result);
332
336
  setPreviewImage(f.target.result);
333
337
  setChooseEmojiErrorMessage(undefined);
338
+ onUploadPreviewErrorChange === null || onUploadPreviewErrorChange === void 0 ? void 0 : onUploadPreviewErrorChange(false);
334
339
  } catch {
335
340
  setChooseEmojiErrorMessage( /*#__PURE__*/React.createElement(FormattedMessage, messages.emojiInvalidImage));
341
+ onUploadPreviewErrorChange === null || onUploadPreviewErrorChange === void 0 ? void 0 : onUploadPreviewErrorChange(false);
336
342
  cancelChooseFile();
337
343
  }
338
- }, [cancelChooseFile, name]);
344
+ }, [cancelChooseFile, name, onUploadPreviewErrorChange]);
339
345
  const onChooseFile = useCallback(event => {
340
346
  const files = event.target.files;
341
347
  if (files.length) {
@@ -343,11 +349,13 @@ const EmojiUploadPicker = props => {
343
349
  const file = files[0];
344
350
  if (!isSupportedEmojiUploadFileType(file)) {
345
351
  setChooseEmojiErrorMessage( /*#__PURE__*/React.createElement(FormattedMessage, messages.emojiUnsupportedFileType));
352
+ onUploadPreviewErrorChange === null || onUploadPreviewErrorChange === void 0 ? void 0 : onUploadPreviewErrorChange(true);
346
353
  cancelChooseFile();
347
354
  return;
348
355
  }
349
356
  if (ImageUtil.hasFileExceededSize(file)) {
350
357
  setChooseEmojiErrorMessage( /*#__PURE__*/React.createElement(FormattedMessage, messages.emojiImageTooBig));
358
+ onUploadPreviewErrorChange === null || onUploadPreviewErrorChange === void 0 ? void 0 : onUploadPreviewErrorChange(false);
351
359
  cancelChooseFile();
352
360
  return;
353
361
  }
@@ -356,9 +364,10 @@ const EmojiUploadPicker = props => {
356
364
  reader.addEventListener('error', errorOnUpload);
357
365
  reader.readAsDataURL(file);
358
366
  } else {
367
+ onUploadPreviewErrorChange === null || onUploadPreviewErrorChange === void 0 ? void 0 : onUploadPreviewErrorChange(false);
359
368
  cancelChooseFile();
360
369
  }
361
- }, [cancelChooseFile, errorOnUpload, onFileLoad]);
370
+ }, [cancelChooseFile, errorOnUpload, onFileLoad, onUploadPreviewErrorChange]);
362
371
  const cancelUpload = useCallback(event => {
363
372
  if (fg('platform_emoji_keep_picker_open_on_upload') || isRefreshEmojiPickerEnabled()) {
364
373
  event === null || event === void 0 ? void 0 : event.preventDefault();
@@ -366,6 +375,7 @@ const EmojiUploadPicker = props => {
366
375
  }
367
376
  clearUploadPicker();
368
377
  onUploadCancelled();
378
+ onUploadPreviewErrorChange === null || onUploadPreviewErrorChange === void 0 ? void 0 : onUploadPreviewErrorChange(false);
369
379
 
370
380
  // using setTimeout here to allow the UI to update before setting focus
371
381
  setTimeout(lastFocus => {
@@ -374,7 +384,7 @@ const EmojiUploadPicker = props => {
374
384
  (_getDocument = getDocument()) === null || _getDocument === void 0 ? void 0 : (_getDocument$getEleme = _getDocument.getElementById(lastFocus)) === null || _getDocument$getEleme === void 0 ? void 0 : _getDocument$getEleme.focus();
375
385
  }
376
386
  }, 0, lastFocusedElementId.current);
377
- }, [clearUploadPicker, onUploadCancelled]);
387
+ }, [clearUploadPicker, onUploadCancelled, onUploadPreviewErrorChange]);
378
388
  const onChooseFileClicked = () => {
379
389
  onFileChooserClicked && onFileChooserClicked();
380
390
  };
@@ -17,6 +17,7 @@
17
17
  ._1ul91edt{min-width:350px}
18
18
  ._2lx21bp4{flex-direction:column}
19
19
  ._4t3i1784{height:470px}
20
+ ._4t3i189v{height:495px}
20
21
  ._4t3i19lm{height:514px}
21
22
  ._4t3i1ckg{height:455px}
22
23
  ._4t3i1dsu{height:419px}
@@ -24,12 +25,14 @@
24
25
  ._4t3i1sa4{height:390px}
25
26
  ._4t3i2300{height:429px}
26
27
  ._4t3i50k7{height:499px}
28
+ ._4t3i6iir{height:335px}
27
29
  ._4t3iaq3k{height:295px}
28
30
  ._4t3ibqjm{height:310px}
29
31
  ._4t3iihnn{height:434px}
30
32
  ._4t3iixjv{height:375px}
31
33
  ._4t3ikbql{height:450px}
32
34
  ._4t3iqbeb{height:339px}
35
+ ._4t3iqxjr{height:415px}
33
36
  ._4t3ivixp{height:349px}
34
37
  ._4t3ixt2k{height:509px}
35
38
  ._bfhk1bhr{background-color:var(--ds-surface-overlay,#fff)}
@@ -42,6 +42,7 @@ const emojiPickerBoxShadow = "var(--ds-shadow-overlay, 0px 8px 12px #1E1F2126, 0
42
42
  const emojiPickerHeight = 295;
43
43
  const emojiPickerHeightWithPreview = 349; // emojiPickerHeight + emojiPickerPreviewHeight;
44
44
  const emojiPickerHeightWithPreviewNew = 310;
45
+ const emojiPickerHeightWithPreviewAndPreviewErrorNew = 335;
45
46
  const emojiPickerHeightDeleteRefresh = 339;
46
47
  const emojiPickerWidth = 350;
47
48
  const emojiPickerMinHeight = 260;
@@ -70,6 +71,11 @@ const withUploadRefreshHeight = {
70
71
  medium: "_4t3i1sa4 _1tke5x59",
71
72
  large: "_4t3i1784 _1tke1pna"
72
73
  };
74
+ const withUploadRefreshAndPreviewErrorHeight = {
75
+ small: "_4t3i6iir _1tkegx0z",
76
+ medium: "_4t3iqxjr _1tke5x59",
77
+ large: "_4t3i189v _1tke1pna"
78
+ };
73
79
  const withDeleteRefreshHeight = {
74
80
  small: "_4t3iqbeb _1tkegx0z",
75
81
  medium: "_4t3i1dsu _1tke5x59",
@@ -116,6 +122,7 @@ const EmojiPickerComponent = ({
116
122
  const [activeCategory, setActiveCategory] = useState(null);
117
123
  const [disableCategories, setDisableCategories] = useState(false);
118
124
  const [uploadErrorMessage, setUploadErrorMessage] = useState();
125
+ const [hasUploadPreviewError, setHasUploadPreviewError] = useState(false);
119
126
  const [emojiToDelete, setEmojiToDelete] = useState();
120
127
  const [toneEmoji, setToneEmoji] = useState();
121
128
  const emojiPickerList = useMemo(() => /*#__PURE__*/createRef(), []);
@@ -437,6 +444,7 @@ const EmojiPickerComponent = ({
437
444
  }
438
445
  batchedUpdates(() => {
439
446
  setUploadErrorMessage(undefined);
447
+ setHasUploadPreviewError(false);
440
448
  setUploading(true);
441
449
  });
442
450
  fireAnalytics(uploadBeginButton());
@@ -597,7 +605,7 @@ const EmojiPickerComponent = ({
597
605
  role: "dialog",
598
606
  "aria-label": formatMessage(messages.emojiPickerTitle),
599
607
  "aria-modal": true,
600
- className: ax([isRefreshEmojiPickerEnabled() ? "_19itahnd _2rko1mok _1e0c1txw _2lx21bp4 _1bah1yb4 _bfhk1bhr _16qs130s _4t3iaq3k _1bsb1edt _1ul91edt _c71l1y6z _kqswh2mm" : "_19itahnd _2rkofajl _1e0c1txw _2lx21bp4 _1bah1yb4 _bfhk1bhr _16qs130s _4t3iaq3k _1bsb1edt _1ul91edt _c71l1y6z _kqswh2mm", !!emojiToDelete && isRefreshEmojiPickerEnabled() ? withDeleteRefreshHeight[size] : uploading && isRefreshEmojiPickerEnabled() ? withUploadRefreshHeight[size] : query && filteredEmojis.length === 0 && isRefreshEmojiPickerEnabled() ? withNoResultsRefreshHeight[size] : showPreview ? withPreviewHeight[size] : withoutPreviewHeight[size], showAiUpload && "_4t3ikbql _c71l8k0t"])
608
+ className: ax([isRefreshEmojiPickerEnabled() ? "_19itahnd _2rko1mok _1e0c1txw _2lx21bp4 _1bah1yb4 _bfhk1bhr _16qs130s _4t3iaq3k _1bsb1edt _1ul91edt _c71l1y6z _kqswh2mm" : "_19itahnd _2rkofajl _1e0c1txw _2lx21bp4 _1bah1yb4 _bfhk1bhr _16qs130s _4t3iaq3k _1bsb1edt _1ul91edt _c71l1y6z _kqswh2mm", !!emojiToDelete && isRefreshEmojiPickerEnabled() ? withDeleteRefreshHeight[size] : uploading && isRefreshEmojiPickerEnabled() ? hasUploadPreviewError ? withUploadRefreshAndPreviewErrorHeight[size] : withUploadRefreshHeight[size] : query && filteredEmojis.length === 0 && isRefreshEmojiPickerEnabled() ? withNoResultsRefreshHeight[size] : showPreview ? withPreviewHeight[size] : withoutPreviewHeight[size], showAiUpload && "_4t3ikbql _c71l8k0t"])
601
609
  }, /*#__PURE__*/React.createElement("div", {
602
610
  role: "presentation",
603
611
  onKeyPress: suppressKeyPress,
@@ -634,6 +642,7 @@ const EmojiPickerComponent = ({
634
642
  uploadEnabled: uploadEnabled,
635
643
  onUploadEmoji: onUploadEmoji,
636
644
  onUploadCancelled: onUploadCancelled,
645
+ onUploadPreviewErrorChange: setHasUploadPreviewError,
637
646
  onDeleteEmoji: onDeleteEmoji,
638
647
  onCloseDelete: onCloseDelete,
639
648
  onFileChooserClicked: onFileChooserClicked,
@@ -70,6 +70,7 @@ export const EmojiPickerVirtualListInternal = /*#__PURE__*/React.forwardRef((pro
70
70
  uploadErrorMessage,
71
71
  onUploadCancelled,
72
72
  onUploadEmoji,
73
+ onUploadPreviewErrorChange,
73
74
  onDeleteEmoji,
74
75
  onCloseDelete,
75
76
  onFileChooserClicked,
@@ -463,6 +464,7 @@ export const EmojiPickerVirtualListInternal = /*#__PURE__*/React.forwardRef((pro
463
464
  emojiToDelete: emojiToDelete,
464
465
  initialUploadName: initialUploadName,
465
466
  uploadErrorMessage: uploadErrorMessage,
467
+ onUploadPreviewErrorChange: onUploadPreviewErrorChange,
466
468
  onUploadCancelled: onUploadCancelled,
467
469
  onUploadEmoji: onUploadEmoji,
468
470
  onCloseDelete: handleOnCloseDelete,
@@ -9,7 +9,7 @@ const createEvent = (eventType, action, actionSubject, actionSubjectId, attribut
9
9
  actionSubjectId,
10
10
  attributes: {
11
11
  packageName: "@atlaskit/emoji",
12
- packageVersion: "71.7.6",
12
+ packageVersion: "71.7.8",
13
13
  ...attributes
14
14
  }
15
15
  });
@@ -260,6 +260,7 @@ export var EmojiActions = function EmojiActions(props) {
260
260
  onCloseDelete = props.onCloseDelete,
261
261
  onDeleteEmoji = props.onDeleteEmoji,
262
262
  onUploadEmoji = props.onUploadEmoji,
263
+ onUploadPreviewErrorChange = props.onUploadPreviewErrorChange,
263
264
  uploadErrorMessage = props.uploadErrorMessage,
264
265
  uploading = props.uploading,
265
266
  onFileChooserClicked = props.onFileChooserClicked,
@@ -319,6 +320,7 @@ export var EmojiActions = function EmojiActions(props) {
319
320
  onFileChooserClicked: onFileChooserClicked,
320
321
  errorMessage: uploadErrorMessage,
321
322
  initialUploadName: initialUploadName,
323
+ onUploadPreviewErrorChange: onUploadPreviewErrorChange,
322
324
  contentId: props.contentId,
323
325
  fireAnalytics: props.fireAnalytics
324
326
  })) : /*#__PURE__*/React.createElement("div", {
@@ -329,6 +331,7 @@ export var EmojiActions = function EmojiActions(props) {
329
331
  onFileChooserClicked: onFileChooserClicked,
330
332
  errorMessage: uploadErrorMessage,
331
333
  initialUploadName: initialUploadName,
334
+ onUploadPreviewErrorChange: onUploadPreviewErrorChange,
332
335
  contentId: props.contentId,
333
336
  fireAnalytics: props.fireAnalytics
334
337
  }));
@@ -242,6 +242,7 @@ var EmojiUploadPicker = function EmojiUploadPicker(props) {
242
242
  disableFocusLock = _props$disableFocusLo === void 0 ? false : _props$disableFocusLo,
243
243
  contentId = props.contentId,
244
244
  fireAnalytics = props.fireAnalytics,
245
+ onUploadPreviewErrorChange = props.onUploadPreviewErrorChange,
245
246
  intl = props.intl;
246
247
  var _useState = useState(errorMessage ? UploadStatus.Error : UploadStatus.Waiting),
247
248
  _useState2 = _slicedToArray(_useState, 2),
@@ -284,7 +285,8 @@ var EmojiUploadPicker = function EmojiUploadPicker(props) {
284
285
  setName(undefined);
285
286
  setPreviewImage(undefined);
286
287
  setUploadStatus(UploadStatus.Waiting);
287
- }, []);
288
+ onUploadPreviewErrorChange === null || onUploadPreviewErrorChange === void 0 || onUploadPreviewErrorChange(false);
289
+ }, [onUploadPreviewErrorChange]);
288
290
  var onNameChange = useCallback(function (event) {
289
291
  var newName = sanitizeName(event.target.value);
290
292
  if (name !== newName) {
@@ -332,16 +334,18 @@ var EmojiUploadPicker = function EmojiUploadPicker(props) {
332
334
  setFilename('rovo-emoji.png');
333
335
  setPreviewImage(dataURL);
334
336
  setChooseEmojiErrorMessage(undefined);
337
+ onUploadPreviewErrorChange === null || onUploadPreviewErrorChange === void 0 || onUploadPreviewErrorChange(false);
335
338
  // Only auto-populate the name if the user hasn't already typed one.
336
339
  setName(function (current) {
337
340
  return current || sanitizeName(suggestedName);
338
341
  });
339
- }, []);
342
+ }, [onUploadPreviewErrorChange]);
340
343
  var errorOnUpload = useCallback(function (event) {
341
344
  debug('File load error: ', event);
342
345
  setChooseEmojiErrorMessage( /*#__PURE__*/React.createElement(FormattedMessage, messages.emojiUploadFailed));
346
+ onUploadPreviewErrorChange === null || onUploadPreviewErrorChange === void 0 || onUploadPreviewErrorChange(false);
343
347
  cancelChooseFile();
344
- }, [cancelChooseFile]);
348
+ }, [cancelChooseFile, onUploadPreviewErrorChange]);
345
349
  var onFileLoad = useCallback(function (file) {
346
350
  return /*#__PURE__*/function () {
347
351
  var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(f) {
@@ -359,12 +363,14 @@ var EmojiUploadPicker = function EmojiUploadPicker(props) {
359
363
  case 1:
360
364
  setPreviewImage(f.target.result);
361
365
  setChooseEmojiErrorMessage(undefined);
366
+ onUploadPreviewErrorChange === null || onUploadPreviewErrorChange === void 0 || onUploadPreviewErrorChange(false);
362
367
  _context.next = 3;
363
368
  break;
364
369
  case 2:
365
370
  _context.prev = 2;
366
371
  _t = _context["catch"](0);
367
372
  setChooseEmojiErrorMessage( /*#__PURE__*/React.createElement(FormattedMessage, messages.emojiInvalidImage));
373
+ onUploadPreviewErrorChange === null || onUploadPreviewErrorChange === void 0 || onUploadPreviewErrorChange(false);
368
374
  cancelChooseFile();
369
375
  case 3:
370
376
  case "end":
@@ -376,7 +382,7 @@ var EmojiUploadPicker = function EmojiUploadPicker(props) {
376
382
  return _ref.apply(this, arguments);
377
383
  };
378
384
  }();
379
- }, [cancelChooseFile, name]);
385
+ }, [cancelChooseFile, name, onUploadPreviewErrorChange]);
380
386
  var onChooseFile = useCallback(function (event) {
381
387
  var files = event.target.files;
382
388
  if (files.length) {
@@ -384,11 +390,13 @@ var EmojiUploadPicker = function EmojiUploadPicker(props) {
384
390
  var file = files[0];
385
391
  if (!isSupportedEmojiUploadFileType(file)) {
386
392
  setChooseEmojiErrorMessage( /*#__PURE__*/React.createElement(FormattedMessage, messages.emojiUnsupportedFileType));
393
+ onUploadPreviewErrorChange === null || onUploadPreviewErrorChange === void 0 || onUploadPreviewErrorChange(true);
387
394
  cancelChooseFile();
388
395
  return;
389
396
  }
390
397
  if (ImageUtil.hasFileExceededSize(file)) {
391
398
  setChooseEmojiErrorMessage( /*#__PURE__*/React.createElement(FormattedMessage, messages.emojiImageTooBig));
399
+ onUploadPreviewErrorChange === null || onUploadPreviewErrorChange === void 0 || onUploadPreviewErrorChange(false);
392
400
  cancelChooseFile();
393
401
  return;
394
402
  }
@@ -397,9 +405,10 @@ var EmojiUploadPicker = function EmojiUploadPicker(props) {
397
405
  reader.addEventListener('error', errorOnUpload);
398
406
  reader.readAsDataURL(file);
399
407
  } else {
408
+ onUploadPreviewErrorChange === null || onUploadPreviewErrorChange === void 0 || onUploadPreviewErrorChange(false);
400
409
  cancelChooseFile();
401
410
  }
402
- }, [cancelChooseFile, errorOnUpload, onFileLoad]);
411
+ }, [cancelChooseFile, errorOnUpload, onFileLoad, onUploadPreviewErrorChange]);
403
412
  var cancelUpload = useCallback(function (event) {
404
413
  if (fg('platform_emoji_keep_picker_open_on_upload') || isRefreshEmojiPickerEnabled()) {
405
414
  event === null || event === void 0 || event.preventDefault();
@@ -407,6 +416,7 @@ var EmojiUploadPicker = function EmojiUploadPicker(props) {
407
416
  }
408
417
  clearUploadPicker();
409
418
  onUploadCancelled();
419
+ onUploadPreviewErrorChange === null || onUploadPreviewErrorChange === void 0 || onUploadPreviewErrorChange(false);
410
420
 
411
421
  // using setTimeout here to allow the UI to update before setting focus
412
422
  setTimeout(function (lastFocus) {
@@ -415,7 +425,7 @@ var EmojiUploadPicker = function EmojiUploadPicker(props) {
415
425
  (_getDocument = getDocument()) === null || _getDocument === void 0 || (_getDocument = _getDocument.getElementById(lastFocus)) === null || _getDocument === void 0 || _getDocument.focus();
416
426
  }
417
427
  }, 0, lastFocusedElementId.current);
418
- }, [clearUploadPicker, onUploadCancelled]);
428
+ }, [clearUploadPicker, onUploadCancelled, onUploadPreviewErrorChange]);
419
429
  var onChooseFileClicked = function onChooseFileClicked() {
420
430
  onFileChooserClicked && onFileChooserClicked();
421
431
  };
@@ -17,6 +17,7 @@
17
17
  ._1ul910mj{min-width:var(--_gsvyy7)}
18
18
  ._2lx21bp4{flex-direction:column}
19
19
  ._4t3i1784{height:470px}
20
+ ._4t3i189v{height:495px}
20
21
  ._4t3i19lm{height:514px}
21
22
  ._4t3i1ckg{height:455px}
22
23
  ._4t3i1dsu{height:419px}
@@ -24,12 +25,14 @@
24
25
  ._4t3i1sa4{height:390px}
25
26
  ._4t3i2300{height:429px}
26
27
  ._4t3i50k7{height:499px}
28
+ ._4t3i6iir{height:335px}
27
29
  ._4t3iaq3k{height:295px}
28
30
  ._4t3ibqjm{height:310px}
29
31
  ._4t3iihnn{height:434px}
30
32
  ._4t3iixjv{height:375px}
31
33
  ._4t3ikbql{height:450px}
32
34
  ._4t3iqbeb{height:339px}
35
+ ._4t3iqxjr{height:415px}
33
36
  ._4t3iuxo9{height:var(--_19dn98e)}
34
37
  ._4t3ivixp{height:349px}
35
38
  ._4t3ixt2k{height:509px}
@@ -49,6 +49,7 @@ var emojiPickerBoxShadow = "var(--ds-shadow-overlay, 0px 8px 12px #1E1F2126, 0px
49
49
  var emojiPickerHeight = 295;
50
50
  var emojiPickerHeightWithPreview = 349; // emojiPickerHeight + emojiPickerPreviewHeight;
51
51
  var emojiPickerHeightWithPreviewNew = 310;
52
+ var emojiPickerHeightWithPreviewAndPreviewErrorNew = 335;
52
53
  var emojiPickerHeightDeleteRefresh = 339;
53
54
  var emojiPickerWidth = 350;
54
55
  var emojiPickerMinHeight = 260;
@@ -77,6 +78,11 @@ var withUploadRefreshHeight = {
77
78
  medium: "_4t3i1sa4 _1tke5x59",
78
79
  large: "_4t3i1784 _1tke1pna"
79
80
  };
81
+ var withUploadRefreshAndPreviewErrorHeight = {
82
+ small: "_4t3i6iir _1tkegx0z",
83
+ medium: "_4t3iqxjr _1tke5x59",
84
+ large: "_4t3i189v _1tke1pna"
85
+ };
80
86
  var withDeleteRefreshHeight = {
81
87
  small: "_4t3iqbeb _1tkegx0z",
82
88
  medium: "_4t3i1dsu _1tke5x59",
@@ -162,14 +168,18 @@ var EmojiPickerComponent = function EmojiPickerComponent(_ref) {
162
168
  _useState24 = _slicedToArray(_useState23, 2),
163
169
  uploadErrorMessage = _useState24[0],
164
170
  setUploadErrorMessage = _useState24[1];
165
- var _useState25 = useState(),
171
+ var _useState25 = useState(false),
166
172
  _useState26 = _slicedToArray(_useState25, 2),
167
- emojiToDelete = _useState26[0],
168
- setEmojiToDelete = _useState26[1];
173
+ hasUploadPreviewError = _useState26[0],
174
+ setHasUploadPreviewError = _useState26[1];
169
175
  var _useState27 = useState(),
170
176
  _useState28 = _slicedToArray(_useState27, 2),
171
- toneEmoji = _useState28[0],
172
- setToneEmoji = _useState28[1];
177
+ emojiToDelete = _useState28[0],
178
+ setEmojiToDelete = _useState28[1];
179
+ var _useState29 = useState(),
180
+ _useState30 = _slicedToArray(_useState29, 2),
181
+ toneEmoji = _useState30[0],
182
+ setToneEmoji = _useState30[1];
173
183
  var emojiPickerList = useMemo(function () {
174
184
  return /*#__PURE__*/createRef();
175
185
  }, []);
@@ -499,6 +509,7 @@ var EmojiPickerComponent = function EmojiPickerComponent(_ref) {
499
509
  }
500
510
  batchedUpdates(function () {
501
511
  setUploadErrorMessage(undefined);
512
+ setHasUploadPreviewError(false);
502
513
  setUploading(true);
503
514
  });
504
515
  fireAnalytics(uploadBeginButton());
@@ -683,7 +694,7 @@ var EmojiPickerComponent = function EmojiPickerComponent(_ref) {
683
694
  role: "dialog",
684
695
  "aria-label": formatMessage(messages.emojiPickerTitle),
685
696
  "aria-modal": true,
686
- className: ax([isRefreshEmojiPickerEnabled() ? "_19itahnd _2rko1mok _1e0c1txw _2lx21bp4 _1bah1yb4 _bfhk1bhr _16qs130s _4t3iuxo9 _1bsb10mj _1ul910mj _c71l1y6z _kqswh2mm" : "_19itahnd _2rkofajl _1e0c1txw _2lx21bp4 _1bah1yb4 _bfhk1bhr _16qs130s _4t3iuxo9 _1bsb10mj _1ul910mj _c71l1y6z _kqswh2mm", !!emojiToDelete && isRefreshEmojiPickerEnabled() ? withDeleteRefreshHeight[size] : uploading && isRefreshEmojiPickerEnabled() ? withUploadRefreshHeight[size] : query && filteredEmojis.length === 0 && isRefreshEmojiPickerEnabled() ? withNoResultsRefreshHeight[size] : showPreview ? withPreviewHeight[size] : withoutPreviewHeight[size], showAiUpload && "_4t3ikbql _c71l8k0t"]),
697
+ className: ax([isRefreshEmojiPickerEnabled() ? "_19itahnd _2rko1mok _1e0c1txw _2lx21bp4 _1bah1yb4 _bfhk1bhr _16qs130s _4t3iuxo9 _1bsb10mj _1ul910mj _c71l1y6z _kqswh2mm" : "_19itahnd _2rkofajl _1e0c1txw _2lx21bp4 _1bah1yb4 _bfhk1bhr _16qs130s _4t3iuxo9 _1bsb10mj _1ul910mj _c71l1y6z _kqswh2mm", !!emojiToDelete && isRefreshEmojiPickerEnabled() ? withDeleteRefreshHeight[size] : uploading && isRefreshEmojiPickerEnabled() ? hasUploadPreviewError ? withUploadRefreshAndPreviewErrorHeight[size] : withUploadRefreshHeight[size] : query && filteredEmojis.length === 0 && isRefreshEmojiPickerEnabled() ? withNoResultsRefreshHeight[size] : showPreview ? withPreviewHeight[size] : withoutPreviewHeight[size], showAiUpload && "_4t3ikbql _c71l8k0t"]),
687
698
  style: {
688
699
  "--_19dn98e": ix("".concat(emojiPickerHeight, "px")),
689
700
  "--_gsvyy7": ix("".concat(emojiPickerWidth, "px"))
@@ -724,6 +735,7 @@ var EmojiPickerComponent = function EmojiPickerComponent(_ref) {
724
735
  uploadEnabled: uploadEnabled,
725
736
  onUploadEmoji: onUploadEmoji,
726
737
  onUploadCancelled: onUploadCancelled,
738
+ onUploadPreviewErrorChange: setHasUploadPreviewError,
727
739
  onDeleteEmoji: onDeleteEmoji,
728
740
  onCloseDelete: onCloseDelete,
729
741
  onFileChooserClicked: onFileChooserClicked,
@@ -79,6 +79,7 @@ export var EmojiPickerVirtualListInternal = /*#__PURE__*/React.forwardRef(functi
79
79
  uploadErrorMessage = props.uploadErrorMessage,
80
80
  onUploadCancelled = props.onUploadCancelled,
81
81
  onUploadEmoji = props.onUploadEmoji,
82
+ onUploadPreviewErrorChange = props.onUploadPreviewErrorChange,
82
83
  onDeleteEmoji = props.onDeleteEmoji,
83
84
  onCloseDelete = props.onCloseDelete,
84
85
  onFileChooserClicked = props.onFileChooserClicked,
@@ -500,6 +501,7 @@ export var EmojiPickerVirtualListInternal = /*#__PURE__*/React.forwardRef(functi
500
501
  emojiToDelete: emojiToDelete,
501
502
  initialUploadName: initialUploadName,
502
503
  uploadErrorMessage: uploadErrorMessage,
504
+ onUploadPreviewErrorChange: onUploadPreviewErrorChange,
503
505
  onUploadCancelled: onUploadCancelled,
504
506
  onUploadEmoji: onUploadEmoji,
505
507
  onCloseDelete: handleOnCloseDelete,
@@ -14,7 +14,7 @@ var createEvent = function createEvent(eventType, action, actionSubject, actionS
14
14
  actionSubjectId: actionSubjectId,
15
15
  attributes: _objectSpread({
16
16
  packageName: "@atlaskit/emoji",
17
- packageVersion: "71.7.6"
17
+ packageVersion: "71.7.8"
18
18
  }, attributes)
19
19
  };
20
20
  };
@@ -35,6 +35,7 @@ export interface Props {
35
35
  onToneSelectorCancelled?: OnToneSelectorCancelled;
36
36
  onUploadCancelled: () => void;
37
37
  onUploadEmoji: OnUploadEmoji;
38
+ onUploadPreviewErrorChange?: (hasPreviewError: boolean) => void;
38
39
  productivityColorPreviewEmojis?: Partial<Record<ProductivityColor, EmojiDescription>>;
39
40
  query?: string;
40
41
  resultsCount?: number;
@@ -19,6 +19,7 @@ export interface Props {
19
19
  onFileChooserClicked?: () => void;
20
20
  onUploadCancelled: () => void;
21
21
  onUploadEmoji: OnUploadEmoji;
22
+ onUploadPreviewErrorChange?: (hasPreviewError: boolean) => void;
22
23
  /**
23
24
  * Current Confluence page content id. When provided (and the
24
25
  * `confluence_ai_generated_emojis` experiment is on), the "Create an emoji
@@ -38,6 +38,7 @@ export interface Props {
38
38
  onToneSelectorCancelled?: OnToneSelectorCancelled;
39
39
  onUploadCancelled: () => void;
40
40
  onUploadEmoji: OnUploadEmoji;
41
+ onUploadPreviewErrorChange?: (hasPreviewError: boolean) => void;
41
42
  query?: string;
42
43
  selectedProductivityColor?: ProductivityColor;
43
44
  selectedTone?: ToneSelection;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/emoji",
3
- "version": "71.7.7",
3
+ "version": "71.7.9",
4
4
  "description": "Fabric emoji React components",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/"
@@ -50,7 +50,7 @@
50
50
  "@atlaskit/spinner": "^20.1.0",
51
51
  "@atlaskit/textfield": "^9.1.0",
52
52
  "@atlaskit/theme": "^26.1.0",
53
- "@atlaskit/tmp-editor-statsig": "^122.0.0",
53
+ "@atlaskit/tmp-editor-statsig": "^124.0.0",
54
54
  "@atlaskit/tokens": "^15.5.0",
55
55
  "@atlaskit/tooltip": "^23.1.0",
56
56
  "@atlaskit/ufo": "^1.0.0",