emoji-picker-react 4.1.1 → 4.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -236,238 +236,6 @@ var Categories;
236
236
  Categories["FLAGS"] = "flags";
237
237
  })(Categories || (Categories = {}));
238
238
 
239
- var _configByCategory;
240
- var categoriesOrdered = [Categories.SUGGESTED, Categories.SMILEYS_PEOPLE, Categories.ANIMALS_NATURE, Categories.FOOD_DRINK, Categories.TRAVEL_PLACES, Categories.ACTIVITIES, Categories.OBJECTS, Categories.SYMBOLS, Categories.FLAGS];
241
- var SuggestedRecent = {
242
- name: 'Recently Used',
243
- category: Categories.SUGGESTED
244
- };
245
- var configByCategory = (_configByCategory = {}, _configByCategory[Categories.SUGGESTED] = {
246
- category: Categories.SUGGESTED,
247
- name: 'Frequently Used'
248
- }, _configByCategory[Categories.SMILEYS_PEOPLE] = {
249
- category: Categories.SMILEYS_PEOPLE,
250
- name: 'Smileys & People'
251
- }, _configByCategory[Categories.ANIMALS_NATURE] = {
252
- category: Categories.ANIMALS_NATURE,
253
- name: 'Animals & Nature'
254
- }, _configByCategory[Categories.FOOD_DRINK] = {
255
- category: Categories.FOOD_DRINK,
256
- name: 'Food & Drink'
257
- }, _configByCategory[Categories.TRAVEL_PLACES] = {
258
- category: Categories.TRAVEL_PLACES,
259
- name: 'Travel & Places'
260
- }, _configByCategory[Categories.ACTIVITIES] = {
261
- category: Categories.ACTIVITIES,
262
- name: 'Activities'
263
- }, _configByCategory[Categories.OBJECTS] = {
264
- category: Categories.OBJECTS,
265
- name: 'Objects'
266
- }, _configByCategory[Categories.SYMBOLS] = {
267
- category: Categories.SYMBOLS,
268
- name: 'Symbols'
269
- }, _configByCategory[Categories.FLAGS] = {
270
- category: Categories.FLAGS,
271
- name: 'Flags'
272
- }, _configByCategory);
273
- function baseCategoriesConfig(modifiers) {
274
- return categoriesOrdered.map(function (category) {
275
- return _extends({}, configByCategory[category], modifiers && modifiers[category] && modifiers[category]);
276
- });
277
- }
278
- function categoryFromCategoryConfig(category) {
279
- return category.category;
280
- }
281
- function categoryNameFromCategoryConfig(category) {
282
- return category.name;
283
- }
284
- function mergeCategoriesConfig(userCategoriesConfig, modifiers) {
285
- var _userCategoriesConfig;
286
-
287
- if (userCategoriesConfig === void 0) {
288
- userCategoriesConfig = [];
289
- }
290
-
291
- if (modifiers === void 0) {
292
- modifiers = {};
293
- }
294
-
295
- var extra = {};
296
-
297
- if (modifiers.suggestionMode === SuggestionMode.RECENT) {
298
- extra[Categories.SUGGESTED] = SuggestedRecent;
299
- }
300
-
301
- var base = baseCategoriesConfig(extra);
302
-
303
- if (!((_userCategoriesConfig = userCategoriesConfig) != null && _userCategoriesConfig.length)) {
304
- return base;
305
- }
306
-
307
- return userCategoriesConfig.map(function (category) {
308
- if (typeof category === 'string') {
309
- return getBaseConfigByCategory(category, extra[category]);
310
- }
311
-
312
- return _extends({}, getBaseConfigByCategory(category.category, extra[category.category]), category);
313
- });
314
- }
315
-
316
- function getBaseConfigByCategory(category, modifier) {
317
- if (modifier === void 0) {
318
- modifier = {};
319
- }
320
-
321
- return Object.assign(configByCategory[category], modifier);
322
- }
323
-
324
- function mergeConfig(userConfig) {
325
- var _userConfig$previewCo;
326
-
327
- if (userConfig === void 0) {
328
- userConfig = {};
329
- }
330
-
331
- var base = basePickerConfig();
332
- var previewConfig = Object.assign(base.previewConfig, (_userConfig$previewCo = userConfig.previewConfig) != null ? _userConfig$previewCo : {});
333
- var config = Object.assign(base, userConfig);
334
- var categories = mergeCategoriesConfig(userConfig.categories, {
335
- suggestionMode: config.suggestedEmojisMode
336
- });
337
- return _extends({}, config, {
338
- categories: categories,
339
- previewConfig: previewConfig
340
- });
341
- }
342
- function basePickerConfig() {
343
- return {
344
- autoFocusSearch: true,
345
- categories: baseCategoriesConfig(),
346
- defaultSkinTone: SkinTones.NEUTRAL,
347
- emojiStyle: EmojiStyle.APPLE,
348
- emojiVersion: null,
349
- height: 450,
350
- lazyLoadEmojis: false,
351
- onEmojiClick: function defaultOnClickHandler( // @ts-ignore
352
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
353
- emoji, // @ts-ignore
354
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
355
- event) {},
356
- previewConfig: _extends({}, basePreviewConfig),
357
- searchPlaceHolder: 'Search',
358
- skinTonesDisabled: false,
359
- suggestedEmojisMode: SuggestionMode.FREQUENT,
360
- theme: Theme.LIGHT,
361
- width: 350
362
- };
363
- }
364
- var basePreviewConfig = {
365
- defaultEmoji: '1f60a',
366
- defaultCaption: "What's your mood?",
367
- showPreview: true
368
- };
369
-
370
- var _excluded = ["children"];
371
- var ConfigContext = /*#__PURE__*/createContext( /*#__PURE__*/basePickerConfig());
372
- function PickerConfigProvider(_ref) {
373
- var children = _ref.children,
374
- config = _objectWithoutPropertiesLoose(_ref, _excluded);
375
-
376
- return createElement(ConfigContext.Provider, {
377
- value: mergeConfig(config)
378
- }, children);
379
- }
380
- function usePickerConfig() {
381
- return useContext(ConfigContext);
382
- }
383
-
384
- function useSearchPlaceHolderConfig() {
385
- var _usePickerConfig = usePickerConfig(),
386
- searchPlaceHolder = _usePickerConfig.searchPlaceHolder;
387
-
388
- return searchPlaceHolder;
389
- }
390
- function useDefaultSkinToneConfig() {
391
- var _usePickerConfig2 = usePickerConfig(),
392
- defaultSkinTone = _usePickerConfig2.defaultSkinTone;
393
-
394
- return defaultSkinTone;
395
- }
396
- function useSkinTonesDisabledConfig() {
397
- var _usePickerConfig3 = usePickerConfig(),
398
- skinTonesDisabled = _usePickerConfig3.skinTonesDisabled;
399
-
400
- return skinTonesDisabled;
401
- }
402
- function useEmojiStyleConfig() {
403
- var _usePickerConfig4 = usePickerConfig(),
404
- emojiStyle = _usePickerConfig4.emojiStyle;
405
-
406
- return emojiStyle;
407
- }
408
- function useAutoFocusSearchConfig() {
409
- var _usePickerConfig5 = usePickerConfig(),
410
- autoFocusSearch = _usePickerConfig5.autoFocusSearch;
411
-
412
- return autoFocusSearch;
413
- }
414
- function useCategoriesConfig() {
415
- var _usePickerConfig6 = usePickerConfig(),
416
- categories = _usePickerConfig6.categories;
417
-
418
- return categories;
419
- }
420
- function useOnEmojiClickConfig() {
421
- var _usePickerConfig7 = usePickerConfig(),
422
- onEmojiClick = _usePickerConfig7.onEmojiClick;
423
-
424
- return onEmojiClick;
425
- }
426
- function usePreviewConfig() {
427
- var _usePickerConfig8 = usePickerConfig(),
428
- previewConfig = _usePickerConfig8.previewConfig;
429
-
430
- return previewConfig;
431
- }
432
- function useThemeConfig() {
433
- var _usePickerConfig9 = usePickerConfig(),
434
- theme = _usePickerConfig9.theme;
435
-
436
- if (theme === Theme.AUTO) {
437
- return isSystemDarkTheme() ? Theme.DARK : Theme.LIGHT;
438
- }
439
-
440
- return theme;
441
- }
442
- function useSuggestedEmojisModeConfig() {
443
- var _usePickerConfig10 = usePickerConfig(),
444
- suggestedEmojisMode = _usePickerConfig10.suggestedEmojisMode;
445
-
446
- return suggestedEmojisMode;
447
- }
448
- function useLazyLoadEmojisConfig() {
449
- var _usePickerConfig11 = usePickerConfig(),
450
- lazyLoadEmojis = _usePickerConfig11.lazyLoadEmojis;
451
-
452
- return lazyLoadEmojis;
453
- }
454
- function usePickerSizeConfig() {
455
- var _usePickerConfig12 = usePickerConfig(),
456
- height = _usePickerConfig12.height,
457
- width = _usePickerConfig12.width;
458
-
459
- return {
460
- height: height,
461
- width: width
462
- };
463
- }
464
- function useEmojiVersionConfig() {
465
- var _usePickerConfig13 = usePickerConfig(),
466
- emojiVersion = _usePickerConfig13.emojiVersion;
467
-
468
- return emojiVersion;
469
- }
470
-
471
239
  var CDN_URL_APPLE = 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/';
472
240
  var CDN_URL_FACEBOOK = 'https://cdn.jsdelivr.net/npm/emoji-datasource-facebook/img/facebook/64/';
473
241
  var CDN_URL_TWITTER = 'https://cdn.jsdelivr.net/npm/emoji-datasource-twitter/img/twitter/64/';
@@ -16870,8 +16638,9 @@ function emojisByCategory(category) {
16870
16638
 
16871
16639
  // @ts-ignore
16872
16640
  return (_emojis$category = emojis == null ? void 0 : emojis[category]) != null ? _emojis$category : [];
16873
- }
16874
- function emojiUrlByUnified(emojiStyle, unified) {
16641
+ } // WARNING: DO NOT USE DIRECTLY
16642
+
16643
+ function emojiUrlByUnified(unified, emojiStyle) {
16875
16644
  return "" + cdnUrl(emojiStyle) + unified + ".png";
16876
16645
  }
16877
16646
  function emojiVariations(emoji) {
@@ -16914,6 +16683,245 @@ function activeVariationFromUnified(unified) {
16914
16683
  return skinToneVariations.includes(suspectedSkinTone) ? suspectedSkinTone : null;
16915
16684
  }
16916
16685
 
16686
+ var _configByCategory;
16687
+ var categoriesOrdered = [Categories.SUGGESTED, Categories.SMILEYS_PEOPLE, Categories.ANIMALS_NATURE, Categories.FOOD_DRINK, Categories.TRAVEL_PLACES, Categories.ACTIVITIES, Categories.OBJECTS, Categories.SYMBOLS, Categories.FLAGS];
16688
+ var SuggestedRecent = {
16689
+ name: 'Recently Used',
16690
+ category: Categories.SUGGESTED
16691
+ };
16692
+ var configByCategory = (_configByCategory = {}, _configByCategory[Categories.SUGGESTED] = {
16693
+ category: Categories.SUGGESTED,
16694
+ name: 'Frequently Used'
16695
+ }, _configByCategory[Categories.SMILEYS_PEOPLE] = {
16696
+ category: Categories.SMILEYS_PEOPLE,
16697
+ name: 'Smileys & People'
16698
+ }, _configByCategory[Categories.ANIMALS_NATURE] = {
16699
+ category: Categories.ANIMALS_NATURE,
16700
+ name: 'Animals & Nature'
16701
+ }, _configByCategory[Categories.FOOD_DRINK] = {
16702
+ category: Categories.FOOD_DRINK,
16703
+ name: 'Food & Drink'
16704
+ }, _configByCategory[Categories.TRAVEL_PLACES] = {
16705
+ category: Categories.TRAVEL_PLACES,
16706
+ name: 'Travel & Places'
16707
+ }, _configByCategory[Categories.ACTIVITIES] = {
16708
+ category: Categories.ACTIVITIES,
16709
+ name: 'Activities'
16710
+ }, _configByCategory[Categories.OBJECTS] = {
16711
+ category: Categories.OBJECTS,
16712
+ name: 'Objects'
16713
+ }, _configByCategory[Categories.SYMBOLS] = {
16714
+ category: Categories.SYMBOLS,
16715
+ name: 'Symbols'
16716
+ }, _configByCategory[Categories.FLAGS] = {
16717
+ category: Categories.FLAGS,
16718
+ name: 'Flags'
16719
+ }, _configByCategory);
16720
+ function baseCategoriesConfig(modifiers) {
16721
+ return categoriesOrdered.map(function (category) {
16722
+ return _extends({}, configByCategory[category], modifiers && modifiers[category] && modifiers[category]);
16723
+ });
16724
+ }
16725
+ function categoryFromCategoryConfig(category) {
16726
+ return category.category;
16727
+ }
16728
+ function categoryNameFromCategoryConfig(category) {
16729
+ return category.name;
16730
+ }
16731
+ function mergeCategoriesConfig(userCategoriesConfig, modifiers) {
16732
+ var _userCategoriesConfig;
16733
+
16734
+ if (userCategoriesConfig === void 0) {
16735
+ userCategoriesConfig = [];
16736
+ }
16737
+
16738
+ if (modifiers === void 0) {
16739
+ modifiers = {};
16740
+ }
16741
+
16742
+ var extra = {};
16743
+
16744
+ if (modifiers.suggestionMode === SuggestionMode.RECENT) {
16745
+ extra[Categories.SUGGESTED] = SuggestedRecent;
16746
+ }
16747
+
16748
+ var base = baseCategoriesConfig(extra);
16749
+
16750
+ if (!((_userCategoriesConfig = userCategoriesConfig) != null && _userCategoriesConfig.length)) {
16751
+ return base;
16752
+ }
16753
+
16754
+ return userCategoriesConfig.map(function (category) {
16755
+ if (typeof category === 'string') {
16756
+ return getBaseConfigByCategory(category, extra[category]);
16757
+ }
16758
+
16759
+ return _extends({}, getBaseConfigByCategory(category.category, extra[category.category]), category);
16760
+ });
16761
+ }
16762
+
16763
+ function getBaseConfigByCategory(category, modifier) {
16764
+ if (modifier === void 0) {
16765
+ modifier = {};
16766
+ }
16767
+
16768
+ return Object.assign(configByCategory[category], modifier);
16769
+ }
16770
+
16771
+ function mergeConfig(userConfig) {
16772
+ var _userConfig$previewCo;
16773
+
16774
+ if (userConfig === void 0) {
16775
+ userConfig = {};
16776
+ }
16777
+
16778
+ var base = basePickerConfig();
16779
+ var previewConfig = Object.assign(base.previewConfig, (_userConfig$previewCo = userConfig.previewConfig) != null ? _userConfig$previewCo : {});
16780
+ var config = Object.assign(base, userConfig);
16781
+ var categories = mergeCategoriesConfig(userConfig.categories, {
16782
+ suggestionMode: config.suggestedEmojisMode
16783
+ });
16784
+ return _extends({}, config, {
16785
+ categories: categories,
16786
+ previewConfig: previewConfig
16787
+ });
16788
+ }
16789
+ function basePickerConfig() {
16790
+ return {
16791
+ autoFocusSearch: true,
16792
+ categories: baseCategoriesConfig(),
16793
+ defaultSkinTone: SkinTones.NEUTRAL,
16794
+ emojiStyle: EmojiStyle.APPLE,
16795
+ emojiVersion: null,
16796
+ getEmojiUrl: emojiUrlByUnified,
16797
+ height: 450,
16798
+ lazyLoadEmojis: false,
16799
+ onEmojiClick: function defaultOnClickHandler( // @ts-ignore
16800
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
16801
+ emoji, // @ts-ignore
16802
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
16803
+ event) {},
16804
+ previewConfig: _extends({}, basePreviewConfig),
16805
+ searchPlaceHolder: 'Search',
16806
+ skinTonesDisabled: false,
16807
+ suggestedEmojisMode: SuggestionMode.FREQUENT,
16808
+ theme: Theme.LIGHT,
16809
+ width: 350
16810
+ };
16811
+ }
16812
+ var basePreviewConfig = {
16813
+ defaultEmoji: '1f60a',
16814
+ defaultCaption: "What's your mood?",
16815
+ showPreview: true
16816
+ };
16817
+
16818
+ var _excluded = ["children"];
16819
+ var ConfigContext = /*#__PURE__*/createContext( /*#__PURE__*/basePickerConfig());
16820
+ function PickerConfigProvider(_ref) {
16821
+ var children = _ref.children,
16822
+ config = _objectWithoutPropertiesLoose(_ref, _excluded);
16823
+
16824
+ return createElement(ConfigContext.Provider, {
16825
+ value: mergeConfig(config)
16826
+ }, children);
16827
+ }
16828
+ function usePickerConfig() {
16829
+ return useContext(ConfigContext);
16830
+ }
16831
+
16832
+ function useSearchPlaceHolderConfig() {
16833
+ var _usePickerConfig = usePickerConfig(),
16834
+ searchPlaceHolder = _usePickerConfig.searchPlaceHolder;
16835
+
16836
+ return searchPlaceHolder;
16837
+ }
16838
+ function useDefaultSkinToneConfig() {
16839
+ var _usePickerConfig2 = usePickerConfig(),
16840
+ defaultSkinTone = _usePickerConfig2.defaultSkinTone;
16841
+
16842
+ return defaultSkinTone;
16843
+ }
16844
+ function useSkinTonesDisabledConfig() {
16845
+ var _usePickerConfig3 = usePickerConfig(),
16846
+ skinTonesDisabled = _usePickerConfig3.skinTonesDisabled;
16847
+
16848
+ return skinTonesDisabled;
16849
+ }
16850
+ function useEmojiStyleConfig() {
16851
+ var _usePickerConfig4 = usePickerConfig(),
16852
+ emojiStyle = _usePickerConfig4.emojiStyle;
16853
+
16854
+ return emojiStyle;
16855
+ }
16856
+ function useAutoFocusSearchConfig() {
16857
+ var _usePickerConfig5 = usePickerConfig(),
16858
+ autoFocusSearch = _usePickerConfig5.autoFocusSearch;
16859
+
16860
+ return autoFocusSearch;
16861
+ }
16862
+ function useCategoriesConfig() {
16863
+ var _usePickerConfig6 = usePickerConfig(),
16864
+ categories = _usePickerConfig6.categories;
16865
+
16866
+ return categories;
16867
+ }
16868
+ function useOnEmojiClickConfig() {
16869
+ var _usePickerConfig7 = usePickerConfig(),
16870
+ onEmojiClick = _usePickerConfig7.onEmojiClick;
16871
+
16872
+ return onEmojiClick;
16873
+ }
16874
+ function usePreviewConfig() {
16875
+ var _usePickerConfig8 = usePickerConfig(),
16876
+ previewConfig = _usePickerConfig8.previewConfig;
16877
+
16878
+ return previewConfig;
16879
+ }
16880
+ function useThemeConfig() {
16881
+ var _usePickerConfig9 = usePickerConfig(),
16882
+ theme = _usePickerConfig9.theme;
16883
+
16884
+ if (theme === Theme.AUTO) {
16885
+ return isSystemDarkTheme() ? Theme.DARK : Theme.LIGHT;
16886
+ }
16887
+
16888
+ return theme;
16889
+ }
16890
+ function useSuggestedEmojisModeConfig() {
16891
+ var _usePickerConfig10 = usePickerConfig(),
16892
+ suggestedEmojisMode = _usePickerConfig10.suggestedEmojisMode;
16893
+
16894
+ return suggestedEmojisMode;
16895
+ }
16896
+ function useLazyLoadEmojisConfig() {
16897
+ var _usePickerConfig11 = usePickerConfig(),
16898
+ lazyLoadEmojis = _usePickerConfig11.lazyLoadEmojis;
16899
+
16900
+ return lazyLoadEmojis;
16901
+ }
16902
+ function usePickerSizeConfig() {
16903
+ var _usePickerConfig12 = usePickerConfig(),
16904
+ height = _usePickerConfig12.height,
16905
+ width = _usePickerConfig12.width;
16906
+
16907
+ return {
16908
+ height: height,
16909
+ width: width
16910
+ };
16911
+ }
16912
+ function useEmojiVersionConfig() {
16913
+ var _usePickerConfig13 = usePickerConfig(),
16914
+ emojiVersion = _usePickerConfig13.emojiVersion;
16915
+
16916
+ return emojiVersion;
16917
+ }
16918
+ function useGetEmojiUrlConfig() {
16919
+ var _usePickerConfig14 = usePickerConfig(),
16920
+ getEmojiUrl = _usePickerConfig14.getEmojiUrl;
16921
+
16922
+ return getEmojiUrl;
16923
+ }
16924
+
16917
16925
  var alphaNumericEmojiIndex = {};
16918
16926
  setTimeout(function () {
16919
16927
  allEmojis.reduce(function (searchIndex, emoji) {
@@ -17823,6 +17831,7 @@ function useMouseDownHandlers(BodyRef) {
17823
17831
  var _useUpdateSuggested = useUpdateSuggested(),
17824
17832
  updateSuggested = _useUpdateSuggested[1];
17825
17833
 
17834
+ var getEmojiUrl = useGetEmojiUrlConfig();
17826
17835
  var onClick = useCallback(function onClick(event) {
17827
17836
  if (disallowClickRef.current) {
17828
17837
  return;
@@ -17841,8 +17850,8 @@ function useMouseDownHandlers(BodyRef) {
17841
17850
  var skinToneToUse = activeVariationFromUnified(unified) || activeSkinTone;
17842
17851
  updateSuggested();
17843
17852
  setsuggested(emoji, skinToneToUse);
17844
- onEmojiClick(emojiClickOutput(emoji, skinToneToUse), event);
17845
- }, [activeSkinTone, closeAllOpenToggles, disallowClickRef, onEmojiClick, updateSuggested]);
17853
+ onEmojiClick(emojiClickOutput(emoji, skinToneToUse, getEmojiUrl), event);
17854
+ }, [activeSkinTone, closeAllOpenToggles, disallowClickRef, onEmojiClick, updateSuggested, getEmojiUrl]);
17846
17855
  var onMouseDown = useCallback(function onMouseDown(event) {
17847
17856
  var _window;
17848
17857
 
@@ -17913,13 +17922,13 @@ function emojiFromEvent(event) {
17913
17922
  return emojiFromElement(target);
17914
17923
  }
17915
17924
 
17916
- function emojiClickOutput(emoji, activeSkinTone) {
17925
+ function emojiClickOutput(emoji, activeSkinTone, getEmojiUrl) {
17917
17926
  var unified = emojiUnified(emoji, activeSkinTone);
17918
17927
  return {
17919
17928
  activeSkinTone: activeSkinTone,
17920
17929
  emoji: parseNativeEmoji(unified),
17921
17930
  getImageUrl: function getImageUrl(emojiStyle) {
17922
- return emojiUrlByUnified(emojiStyle, unified);
17931
+ return getEmojiUrl(unified, emojiStyle);
17923
17932
  },
17924
17933
  names: emojiNames(emoji),
17925
17934
  unified: unified,
@@ -18209,7 +18218,8 @@ function ClickableEmoji(_ref) {
18209
18218
  _ref$showVariations = _ref.showVariations,
18210
18219
  showVariations = _ref$showVariations === void 0 ? true : _ref$showVariations,
18211
18220
  size = _ref.size,
18212
- lazyLoad = _ref.lazyLoad;
18221
+ lazyLoad = _ref.lazyLoad,
18222
+ getEmojiUrl = _ref.getEmojiUrl;
18213
18223
  var hasVariations = emojiHasVariations(emoji);
18214
18224
  return createElement(Button, {
18215
18225
  className: clsx(ClassNames.emoji, (_clsx = {}, _clsx[ClassNames.hidden] = hidden, _clsx[ClassNames.hiddenOnSearch] = hiddenOnSearch, _clsx[ClassNames.visible] = !hidden && !hiddenOnSearch, _clsx[ClassNames.emojiHasVariatios] = hasVariations && showVariations, _clsx)),
@@ -18221,7 +18231,8 @@ function ClickableEmoji(_ref) {
18221
18231
  emoji: emoji,
18222
18232
  size: size,
18223
18233
  emojiStyle: emojiStyle,
18224
- lazyLoad: lazyLoad
18234
+ lazyLoad: lazyLoad,
18235
+ getEmojiUrl: getEmojiUrl
18225
18236
  }));
18226
18237
  }
18227
18238
  function ViewOnlyEmoji(_ref2) {
@@ -18229,7 +18240,9 @@ function ViewOnlyEmoji(_ref2) {
18229
18240
  unified = _ref2.unified,
18230
18241
  emojiStyle = _ref2.emojiStyle,
18231
18242
  size = _ref2.size,
18232
- lazyLoad = _ref2.lazyLoad;
18243
+ lazyLoad = _ref2.lazyLoad,
18244
+ _ref2$getEmojiUrl = _ref2.getEmojiUrl,
18245
+ getEmojiUrl = _ref2$getEmojiUrl === void 0 ? emojiUrlByUnified : _ref2$getEmojiUrl;
18233
18246
  var style = {};
18234
18247
 
18235
18248
  if (size) {
@@ -18245,7 +18258,8 @@ function ViewOnlyEmoji(_ref2) {
18245
18258
  style: style,
18246
18259
  emoji: asEmoji(emojiToRender),
18247
18260
  emojiStyle: emojiStyle,
18248
- lazyLoad: lazyLoad
18261
+ lazyLoad: lazyLoad,
18262
+ getEmojiUrl: getEmojiUrl
18249
18263
  }));
18250
18264
  }
18251
18265
 
@@ -18265,13 +18279,14 @@ function EmojiImg(_ref4) {
18265
18279
  emojiStyle = _ref4.emojiStyle,
18266
18280
  style = _ref4.style,
18267
18281
  _ref4$lazyLoad = _ref4.lazyLoad,
18268
- lazyLoad = _ref4$lazyLoad === void 0 ? false : _ref4$lazyLoad;
18282
+ lazyLoad = _ref4$lazyLoad === void 0 ? false : _ref4$lazyLoad,
18283
+ getEmojiUrl = _ref4.getEmojiUrl;
18269
18284
 
18270
18285
  var _useEmojisThatFailedT = useEmojisThatFailedToLoadState(),
18271
18286
  setEmojisThatFailedToLoad = _useEmojisThatFailedT[1];
18272
18287
 
18273
18288
  return createElement("img", {
18274
- src: emojiUrlByUnified(emojiStyle, unified),
18289
+ src: getEmojiUrl(unified, emojiStyle),
18275
18290
  alt: emojiName(emoji),
18276
18291
  className: clsx(ClassNames.external, 'epr-emoji-img'),
18277
18292
  loading: lazyLoad ? 'lazy' : 'eager',
@@ -18316,6 +18331,7 @@ function Suggested(_ref) {
18316
18331
  suggestedUpdated = _useUpdateSuggested[0];
18317
18332
 
18318
18333
  var suggestedEmojisModeConfig = useSuggestedEmojisModeConfig();
18334
+ var getEmojiUrl = useGetEmojiUrlConfig();
18319
18335
  var suggested = useMemo(function () {
18320
18336
  var _getsuggested;
18321
18337
 
@@ -18339,7 +18355,8 @@ function Suggested(_ref) {
18339
18355
  unified: suggestedItem.unified,
18340
18356
  emojiStyle: emojiStyle,
18341
18357
  emoji: emoji,
18342
- key: suggestedItem.unified
18358
+ key: suggestedItem.unified,
18359
+ getEmojiUrl: getEmojiUrl
18343
18360
  });
18344
18361
  }));
18345
18362
  }
@@ -18382,7 +18399,8 @@ function RenderCategory(_ref) {
18382
18399
  var _useActiveSkinToneSta = useActiveSkinToneState(),
18383
18400
  activeSkinTone = _useActiveSkinToneSta[0];
18384
18401
 
18385
- var disallowedEmojisRef = useDisallowedEmojisRef(); // Small trick to defer the rendering of all emoji categories until the first category is visible
18402
+ var disallowedEmojisRef = useDisallowedEmojisRef();
18403
+ var getEmojiUrl = useGetEmojiUrlConfig(); // Small trick to defer the rendering of all emoji categories until the first category is visible
18386
18404
  // This way the user gets to actually see something and not wait for the whole picker to render.
18387
18405
 
18388
18406
  var emojisToPush = !isPastInitialLoad && index > 1 ? [] : emojisByCategory(category);
@@ -18412,7 +18430,8 @@ function RenderCategory(_ref) {
18412
18430
  hidden: failedToLoad,
18413
18431
  hiddenOnSearch: filteredOut,
18414
18432
  emojiStyle: emojiStyle,
18415
- lazyLoad: lazyLoadEmojis
18433
+ lazyLoad: lazyLoadEmojis,
18434
+ getEmojiUrl: getEmojiUrl
18416
18435
  });
18417
18436
  });
18418
18437
  return createElement(EmojiCategory, {
@@ -18448,6 +18467,7 @@ function EmojiVariationPicker() {
18448
18467
 
18449
18468
  var setAnchoredEmojiRef = useSetAnchoredEmojiRef();
18450
18469
  var getPointerStyle = usePointerStyle(VariationPickerRef);
18470
+ var getEmojiUrl = useGetEmojiUrlConfig();
18451
18471
  var button = buttonFromTarget(AnchoredEmojiRef.current);
18452
18472
  var visible = emoji && button && emojiHasVariations(emoji) && button.classList.contains(ClassNames.emojiHasVariatios);
18453
18473
  var top, pointerStyle;
@@ -18476,7 +18496,8 @@ function EmojiVariationPicker() {
18476
18496
  emoji: safeEmoji,
18477
18497
  unified: unified,
18478
18498
  emojiStyle: emojiStyle,
18479
- showVariations: false
18499
+ showVariations: false,
18500
+ getEmojiUrl: getEmojiUrl
18480
18501
  });
18481
18502
  }) : null, createElement("div", {
18482
18503
  className: "epr-emoji-pointer",
@@ -18683,6 +18704,7 @@ function Preview() {
18683
18704
  var _useEmojiVariationPic = useEmojiVariationPickerState(),
18684
18705
  variationPickerEmoji = _useEmojiVariationPic[0];
18685
18706
 
18707
+ var getEmojiUrl = useGetEmojiUrlConfig();
18686
18708
  useEmojiPreviewEvents(previewConfig.showPreview, setPreviewEmoji);
18687
18709
 
18688
18710
  if (!previewConfig.showPreview) {
@@ -18702,12 +18724,14 @@ function Preview() {
18702
18724
  unified: previewEmoji == null ? void 0 : previewEmoji.unified,
18703
18725
  emoji: asEmoji(emoji),
18704
18726
  emojiStyle: emojiStyle,
18705
- size: 45
18727
+ size: 45,
18728
+ getEmojiUrl: getEmojiUrl
18706
18729
  }) : defaultEmoji ? createElement(ViewOnlyEmoji, {
18707
18730
  unified: emojiUnified(defaultEmoji),
18708
18731
  emoji: defaultEmoji,
18709
18732
  emojiStyle: emojiStyle,
18710
- size: 45
18733
+ size: 45,
18734
+ getEmojiUrl: getEmojiUrl
18711
18735
  }) : null), show ? createElement("div", {
18712
18736
  className: "epr-preview-emoji-label"
18713
18737
  }, emojiName(asEmoji(emoji))) : createElement("div", {
@@ -19348,7 +19372,7 @@ function hasModifier(event) {
19348
19372
  return metaKey || ctrlKey || altKey;
19349
19373
  }
19350
19374
 
19351
- function preloadEmoji(emoji, emojiStyle) {
19375
+ function preloadEmoji(getEmojiUrl, emoji, emojiStyle) {
19352
19376
  if (!emoji) {
19353
19377
  return;
19354
19378
  }
@@ -19364,7 +19388,7 @@ function preloadEmoji(emoji, emojiStyle) {
19364
19388
  }
19365
19389
 
19366
19390
  emojiVariations(emoji).forEach(function (variation) {
19367
- var emojiUrl = emojiUrlByUnified(emojiStyle, variation);
19391
+ var emojiUrl = getEmojiUrl(variation, emojiStyle);
19368
19392
  preloadImage(emojiUrl);
19369
19393
  });
19370
19394
  preloadedEmojs.add(unified);
@@ -19379,6 +19403,7 @@ function preloadImage(url) {
19379
19403
  function useOnFocus() {
19380
19404
  var BodyRef = useBodyRef();
19381
19405
  var emojiStyle = useEmojiStyleConfig();
19406
+ var getEmojiUrl = useGetEmojiUrlConfig();
19382
19407
  useEffect(function () {
19383
19408
  if (emojiStyle === EmojiStyle.NATIVE) {
19384
19409
  return;
@@ -19405,10 +19430,10 @@ function useOnFocus() {
19405
19430
  }
19406
19431
 
19407
19432
  if (emojiHasVariations(emoji)) {
19408
- preloadEmoji(emoji, emojiStyle);
19433
+ preloadEmoji(getEmojiUrl, emoji, emojiStyle);
19409
19434
  }
19410
19435
  }
19411
- }, [BodyRef, emojiStyle]);
19436
+ }, [BodyRef, emojiStyle, getEmojiUrl]);
19412
19437
  }
19413
19438
 
19414
19439
  var css_248z$b = "aside.EmojiPickerReact.epr-main{border-color:var(--epr-picker-border-color);border-radius:var(--epr-picker-border-radius);border-style:solid;border-width:1px;display:flex;flex-direction:column;position:relative}";
@@ -19495,7 +19520,8 @@ function ExportedEmoji(_ref) {
19495
19520
  _ref$emojiStyle = _ref.emojiStyle,
19496
19521
  emojiStyle = _ref$emojiStyle === void 0 ? EmojiStyle.APPLE : _ref$emojiStyle,
19497
19522
  _ref$lazyLoad = _ref.lazyLoad,
19498
- lazyLoad = _ref$lazyLoad === void 0 ? false : _ref$lazyLoad;
19523
+ lazyLoad = _ref$lazyLoad === void 0 ? false : _ref$lazyLoad,
19524
+ getEmojiUrl = _ref.getEmojiUrl;
19499
19525
 
19500
19526
  if (!unified) {
19501
19527
  return null;
@@ -19505,7 +19531,8 @@ function ExportedEmoji(_ref) {
19505
19531
  unified: unified,
19506
19532
  size: size,
19507
19533
  emojiStyle: emojiStyle,
19508
- lazyLoad: lazyLoad
19534
+ lazyLoad: lazyLoad,
19535
+ getEmojiUrl: getEmojiUrl
19509
19536
  });
19510
19537
  }
19511
19538