emoji-picker-react 4.1.1 → 4.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.
@@ -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,249 @@ 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: getDimension(height),
16909
+ width: getDimension(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
+
16925
+ function getDimension(dimensionConfig) {
16926
+ return typeof dimensionConfig === 'number' ? dimensionConfig + "px" : dimensionConfig;
16927
+ }
16928
+
16917
16929
  var alphaNumericEmojiIndex = {};
16918
16930
  setTimeout(function () {
16919
16931
  allEmojis.reduce(function (searchIndex, emoji) {
@@ -17823,6 +17835,7 @@ function useMouseDownHandlers(BodyRef) {
17823
17835
  var _useUpdateSuggested = useUpdateSuggested(),
17824
17836
  updateSuggested = _useUpdateSuggested[1];
17825
17837
 
17838
+ var getEmojiUrl = useGetEmojiUrlConfig();
17826
17839
  var onClick = useCallback(function onClick(event) {
17827
17840
  if (disallowClickRef.current) {
17828
17841
  return;
@@ -17841,8 +17854,8 @@ function useMouseDownHandlers(BodyRef) {
17841
17854
  var skinToneToUse = activeVariationFromUnified(unified) || activeSkinTone;
17842
17855
  updateSuggested();
17843
17856
  setsuggested(emoji, skinToneToUse);
17844
- onEmojiClick(emojiClickOutput(emoji, skinToneToUse), event);
17845
- }, [activeSkinTone, closeAllOpenToggles, disallowClickRef, onEmojiClick, updateSuggested]);
17857
+ onEmojiClick(emojiClickOutput(emoji, skinToneToUse, getEmojiUrl), event);
17858
+ }, [activeSkinTone, closeAllOpenToggles, disallowClickRef, onEmojiClick, updateSuggested, getEmojiUrl]);
17846
17859
  var onMouseDown = useCallback(function onMouseDown(event) {
17847
17860
  var _window;
17848
17861
 
@@ -17913,13 +17926,13 @@ function emojiFromEvent(event) {
17913
17926
  return emojiFromElement(target);
17914
17927
  }
17915
17928
 
17916
- function emojiClickOutput(emoji, activeSkinTone) {
17929
+ function emojiClickOutput(emoji, activeSkinTone, getEmojiUrl) {
17917
17930
  var unified = emojiUnified(emoji, activeSkinTone);
17918
17931
  return {
17919
17932
  activeSkinTone: activeSkinTone,
17920
17933
  emoji: parseNativeEmoji(unified),
17921
17934
  getImageUrl: function getImageUrl(emojiStyle) {
17922
- return emojiUrlByUnified(emojiStyle, unified);
17935
+ return getEmojiUrl(unified, emojiStyle);
17923
17936
  },
17924
17937
  names: emojiNames(emoji),
17925
17938
  unified: unified,
@@ -18209,7 +18222,8 @@ function ClickableEmoji(_ref) {
18209
18222
  _ref$showVariations = _ref.showVariations,
18210
18223
  showVariations = _ref$showVariations === void 0 ? true : _ref$showVariations,
18211
18224
  size = _ref.size,
18212
- lazyLoad = _ref.lazyLoad;
18225
+ lazyLoad = _ref.lazyLoad,
18226
+ getEmojiUrl = _ref.getEmojiUrl;
18213
18227
  var hasVariations = emojiHasVariations(emoji);
18214
18228
  return createElement(Button, {
18215
18229
  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 +18235,8 @@ function ClickableEmoji(_ref) {
18221
18235
  emoji: emoji,
18222
18236
  size: size,
18223
18237
  emojiStyle: emojiStyle,
18224
- lazyLoad: lazyLoad
18238
+ lazyLoad: lazyLoad,
18239
+ getEmojiUrl: getEmojiUrl
18225
18240
  }));
18226
18241
  }
18227
18242
  function ViewOnlyEmoji(_ref2) {
@@ -18229,7 +18244,9 @@ function ViewOnlyEmoji(_ref2) {
18229
18244
  unified = _ref2.unified,
18230
18245
  emojiStyle = _ref2.emojiStyle,
18231
18246
  size = _ref2.size,
18232
- lazyLoad = _ref2.lazyLoad;
18247
+ lazyLoad = _ref2.lazyLoad,
18248
+ _ref2$getEmojiUrl = _ref2.getEmojiUrl,
18249
+ getEmojiUrl = _ref2$getEmojiUrl === void 0 ? emojiUrlByUnified : _ref2$getEmojiUrl;
18233
18250
  var style = {};
18234
18251
 
18235
18252
  if (size) {
@@ -18245,7 +18262,8 @@ function ViewOnlyEmoji(_ref2) {
18245
18262
  style: style,
18246
18263
  emoji: asEmoji(emojiToRender),
18247
18264
  emojiStyle: emojiStyle,
18248
- lazyLoad: lazyLoad
18265
+ lazyLoad: lazyLoad,
18266
+ getEmojiUrl: getEmojiUrl
18249
18267
  }));
18250
18268
  }
18251
18269
 
@@ -18265,13 +18283,14 @@ function EmojiImg(_ref4) {
18265
18283
  emojiStyle = _ref4.emojiStyle,
18266
18284
  style = _ref4.style,
18267
18285
  _ref4$lazyLoad = _ref4.lazyLoad,
18268
- lazyLoad = _ref4$lazyLoad === void 0 ? false : _ref4$lazyLoad;
18286
+ lazyLoad = _ref4$lazyLoad === void 0 ? false : _ref4$lazyLoad,
18287
+ getEmojiUrl = _ref4.getEmojiUrl;
18269
18288
 
18270
18289
  var _useEmojisThatFailedT = useEmojisThatFailedToLoadState(),
18271
18290
  setEmojisThatFailedToLoad = _useEmojisThatFailedT[1];
18272
18291
 
18273
18292
  return createElement("img", {
18274
- src: emojiUrlByUnified(emojiStyle, unified),
18293
+ src: getEmojiUrl(unified, emojiStyle),
18275
18294
  alt: emojiName(emoji),
18276
18295
  className: clsx(ClassNames.external, 'epr-emoji-img'),
18277
18296
  loading: lazyLoad ? 'lazy' : 'eager',
@@ -18316,6 +18335,7 @@ function Suggested(_ref) {
18316
18335
  suggestedUpdated = _useUpdateSuggested[0];
18317
18336
 
18318
18337
  var suggestedEmojisModeConfig = useSuggestedEmojisModeConfig();
18338
+ var getEmojiUrl = useGetEmojiUrlConfig();
18319
18339
  var suggested = useMemo(function () {
18320
18340
  var _getsuggested;
18321
18341
 
@@ -18339,7 +18359,8 @@ function Suggested(_ref) {
18339
18359
  unified: suggestedItem.unified,
18340
18360
  emojiStyle: emojiStyle,
18341
18361
  emoji: emoji,
18342
- key: suggestedItem.unified
18362
+ key: suggestedItem.unified,
18363
+ getEmojiUrl: getEmojiUrl
18343
18364
  });
18344
18365
  }));
18345
18366
  }
@@ -18382,7 +18403,8 @@ function RenderCategory(_ref) {
18382
18403
  var _useActiveSkinToneSta = useActiveSkinToneState(),
18383
18404
  activeSkinTone = _useActiveSkinToneSta[0];
18384
18405
 
18385
- var disallowedEmojisRef = useDisallowedEmojisRef(); // Small trick to defer the rendering of all emoji categories until the first category is visible
18406
+ var disallowedEmojisRef = useDisallowedEmojisRef();
18407
+ var getEmojiUrl = useGetEmojiUrlConfig(); // Small trick to defer the rendering of all emoji categories until the first category is visible
18386
18408
  // This way the user gets to actually see something and not wait for the whole picker to render.
18387
18409
 
18388
18410
  var emojisToPush = !isPastInitialLoad && index > 1 ? [] : emojisByCategory(category);
@@ -18412,7 +18434,8 @@ function RenderCategory(_ref) {
18412
18434
  hidden: failedToLoad,
18413
18435
  hiddenOnSearch: filteredOut,
18414
18436
  emojiStyle: emojiStyle,
18415
- lazyLoad: lazyLoadEmojis
18437
+ lazyLoad: lazyLoadEmojis,
18438
+ getEmojiUrl: getEmojiUrl
18416
18439
  });
18417
18440
  });
18418
18441
  return createElement(EmojiCategory, {
@@ -18448,6 +18471,7 @@ function EmojiVariationPicker() {
18448
18471
 
18449
18472
  var setAnchoredEmojiRef = useSetAnchoredEmojiRef();
18450
18473
  var getPointerStyle = usePointerStyle(VariationPickerRef);
18474
+ var getEmojiUrl = useGetEmojiUrlConfig();
18451
18475
  var button = buttonFromTarget(AnchoredEmojiRef.current);
18452
18476
  var visible = emoji && button && emojiHasVariations(emoji) && button.classList.contains(ClassNames.emojiHasVariatios);
18453
18477
  var top, pointerStyle;
@@ -18476,7 +18500,8 @@ function EmojiVariationPicker() {
18476
18500
  emoji: safeEmoji,
18477
18501
  unified: unified,
18478
18502
  emojiStyle: emojiStyle,
18479
- showVariations: false
18503
+ showVariations: false,
18504
+ getEmojiUrl: getEmojiUrl
18480
18505
  });
18481
18506
  }) : null, createElement("div", {
18482
18507
  className: "epr-emoji-pointer",
@@ -18683,6 +18708,7 @@ function Preview() {
18683
18708
  var _useEmojiVariationPic = useEmojiVariationPickerState(),
18684
18709
  variationPickerEmoji = _useEmojiVariationPic[0];
18685
18710
 
18711
+ var getEmojiUrl = useGetEmojiUrlConfig();
18686
18712
  useEmojiPreviewEvents(previewConfig.showPreview, setPreviewEmoji);
18687
18713
 
18688
18714
  if (!previewConfig.showPreview) {
@@ -18702,12 +18728,14 @@ function Preview() {
18702
18728
  unified: previewEmoji == null ? void 0 : previewEmoji.unified,
18703
18729
  emoji: asEmoji(emoji),
18704
18730
  emojiStyle: emojiStyle,
18705
- size: 45
18731
+ size: 45,
18732
+ getEmojiUrl: getEmojiUrl
18706
18733
  }) : defaultEmoji ? createElement(ViewOnlyEmoji, {
18707
18734
  unified: emojiUnified(defaultEmoji),
18708
18735
  emoji: defaultEmoji,
18709
18736
  emojiStyle: emojiStyle,
18710
- size: 45
18737
+ size: 45,
18738
+ getEmojiUrl: getEmojiUrl
18711
18739
  }) : null), show ? createElement("div", {
18712
18740
  className: "epr-preview-emoji-label"
18713
18741
  }, emojiName(asEmoji(emoji))) : createElement("div", {
@@ -19348,7 +19376,7 @@ function hasModifier(event) {
19348
19376
  return metaKey || ctrlKey || altKey;
19349
19377
  }
19350
19378
 
19351
- function preloadEmoji(emoji, emojiStyle) {
19379
+ function preloadEmoji(getEmojiUrl, emoji, emojiStyle) {
19352
19380
  if (!emoji) {
19353
19381
  return;
19354
19382
  }
@@ -19364,7 +19392,7 @@ function preloadEmoji(emoji, emojiStyle) {
19364
19392
  }
19365
19393
 
19366
19394
  emojiVariations(emoji).forEach(function (variation) {
19367
- var emojiUrl = emojiUrlByUnified(emojiStyle, variation);
19395
+ var emojiUrl = getEmojiUrl(variation, emojiStyle);
19368
19396
  preloadImage(emojiUrl);
19369
19397
  });
19370
19398
  preloadedEmojs.add(unified);
@@ -19379,6 +19407,7 @@ function preloadImage(url) {
19379
19407
  function useOnFocus() {
19380
19408
  var BodyRef = useBodyRef();
19381
19409
  var emojiStyle = useEmojiStyleConfig();
19410
+ var getEmojiUrl = useGetEmojiUrlConfig();
19382
19411
  useEffect(function () {
19383
19412
  if (emojiStyle === EmojiStyle.NATIVE) {
19384
19413
  return;
@@ -19405,10 +19434,10 @@ function useOnFocus() {
19405
19434
  }
19406
19435
 
19407
19436
  if (emojiHasVariations(emoji)) {
19408
- preloadEmoji(emoji, emojiStyle);
19437
+ preloadEmoji(getEmojiUrl, emoji, emojiStyle);
19409
19438
  }
19410
19439
  }
19411
- }, [BodyRef, emojiStyle]);
19440
+ }, [BodyRef, emojiStyle, getEmojiUrl]);
19412
19441
  }
19413
19442
 
19414
19443
  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}";
@@ -19434,8 +19463,8 @@ function PickerRootElement(_ref2) {
19434
19463
  useKeyboardNavigation();
19435
19464
  useOnFocus();
19436
19465
  var style = {
19437
- height: height + "px",
19438
- width: width + "px"
19466
+ height: height,
19467
+ width: width
19439
19468
  };
19440
19469
  return createElement("aside", {
19441
19470
  className: clsx(ClassNames.emojiPicker, 'epr-main', (_clsx = {}, _clsx[ClassNames.searchActive] = searchModeActive, _clsx['epr-dark-theme'] = theme === Theme.DARK, _clsx)),
@@ -19495,7 +19524,8 @@ function ExportedEmoji(_ref) {
19495
19524
  _ref$emojiStyle = _ref.emojiStyle,
19496
19525
  emojiStyle = _ref$emojiStyle === void 0 ? EmojiStyle.APPLE : _ref$emojiStyle,
19497
19526
  _ref$lazyLoad = _ref.lazyLoad,
19498
- lazyLoad = _ref$lazyLoad === void 0 ? false : _ref$lazyLoad;
19527
+ lazyLoad = _ref$lazyLoad === void 0 ? false : _ref$lazyLoad,
19528
+ getEmojiUrl = _ref.getEmojiUrl;
19499
19529
 
19500
19530
  if (!unified) {
19501
19531
  return null;
@@ -19505,7 +19535,8 @@ function ExportedEmoji(_ref) {
19505
19535
  unified: unified,
19506
19536
  size: size,
19507
19537
  emojiStyle: emojiStyle,
19508
- lazyLoad: lazyLoad
19538
+ lazyLoad: lazyLoad,
19539
+ getEmojiUrl: getEmojiUrl
19509
19540
  });
19510
19541
  }
19511
19542