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.
- package/README.md +33 -25
- package/dist/components/emoji/Emoji.d.ts +4 -2
- package/dist/components/emoji/ExportedEmoji.d.ts +3 -1
- package/dist/config/cdnUrls.d.ts +1 -1
- package/dist/config/config.d.ts +5 -2
- package/dist/config/useConfig.d.ts +4 -3
- package/dist/dataUtils/emojiSelectors.d.ts +1 -2
- package/dist/emoji-picker-react.cjs.development.js +289 -258
- package/dist/emoji-picker-react.cjs.development.js.map +1 -1
- package/dist/emoji-picker-react.cjs.production.min.js +1 -1
- package/dist/emoji-picker-react.cjs.production.min.js.map +1 -1
- package/dist/emoji-picker-react.esm.js +289 -258
- package/dist/emoji-picker-react.esm.js.map +1 -1
- package/dist/hooks/preloadEmoji.d.ts +2 -1
- package/package.json +1 -1
- package/src/components/body/EmojiList.tsx +3 -0
- package/src/components/body/EmojiVariationPicker.tsx +13 -8
- package/src/components/body/Suggested.tsx +5 -2
- package/src/components/emoji/Emoji.tsx +17 -8
- package/src/components/emoji/ExportedEmoji.tsx +5 -2
- package/src/components/footer/Preview.tsx +9 -2
- package/src/components/main/PickerMain.tsx +3 -3
- package/src/config/cdnUrls.ts +1 -1
- package/src/config/config.ts +15 -9
- package/src/config/useConfig.ts +21 -4
- package/src/dataUtils/emojiSelectors.ts +3 -10
- package/src/hooks/preloadEmoji.ts +5 -7
- package/src/hooks/useMouseDownHandlers.ts +19 -13
- package/src/hooks/useOnFocus.ts +4 -3
|
@@ -232,238 +232,6 @@ function _createForOfIteratorHelperLoose(o, allowArrayLike) {
|
|
|
232
232
|
Categories["FLAGS"] = "flags";
|
|
233
233
|
})(exports.Categories || (exports.Categories = {}));
|
|
234
234
|
|
|
235
|
-
var _configByCategory;
|
|
236
|
-
var categoriesOrdered = [exports.Categories.SUGGESTED, exports.Categories.SMILEYS_PEOPLE, exports.Categories.ANIMALS_NATURE, exports.Categories.FOOD_DRINK, exports.Categories.TRAVEL_PLACES, exports.Categories.ACTIVITIES, exports.Categories.OBJECTS, exports.Categories.SYMBOLS, exports.Categories.FLAGS];
|
|
237
|
-
var SuggestedRecent = {
|
|
238
|
-
name: 'Recently Used',
|
|
239
|
-
category: exports.Categories.SUGGESTED
|
|
240
|
-
};
|
|
241
|
-
var configByCategory = (_configByCategory = {}, _configByCategory[exports.Categories.SUGGESTED] = {
|
|
242
|
-
category: exports.Categories.SUGGESTED,
|
|
243
|
-
name: 'Frequently Used'
|
|
244
|
-
}, _configByCategory[exports.Categories.SMILEYS_PEOPLE] = {
|
|
245
|
-
category: exports.Categories.SMILEYS_PEOPLE,
|
|
246
|
-
name: 'Smileys & People'
|
|
247
|
-
}, _configByCategory[exports.Categories.ANIMALS_NATURE] = {
|
|
248
|
-
category: exports.Categories.ANIMALS_NATURE,
|
|
249
|
-
name: 'Animals & Nature'
|
|
250
|
-
}, _configByCategory[exports.Categories.FOOD_DRINK] = {
|
|
251
|
-
category: exports.Categories.FOOD_DRINK,
|
|
252
|
-
name: 'Food & Drink'
|
|
253
|
-
}, _configByCategory[exports.Categories.TRAVEL_PLACES] = {
|
|
254
|
-
category: exports.Categories.TRAVEL_PLACES,
|
|
255
|
-
name: 'Travel & Places'
|
|
256
|
-
}, _configByCategory[exports.Categories.ACTIVITIES] = {
|
|
257
|
-
category: exports.Categories.ACTIVITIES,
|
|
258
|
-
name: 'Activities'
|
|
259
|
-
}, _configByCategory[exports.Categories.OBJECTS] = {
|
|
260
|
-
category: exports.Categories.OBJECTS,
|
|
261
|
-
name: 'Objects'
|
|
262
|
-
}, _configByCategory[exports.Categories.SYMBOLS] = {
|
|
263
|
-
category: exports.Categories.SYMBOLS,
|
|
264
|
-
name: 'Symbols'
|
|
265
|
-
}, _configByCategory[exports.Categories.FLAGS] = {
|
|
266
|
-
category: exports.Categories.FLAGS,
|
|
267
|
-
name: 'Flags'
|
|
268
|
-
}, _configByCategory);
|
|
269
|
-
function baseCategoriesConfig(modifiers) {
|
|
270
|
-
return categoriesOrdered.map(function (category) {
|
|
271
|
-
return _extends({}, configByCategory[category], modifiers && modifiers[category] && modifiers[category]);
|
|
272
|
-
});
|
|
273
|
-
}
|
|
274
|
-
function categoryFromCategoryConfig(category) {
|
|
275
|
-
return category.category;
|
|
276
|
-
}
|
|
277
|
-
function categoryNameFromCategoryConfig(category) {
|
|
278
|
-
return category.name;
|
|
279
|
-
}
|
|
280
|
-
function mergeCategoriesConfig(userCategoriesConfig, modifiers) {
|
|
281
|
-
var _userCategoriesConfig;
|
|
282
|
-
|
|
283
|
-
if (userCategoriesConfig === void 0) {
|
|
284
|
-
userCategoriesConfig = [];
|
|
285
|
-
}
|
|
286
|
-
|
|
287
|
-
if (modifiers === void 0) {
|
|
288
|
-
modifiers = {};
|
|
289
|
-
}
|
|
290
|
-
|
|
291
|
-
var extra = {};
|
|
292
|
-
|
|
293
|
-
if (modifiers.suggestionMode === exports.SuggestionMode.RECENT) {
|
|
294
|
-
extra[exports.Categories.SUGGESTED] = SuggestedRecent;
|
|
295
|
-
}
|
|
296
|
-
|
|
297
|
-
var base = baseCategoriesConfig(extra);
|
|
298
|
-
|
|
299
|
-
if (!((_userCategoriesConfig = userCategoriesConfig) != null && _userCategoriesConfig.length)) {
|
|
300
|
-
return base;
|
|
301
|
-
}
|
|
302
|
-
|
|
303
|
-
return userCategoriesConfig.map(function (category) {
|
|
304
|
-
if (typeof category === 'string') {
|
|
305
|
-
return getBaseConfigByCategory(category, extra[category]);
|
|
306
|
-
}
|
|
307
|
-
|
|
308
|
-
return _extends({}, getBaseConfigByCategory(category.category, extra[category.category]), category);
|
|
309
|
-
});
|
|
310
|
-
}
|
|
311
|
-
|
|
312
|
-
function getBaseConfigByCategory(category, modifier) {
|
|
313
|
-
if (modifier === void 0) {
|
|
314
|
-
modifier = {};
|
|
315
|
-
}
|
|
316
|
-
|
|
317
|
-
return Object.assign(configByCategory[category], modifier);
|
|
318
|
-
}
|
|
319
|
-
|
|
320
|
-
function mergeConfig(userConfig) {
|
|
321
|
-
var _userConfig$previewCo;
|
|
322
|
-
|
|
323
|
-
if (userConfig === void 0) {
|
|
324
|
-
userConfig = {};
|
|
325
|
-
}
|
|
326
|
-
|
|
327
|
-
var base = basePickerConfig();
|
|
328
|
-
var previewConfig = Object.assign(base.previewConfig, (_userConfig$previewCo = userConfig.previewConfig) != null ? _userConfig$previewCo : {});
|
|
329
|
-
var config = Object.assign(base, userConfig);
|
|
330
|
-
var categories = mergeCategoriesConfig(userConfig.categories, {
|
|
331
|
-
suggestionMode: config.suggestedEmojisMode
|
|
332
|
-
});
|
|
333
|
-
return _extends({}, config, {
|
|
334
|
-
categories: categories,
|
|
335
|
-
previewConfig: previewConfig
|
|
336
|
-
});
|
|
337
|
-
}
|
|
338
|
-
function basePickerConfig() {
|
|
339
|
-
return {
|
|
340
|
-
autoFocusSearch: true,
|
|
341
|
-
categories: baseCategoriesConfig(),
|
|
342
|
-
defaultSkinTone: exports.SkinTones.NEUTRAL,
|
|
343
|
-
emojiStyle: exports.EmojiStyle.APPLE,
|
|
344
|
-
emojiVersion: null,
|
|
345
|
-
height: 450,
|
|
346
|
-
lazyLoadEmojis: false,
|
|
347
|
-
onEmojiClick: function defaultOnClickHandler( // @ts-ignore
|
|
348
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
349
|
-
emoji, // @ts-ignore
|
|
350
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
351
|
-
event) {},
|
|
352
|
-
previewConfig: _extends({}, basePreviewConfig),
|
|
353
|
-
searchPlaceHolder: 'Search',
|
|
354
|
-
skinTonesDisabled: false,
|
|
355
|
-
suggestedEmojisMode: exports.SuggestionMode.FREQUENT,
|
|
356
|
-
theme: exports.Theme.LIGHT,
|
|
357
|
-
width: 350
|
|
358
|
-
};
|
|
359
|
-
}
|
|
360
|
-
var basePreviewConfig = {
|
|
361
|
-
defaultEmoji: '1f60a',
|
|
362
|
-
defaultCaption: "What's your mood?",
|
|
363
|
-
showPreview: true
|
|
364
|
-
};
|
|
365
|
-
|
|
366
|
-
var _excluded = ["children"];
|
|
367
|
-
var ConfigContext = /*#__PURE__*/React.createContext( /*#__PURE__*/basePickerConfig());
|
|
368
|
-
function PickerConfigProvider(_ref) {
|
|
369
|
-
var children = _ref.children,
|
|
370
|
-
config = _objectWithoutPropertiesLoose(_ref, _excluded);
|
|
371
|
-
|
|
372
|
-
return React.createElement(ConfigContext.Provider, {
|
|
373
|
-
value: mergeConfig(config)
|
|
374
|
-
}, children);
|
|
375
|
-
}
|
|
376
|
-
function usePickerConfig() {
|
|
377
|
-
return React.useContext(ConfigContext);
|
|
378
|
-
}
|
|
379
|
-
|
|
380
|
-
function useSearchPlaceHolderConfig() {
|
|
381
|
-
var _usePickerConfig = usePickerConfig(),
|
|
382
|
-
searchPlaceHolder = _usePickerConfig.searchPlaceHolder;
|
|
383
|
-
|
|
384
|
-
return searchPlaceHolder;
|
|
385
|
-
}
|
|
386
|
-
function useDefaultSkinToneConfig() {
|
|
387
|
-
var _usePickerConfig2 = usePickerConfig(),
|
|
388
|
-
defaultSkinTone = _usePickerConfig2.defaultSkinTone;
|
|
389
|
-
|
|
390
|
-
return defaultSkinTone;
|
|
391
|
-
}
|
|
392
|
-
function useSkinTonesDisabledConfig() {
|
|
393
|
-
var _usePickerConfig3 = usePickerConfig(),
|
|
394
|
-
skinTonesDisabled = _usePickerConfig3.skinTonesDisabled;
|
|
395
|
-
|
|
396
|
-
return skinTonesDisabled;
|
|
397
|
-
}
|
|
398
|
-
function useEmojiStyleConfig() {
|
|
399
|
-
var _usePickerConfig4 = usePickerConfig(),
|
|
400
|
-
emojiStyle = _usePickerConfig4.emojiStyle;
|
|
401
|
-
|
|
402
|
-
return emojiStyle;
|
|
403
|
-
}
|
|
404
|
-
function useAutoFocusSearchConfig() {
|
|
405
|
-
var _usePickerConfig5 = usePickerConfig(),
|
|
406
|
-
autoFocusSearch = _usePickerConfig5.autoFocusSearch;
|
|
407
|
-
|
|
408
|
-
return autoFocusSearch;
|
|
409
|
-
}
|
|
410
|
-
function useCategoriesConfig() {
|
|
411
|
-
var _usePickerConfig6 = usePickerConfig(),
|
|
412
|
-
categories = _usePickerConfig6.categories;
|
|
413
|
-
|
|
414
|
-
return categories;
|
|
415
|
-
}
|
|
416
|
-
function useOnEmojiClickConfig() {
|
|
417
|
-
var _usePickerConfig7 = usePickerConfig(),
|
|
418
|
-
onEmojiClick = _usePickerConfig7.onEmojiClick;
|
|
419
|
-
|
|
420
|
-
return onEmojiClick;
|
|
421
|
-
}
|
|
422
|
-
function usePreviewConfig() {
|
|
423
|
-
var _usePickerConfig8 = usePickerConfig(),
|
|
424
|
-
previewConfig = _usePickerConfig8.previewConfig;
|
|
425
|
-
|
|
426
|
-
return previewConfig;
|
|
427
|
-
}
|
|
428
|
-
function useThemeConfig() {
|
|
429
|
-
var _usePickerConfig9 = usePickerConfig(),
|
|
430
|
-
theme = _usePickerConfig9.theme;
|
|
431
|
-
|
|
432
|
-
if (theme === exports.Theme.AUTO) {
|
|
433
|
-
return isSystemDarkTheme() ? exports.Theme.DARK : exports.Theme.LIGHT;
|
|
434
|
-
}
|
|
435
|
-
|
|
436
|
-
return theme;
|
|
437
|
-
}
|
|
438
|
-
function useSuggestedEmojisModeConfig() {
|
|
439
|
-
var _usePickerConfig10 = usePickerConfig(),
|
|
440
|
-
suggestedEmojisMode = _usePickerConfig10.suggestedEmojisMode;
|
|
441
|
-
|
|
442
|
-
return suggestedEmojisMode;
|
|
443
|
-
}
|
|
444
|
-
function useLazyLoadEmojisConfig() {
|
|
445
|
-
var _usePickerConfig11 = usePickerConfig(),
|
|
446
|
-
lazyLoadEmojis = _usePickerConfig11.lazyLoadEmojis;
|
|
447
|
-
|
|
448
|
-
return lazyLoadEmojis;
|
|
449
|
-
}
|
|
450
|
-
function usePickerSizeConfig() {
|
|
451
|
-
var _usePickerConfig12 = usePickerConfig(),
|
|
452
|
-
height = _usePickerConfig12.height,
|
|
453
|
-
width = _usePickerConfig12.width;
|
|
454
|
-
|
|
455
|
-
return {
|
|
456
|
-
height: height,
|
|
457
|
-
width: width
|
|
458
|
-
};
|
|
459
|
-
}
|
|
460
|
-
function useEmojiVersionConfig() {
|
|
461
|
-
var _usePickerConfig13 = usePickerConfig(),
|
|
462
|
-
emojiVersion = _usePickerConfig13.emojiVersion;
|
|
463
|
-
|
|
464
|
-
return emojiVersion;
|
|
465
|
-
}
|
|
466
|
-
|
|
467
235
|
var CDN_URL_APPLE = 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/';
|
|
468
236
|
var CDN_URL_FACEBOOK = 'https://cdn.jsdelivr.net/npm/emoji-datasource-facebook/img/facebook/64/';
|
|
469
237
|
var CDN_URL_TWITTER = 'https://cdn.jsdelivr.net/npm/emoji-datasource-twitter/img/twitter/64/';
|
|
@@ -16866,8 +16634,9 @@ function emojisByCategory(category) {
|
|
|
16866
16634
|
|
|
16867
16635
|
// @ts-ignore
|
|
16868
16636
|
return (_emojis$category = emojis == null ? void 0 : emojis[category]) != null ? _emojis$category : [];
|
|
16869
|
-
}
|
|
16870
|
-
|
|
16637
|
+
} // WARNING: DO NOT USE DIRECTLY
|
|
16638
|
+
|
|
16639
|
+
function emojiUrlByUnified(unified, emojiStyle) {
|
|
16871
16640
|
return "" + cdnUrl(emojiStyle) + unified + ".png";
|
|
16872
16641
|
}
|
|
16873
16642
|
function emojiVariations(emoji) {
|
|
@@ -16910,6 +16679,249 @@ function activeVariationFromUnified(unified) {
|
|
|
16910
16679
|
return skinToneVariations.includes(suspectedSkinTone) ? suspectedSkinTone : null;
|
|
16911
16680
|
}
|
|
16912
16681
|
|
|
16682
|
+
var _configByCategory;
|
|
16683
|
+
var categoriesOrdered = [exports.Categories.SUGGESTED, exports.Categories.SMILEYS_PEOPLE, exports.Categories.ANIMALS_NATURE, exports.Categories.FOOD_DRINK, exports.Categories.TRAVEL_PLACES, exports.Categories.ACTIVITIES, exports.Categories.OBJECTS, exports.Categories.SYMBOLS, exports.Categories.FLAGS];
|
|
16684
|
+
var SuggestedRecent = {
|
|
16685
|
+
name: 'Recently Used',
|
|
16686
|
+
category: exports.Categories.SUGGESTED
|
|
16687
|
+
};
|
|
16688
|
+
var configByCategory = (_configByCategory = {}, _configByCategory[exports.Categories.SUGGESTED] = {
|
|
16689
|
+
category: exports.Categories.SUGGESTED,
|
|
16690
|
+
name: 'Frequently Used'
|
|
16691
|
+
}, _configByCategory[exports.Categories.SMILEYS_PEOPLE] = {
|
|
16692
|
+
category: exports.Categories.SMILEYS_PEOPLE,
|
|
16693
|
+
name: 'Smileys & People'
|
|
16694
|
+
}, _configByCategory[exports.Categories.ANIMALS_NATURE] = {
|
|
16695
|
+
category: exports.Categories.ANIMALS_NATURE,
|
|
16696
|
+
name: 'Animals & Nature'
|
|
16697
|
+
}, _configByCategory[exports.Categories.FOOD_DRINK] = {
|
|
16698
|
+
category: exports.Categories.FOOD_DRINK,
|
|
16699
|
+
name: 'Food & Drink'
|
|
16700
|
+
}, _configByCategory[exports.Categories.TRAVEL_PLACES] = {
|
|
16701
|
+
category: exports.Categories.TRAVEL_PLACES,
|
|
16702
|
+
name: 'Travel & Places'
|
|
16703
|
+
}, _configByCategory[exports.Categories.ACTIVITIES] = {
|
|
16704
|
+
category: exports.Categories.ACTIVITIES,
|
|
16705
|
+
name: 'Activities'
|
|
16706
|
+
}, _configByCategory[exports.Categories.OBJECTS] = {
|
|
16707
|
+
category: exports.Categories.OBJECTS,
|
|
16708
|
+
name: 'Objects'
|
|
16709
|
+
}, _configByCategory[exports.Categories.SYMBOLS] = {
|
|
16710
|
+
category: exports.Categories.SYMBOLS,
|
|
16711
|
+
name: 'Symbols'
|
|
16712
|
+
}, _configByCategory[exports.Categories.FLAGS] = {
|
|
16713
|
+
category: exports.Categories.FLAGS,
|
|
16714
|
+
name: 'Flags'
|
|
16715
|
+
}, _configByCategory);
|
|
16716
|
+
function baseCategoriesConfig(modifiers) {
|
|
16717
|
+
return categoriesOrdered.map(function (category) {
|
|
16718
|
+
return _extends({}, configByCategory[category], modifiers && modifiers[category] && modifiers[category]);
|
|
16719
|
+
});
|
|
16720
|
+
}
|
|
16721
|
+
function categoryFromCategoryConfig(category) {
|
|
16722
|
+
return category.category;
|
|
16723
|
+
}
|
|
16724
|
+
function categoryNameFromCategoryConfig(category) {
|
|
16725
|
+
return category.name;
|
|
16726
|
+
}
|
|
16727
|
+
function mergeCategoriesConfig(userCategoriesConfig, modifiers) {
|
|
16728
|
+
var _userCategoriesConfig;
|
|
16729
|
+
|
|
16730
|
+
if (userCategoriesConfig === void 0) {
|
|
16731
|
+
userCategoriesConfig = [];
|
|
16732
|
+
}
|
|
16733
|
+
|
|
16734
|
+
if (modifiers === void 0) {
|
|
16735
|
+
modifiers = {};
|
|
16736
|
+
}
|
|
16737
|
+
|
|
16738
|
+
var extra = {};
|
|
16739
|
+
|
|
16740
|
+
if (modifiers.suggestionMode === exports.SuggestionMode.RECENT) {
|
|
16741
|
+
extra[exports.Categories.SUGGESTED] = SuggestedRecent;
|
|
16742
|
+
}
|
|
16743
|
+
|
|
16744
|
+
var base = baseCategoriesConfig(extra);
|
|
16745
|
+
|
|
16746
|
+
if (!((_userCategoriesConfig = userCategoriesConfig) != null && _userCategoriesConfig.length)) {
|
|
16747
|
+
return base;
|
|
16748
|
+
}
|
|
16749
|
+
|
|
16750
|
+
return userCategoriesConfig.map(function (category) {
|
|
16751
|
+
if (typeof category === 'string') {
|
|
16752
|
+
return getBaseConfigByCategory(category, extra[category]);
|
|
16753
|
+
}
|
|
16754
|
+
|
|
16755
|
+
return _extends({}, getBaseConfigByCategory(category.category, extra[category.category]), category);
|
|
16756
|
+
});
|
|
16757
|
+
}
|
|
16758
|
+
|
|
16759
|
+
function getBaseConfigByCategory(category, modifier) {
|
|
16760
|
+
if (modifier === void 0) {
|
|
16761
|
+
modifier = {};
|
|
16762
|
+
}
|
|
16763
|
+
|
|
16764
|
+
return Object.assign(configByCategory[category], modifier);
|
|
16765
|
+
}
|
|
16766
|
+
|
|
16767
|
+
function mergeConfig(userConfig) {
|
|
16768
|
+
var _userConfig$previewCo;
|
|
16769
|
+
|
|
16770
|
+
if (userConfig === void 0) {
|
|
16771
|
+
userConfig = {};
|
|
16772
|
+
}
|
|
16773
|
+
|
|
16774
|
+
var base = basePickerConfig();
|
|
16775
|
+
var previewConfig = Object.assign(base.previewConfig, (_userConfig$previewCo = userConfig.previewConfig) != null ? _userConfig$previewCo : {});
|
|
16776
|
+
var config = Object.assign(base, userConfig);
|
|
16777
|
+
var categories = mergeCategoriesConfig(userConfig.categories, {
|
|
16778
|
+
suggestionMode: config.suggestedEmojisMode
|
|
16779
|
+
});
|
|
16780
|
+
return _extends({}, config, {
|
|
16781
|
+
categories: categories,
|
|
16782
|
+
previewConfig: previewConfig
|
|
16783
|
+
});
|
|
16784
|
+
}
|
|
16785
|
+
function basePickerConfig() {
|
|
16786
|
+
return {
|
|
16787
|
+
autoFocusSearch: true,
|
|
16788
|
+
categories: baseCategoriesConfig(),
|
|
16789
|
+
defaultSkinTone: exports.SkinTones.NEUTRAL,
|
|
16790
|
+
emojiStyle: exports.EmojiStyle.APPLE,
|
|
16791
|
+
emojiVersion: null,
|
|
16792
|
+
getEmojiUrl: emojiUrlByUnified,
|
|
16793
|
+
height: 450,
|
|
16794
|
+
lazyLoadEmojis: false,
|
|
16795
|
+
onEmojiClick: function defaultOnClickHandler( // @ts-ignore
|
|
16796
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
16797
|
+
emoji, // @ts-ignore
|
|
16798
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
16799
|
+
event) {},
|
|
16800
|
+
previewConfig: _extends({}, basePreviewConfig),
|
|
16801
|
+
searchPlaceHolder: 'Search',
|
|
16802
|
+
skinTonesDisabled: false,
|
|
16803
|
+
suggestedEmojisMode: exports.SuggestionMode.FREQUENT,
|
|
16804
|
+
theme: exports.Theme.LIGHT,
|
|
16805
|
+
width: 350
|
|
16806
|
+
};
|
|
16807
|
+
}
|
|
16808
|
+
var basePreviewConfig = {
|
|
16809
|
+
defaultEmoji: '1f60a',
|
|
16810
|
+
defaultCaption: "What's your mood?",
|
|
16811
|
+
showPreview: true
|
|
16812
|
+
};
|
|
16813
|
+
|
|
16814
|
+
var _excluded = ["children"];
|
|
16815
|
+
var ConfigContext = /*#__PURE__*/React.createContext( /*#__PURE__*/basePickerConfig());
|
|
16816
|
+
function PickerConfigProvider(_ref) {
|
|
16817
|
+
var children = _ref.children,
|
|
16818
|
+
config = _objectWithoutPropertiesLoose(_ref, _excluded);
|
|
16819
|
+
|
|
16820
|
+
return React.createElement(ConfigContext.Provider, {
|
|
16821
|
+
value: mergeConfig(config)
|
|
16822
|
+
}, children);
|
|
16823
|
+
}
|
|
16824
|
+
function usePickerConfig() {
|
|
16825
|
+
return React.useContext(ConfigContext);
|
|
16826
|
+
}
|
|
16827
|
+
|
|
16828
|
+
function useSearchPlaceHolderConfig() {
|
|
16829
|
+
var _usePickerConfig = usePickerConfig(),
|
|
16830
|
+
searchPlaceHolder = _usePickerConfig.searchPlaceHolder;
|
|
16831
|
+
|
|
16832
|
+
return searchPlaceHolder;
|
|
16833
|
+
}
|
|
16834
|
+
function useDefaultSkinToneConfig() {
|
|
16835
|
+
var _usePickerConfig2 = usePickerConfig(),
|
|
16836
|
+
defaultSkinTone = _usePickerConfig2.defaultSkinTone;
|
|
16837
|
+
|
|
16838
|
+
return defaultSkinTone;
|
|
16839
|
+
}
|
|
16840
|
+
function useSkinTonesDisabledConfig() {
|
|
16841
|
+
var _usePickerConfig3 = usePickerConfig(),
|
|
16842
|
+
skinTonesDisabled = _usePickerConfig3.skinTonesDisabled;
|
|
16843
|
+
|
|
16844
|
+
return skinTonesDisabled;
|
|
16845
|
+
}
|
|
16846
|
+
function useEmojiStyleConfig() {
|
|
16847
|
+
var _usePickerConfig4 = usePickerConfig(),
|
|
16848
|
+
emojiStyle = _usePickerConfig4.emojiStyle;
|
|
16849
|
+
|
|
16850
|
+
return emojiStyle;
|
|
16851
|
+
}
|
|
16852
|
+
function useAutoFocusSearchConfig() {
|
|
16853
|
+
var _usePickerConfig5 = usePickerConfig(),
|
|
16854
|
+
autoFocusSearch = _usePickerConfig5.autoFocusSearch;
|
|
16855
|
+
|
|
16856
|
+
return autoFocusSearch;
|
|
16857
|
+
}
|
|
16858
|
+
function useCategoriesConfig() {
|
|
16859
|
+
var _usePickerConfig6 = usePickerConfig(),
|
|
16860
|
+
categories = _usePickerConfig6.categories;
|
|
16861
|
+
|
|
16862
|
+
return categories;
|
|
16863
|
+
}
|
|
16864
|
+
function useOnEmojiClickConfig() {
|
|
16865
|
+
var _usePickerConfig7 = usePickerConfig(),
|
|
16866
|
+
onEmojiClick = _usePickerConfig7.onEmojiClick;
|
|
16867
|
+
|
|
16868
|
+
return onEmojiClick;
|
|
16869
|
+
}
|
|
16870
|
+
function usePreviewConfig() {
|
|
16871
|
+
var _usePickerConfig8 = usePickerConfig(),
|
|
16872
|
+
previewConfig = _usePickerConfig8.previewConfig;
|
|
16873
|
+
|
|
16874
|
+
return previewConfig;
|
|
16875
|
+
}
|
|
16876
|
+
function useThemeConfig() {
|
|
16877
|
+
var _usePickerConfig9 = usePickerConfig(),
|
|
16878
|
+
theme = _usePickerConfig9.theme;
|
|
16879
|
+
|
|
16880
|
+
if (theme === exports.Theme.AUTO) {
|
|
16881
|
+
return isSystemDarkTheme() ? exports.Theme.DARK : exports.Theme.LIGHT;
|
|
16882
|
+
}
|
|
16883
|
+
|
|
16884
|
+
return theme;
|
|
16885
|
+
}
|
|
16886
|
+
function useSuggestedEmojisModeConfig() {
|
|
16887
|
+
var _usePickerConfig10 = usePickerConfig(),
|
|
16888
|
+
suggestedEmojisMode = _usePickerConfig10.suggestedEmojisMode;
|
|
16889
|
+
|
|
16890
|
+
return suggestedEmojisMode;
|
|
16891
|
+
}
|
|
16892
|
+
function useLazyLoadEmojisConfig() {
|
|
16893
|
+
var _usePickerConfig11 = usePickerConfig(),
|
|
16894
|
+
lazyLoadEmojis = _usePickerConfig11.lazyLoadEmojis;
|
|
16895
|
+
|
|
16896
|
+
return lazyLoadEmojis;
|
|
16897
|
+
}
|
|
16898
|
+
function usePickerSizeConfig() {
|
|
16899
|
+
var _usePickerConfig12 = usePickerConfig(),
|
|
16900
|
+
height = _usePickerConfig12.height,
|
|
16901
|
+
width = _usePickerConfig12.width;
|
|
16902
|
+
|
|
16903
|
+
return {
|
|
16904
|
+
height: getDimension(height),
|
|
16905
|
+
width: getDimension(width)
|
|
16906
|
+
};
|
|
16907
|
+
}
|
|
16908
|
+
function useEmojiVersionConfig() {
|
|
16909
|
+
var _usePickerConfig13 = usePickerConfig(),
|
|
16910
|
+
emojiVersion = _usePickerConfig13.emojiVersion;
|
|
16911
|
+
|
|
16912
|
+
return emojiVersion;
|
|
16913
|
+
}
|
|
16914
|
+
function useGetEmojiUrlConfig() {
|
|
16915
|
+
var _usePickerConfig14 = usePickerConfig(),
|
|
16916
|
+
getEmojiUrl = _usePickerConfig14.getEmojiUrl;
|
|
16917
|
+
|
|
16918
|
+
return getEmojiUrl;
|
|
16919
|
+
}
|
|
16920
|
+
|
|
16921
|
+
function getDimension(dimensionConfig) {
|
|
16922
|
+
return typeof dimensionConfig === 'number' ? dimensionConfig + "px" : dimensionConfig;
|
|
16923
|
+
}
|
|
16924
|
+
|
|
16913
16925
|
var alphaNumericEmojiIndex = {};
|
|
16914
16926
|
setTimeout(function () {
|
|
16915
16927
|
allEmojis.reduce(function (searchIndex, emoji) {
|
|
@@ -17819,6 +17831,7 @@ function useMouseDownHandlers(BodyRef) {
|
|
|
17819
17831
|
var _useUpdateSuggested = useUpdateSuggested(),
|
|
17820
17832
|
updateSuggested = _useUpdateSuggested[1];
|
|
17821
17833
|
|
|
17834
|
+
var getEmojiUrl = useGetEmojiUrlConfig();
|
|
17822
17835
|
var onClick = React.useCallback(function onClick(event) {
|
|
17823
17836
|
if (disallowClickRef.current) {
|
|
17824
17837
|
return;
|
|
@@ -17837,8 +17850,8 @@ function useMouseDownHandlers(BodyRef) {
|
|
|
17837
17850
|
var skinToneToUse = activeVariationFromUnified(unified) || activeSkinTone;
|
|
17838
17851
|
updateSuggested();
|
|
17839
17852
|
setsuggested(emoji, skinToneToUse);
|
|
17840
|
-
onEmojiClick(emojiClickOutput(emoji, skinToneToUse), event);
|
|
17841
|
-
}, [activeSkinTone, closeAllOpenToggles, disallowClickRef, onEmojiClick, updateSuggested]);
|
|
17853
|
+
onEmojiClick(emojiClickOutput(emoji, skinToneToUse, getEmojiUrl), event);
|
|
17854
|
+
}, [activeSkinTone, closeAllOpenToggles, disallowClickRef, onEmojiClick, updateSuggested, getEmojiUrl]);
|
|
17842
17855
|
var onMouseDown = React.useCallback(function onMouseDown(event) {
|
|
17843
17856
|
var _window;
|
|
17844
17857
|
|
|
@@ -17909,13 +17922,13 @@ function emojiFromEvent(event) {
|
|
|
17909
17922
|
return emojiFromElement(target);
|
|
17910
17923
|
}
|
|
17911
17924
|
|
|
17912
|
-
function emojiClickOutput(emoji, activeSkinTone) {
|
|
17925
|
+
function emojiClickOutput(emoji, activeSkinTone, getEmojiUrl) {
|
|
17913
17926
|
var unified = emojiUnified(emoji, activeSkinTone);
|
|
17914
17927
|
return {
|
|
17915
17928
|
activeSkinTone: activeSkinTone,
|
|
17916
17929
|
emoji: parseNativeEmoji(unified),
|
|
17917
17930
|
getImageUrl: function getImageUrl(emojiStyle) {
|
|
17918
|
-
return
|
|
17931
|
+
return getEmojiUrl(unified, emojiStyle);
|
|
17919
17932
|
},
|
|
17920
17933
|
names: emojiNames(emoji),
|
|
17921
17934
|
unified: unified,
|
|
@@ -18175,7 +18188,8 @@ function ClickableEmoji(_ref) {
|
|
|
18175
18188
|
_ref$showVariations = _ref.showVariations,
|
|
18176
18189
|
showVariations = _ref$showVariations === void 0 ? true : _ref$showVariations,
|
|
18177
18190
|
size = _ref.size,
|
|
18178
|
-
lazyLoad = _ref.lazyLoad
|
|
18191
|
+
lazyLoad = _ref.lazyLoad,
|
|
18192
|
+
getEmojiUrl = _ref.getEmojiUrl;
|
|
18179
18193
|
var hasVariations = emojiHasVariations(emoji);
|
|
18180
18194
|
return React.createElement(Button, {
|
|
18181
18195
|
className: clsx(ClassNames.emoji, (_clsx = {}, _clsx[ClassNames.hidden] = hidden, _clsx[ClassNames.hiddenOnSearch] = hiddenOnSearch, _clsx[ClassNames.visible] = !hidden && !hiddenOnSearch, _clsx[ClassNames.emojiHasVariatios] = hasVariations && showVariations, _clsx)),
|
|
@@ -18187,7 +18201,8 @@ function ClickableEmoji(_ref) {
|
|
|
18187
18201
|
emoji: emoji,
|
|
18188
18202
|
size: size,
|
|
18189
18203
|
emojiStyle: emojiStyle,
|
|
18190
|
-
lazyLoad: lazyLoad
|
|
18204
|
+
lazyLoad: lazyLoad,
|
|
18205
|
+
getEmojiUrl: getEmojiUrl
|
|
18191
18206
|
}));
|
|
18192
18207
|
}
|
|
18193
18208
|
function ViewOnlyEmoji(_ref2) {
|
|
@@ -18195,7 +18210,9 @@ function ViewOnlyEmoji(_ref2) {
|
|
|
18195
18210
|
unified = _ref2.unified,
|
|
18196
18211
|
emojiStyle = _ref2.emojiStyle,
|
|
18197
18212
|
size = _ref2.size,
|
|
18198
|
-
lazyLoad = _ref2.lazyLoad
|
|
18213
|
+
lazyLoad = _ref2.lazyLoad,
|
|
18214
|
+
_ref2$getEmojiUrl = _ref2.getEmojiUrl,
|
|
18215
|
+
getEmojiUrl = _ref2$getEmojiUrl === void 0 ? emojiUrlByUnified : _ref2$getEmojiUrl;
|
|
18199
18216
|
var style = {};
|
|
18200
18217
|
|
|
18201
18218
|
if (size) {
|
|
@@ -18211,7 +18228,8 @@ function ViewOnlyEmoji(_ref2) {
|
|
|
18211
18228
|
style: style,
|
|
18212
18229
|
emoji: asEmoji(emojiToRender),
|
|
18213
18230
|
emojiStyle: emojiStyle,
|
|
18214
|
-
lazyLoad: lazyLoad
|
|
18231
|
+
lazyLoad: lazyLoad,
|
|
18232
|
+
getEmojiUrl: getEmojiUrl
|
|
18215
18233
|
}));
|
|
18216
18234
|
}
|
|
18217
18235
|
|
|
@@ -18231,13 +18249,14 @@ function EmojiImg(_ref4) {
|
|
|
18231
18249
|
emojiStyle = _ref4.emojiStyle,
|
|
18232
18250
|
style = _ref4.style,
|
|
18233
18251
|
_ref4$lazyLoad = _ref4.lazyLoad,
|
|
18234
|
-
lazyLoad = _ref4$lazyLoad === void 0 ? false : _ref4$lazyLoad
|
|
18252
|
+
lazyLoad = _ref4$lazyLoad === void 0 ? false : _ref4$lazyLoad,
|
|
18253
|
+
getEmojiUrl = _ref4.getEmojiUrl;
|
|
18235
18254
|
|
|
18236
18255
|
var _useEmojisThatFailedT = useEmojisThatFailedToLoadState(),
|
|
18237
18256
|
setEmojisThatFailedToLoad = _useEmojisThatFailedT[1];
|
|
18238
18257
|
|
|
18239
18258
|
return React.createElement("img", {
|
|
18240
|
-
src:
|
|
18259
|
+
src: getEmojiUrl(unified, emojiStyle),
|
|
18241
18260
|
alt: emojiName(emoji),
|
|
18242
18261
|
className: clsx(ClassNames.external, 'epr-emoji-img'),
|
|
18243
18262
|
loading: lazyLoad ? 'lazy' : 'eager',
|
|
@@ -18279,6 +18298,7 @@ function Suggested(_ref) {
|
|
|
18279
18298
|
suggestedUpdated = _useUpdateSuggested[0];
|
|
18280
18299
|
|
|
18281
18300
|
var suggestedEmojisModeConfig = useSuggestedEmojisModeConfig();
|
|
18301
|
+
var getEmojiUrl = useGetEmojiUrlConfig();
|
|
18282
18302
|
var suggested = React.useMemo(function () {
|
|
18283
18303
|
var _getsuggested;
|
|
18284
18304
|
|
|
@@ -18302,7 +18322,8 @@ function Suggested(_ref) {
|
|
|
18302
18322
|
unified: suggestedItem.unified,
|
|
18303
18323
|
emojiStyle: emojiStyle,
|
|
18304
18324
|
emoji: emoji,
|
|
18305
|
-
key: suggestedItem.unified
|
|
18325
|
+
key: suggestedItem.unified,
|
|
18326
|
+
getEmojiUrl: getEmojiUrl
|
|
18306
18327
|
});
|
|
18307
18328
|
}));
|
|
18308
18329
|
}
|
|
@@ -18342,7 +18363,8 @@ function RenderCategory(_ref) {
|
|
|
18342
18363
|
var _useActiveSkinToneSta = useActiveSkinToneState(),
|
|
18343
18364
|
activeSkinTone = _useActiveSkinToneSta[0];
|
|
18344
18365
|
|
|
18345
|
-
var disallowedEmojisRef = useDisallowedEmojisRef();
|
|
18366
|
+
var disallowedEmojisRef = useDisallowedEmojisRef();
|
|
18367
|
+
var getEmojiUrl = useGetEmojiUrlConfig(); // Small trick to defer the rendering of all emoji categories until the first category is visible
|
|
18346
18368
|
// This way the user gets to actually see something and not wait for the whole picker to render.
|
|
18347
18369
|
|
|
18348
18370
|
var emojisToPush = !isPastInitialLoad && index > 1 ? [] : emojisByCategory(category);
|
|
@@ -18372,7 +18394,8 @@ function RenderCategory(_ref) {
|
|
|
18372
18394
|
hidden: failedToLoad,
|
|
18373
18395
|
hiddenOnSearch: filteredOut,
|
|
18374
18396
|
emojiStyle: emojiStyle,
|
|
18375
|
-
lazyLoad: lazyLoadEmojis
|
|
18397
|
+
lazyLoad: lazyLoadEmojis,
|
|
18398
|
+
getEmojiUrl: getEmojiUrl
|
|
18376
18399
|
});
|
|
18377
18400
|
});
|
|
18378
18401
|
return React.createElement(EmojiCategory, {
|
|
@@ -18405,6 +18428,7 @@ function EmojiVariationPicker() {
|
|
|
18405
18428
|
|
|
18406
18429
|
var setAnchoredEmojiRef = useSetAnchoredEmojiRef();
|
|
18407
18430
|
var getPointerStyle = usePointerStyle(VariationPickerRef);
|
|
18431
|
+
var getEmojiUrl = useGetEmojiUrlConfig();
|
|
18408
18432
|
var button = buttonFromTarget(AnchoredEmojiRef.current);
|
|
18409
18433
|
var visible = emoji && button && emojiHasVariations(emoji) && button.classList.contains(ClassNames.emojiHasVariatios);
|
|
18410
18434
|
var top, pointerStyle;
|
|
@@ -18433,7 +18457,8 @@ function EmojiVariationPicker() {
|
|
|
18433
18457
|
emoji: safeEmoji,
|
|
18434
18458
|
unified: unified,
|
|
18435
18459
|
emojiStyle: emojiStyle,
|
|
18436
|
-
showVariations: false
|
|
18460
|
+
showVariations: false,
|
|
18461
|
+
getEmojiUrl: getEmojiUrl
|
|
18437
18462
|
});
|
|
18438
18463
|
}) : null, React.createElement("div", {
|
|
18439
18464
|
className: "epr-emoji-pointer",
|
|
@@ -18631,6 +18656,7 @@ function Preview() {
|
|
|
18631
18656
|
var _useEmojiVariationPic = useEmojiVariationPickerState(),
|
|
18632
18657
|
variationPickerEmoji = _useEmojiVariationPic[0];
|
|
18633
18658
|
|
|
18659
|
+
var getEmojiUrl = useGetEmojiUrlConfig();
|
|
18634
18660
|
useEmojiPreviewEvents(previewConfig.showPreview, setPreviewEmoji);
|
|
18635
18661
|
|
|
18636
18662
|
if (!previewConfig.showPreview) {
|
|
@@ -18650,12 +18676,14 @@ function Preview() {
|
|
|
18650
18676
|
unified: previewEmoji == null ? void 0 : previewEmoji.unified,
|
|
18651
18677
|
emoji: asEmoji(emoji),
|
|
18652
18678
|
emojiStyle: emojiStyle,
|
|
18653
|
-
size: 45
|
|
18679
|
+
size: 45,
|
|
18680
|
+
getEmojiUrl: getEmojiUrl
|
|
18654
18681
|
}) : defaultEmoji ? React.createElement(ViewOnlyEmoji, {
|
|
18655
18682
|
unified: emojiUnified(defaultEmoji),
|
|
18656
18683
|
emoji: defaultEmoji,
|
|
18657
18684
|
emojiStyle: emojiStyle,
|
|
18658
|
-
size: 45
|
|
18685
|
+
size: 45,
|
|
18686
|
+
getEmojiUrl: getEmojiUrl
|
|
18659
18687
|
}) : null), show ? React.createElement("div", {
|
|
18660
18688
|
className: "epr-preview-emoji-label"
|
|
18661
18689
|
}, emojiName(asEmoji(emoji))) : React.createElement("div", {
|
|
@@ -19284,7 +19312,7 @@ function hasModifier(event) {
|
|
|
19284
19312
|
return metaKey || ctrlKey || altKey;
|
|
19285
19313
|
}
|
|
19286
19314
|
|
|
19287
|
-
function preloadEmoji(emoji, emojiStyle) {
|
|
19315
|
+
function preloadEmoji(getEmojiUrl, emoji, emojiStyle) {
|
|
19288
19316
|
if (!emoji) {
|
|
19289
19317
|
return;
|
|
19290
19318
|
}
|
|
@@ -19300,7 +19328,7 @@ function preloadEmoji(emoji, emojiStyle) {
|
|
|
19300
19328
|
}
|
|
19301
19329
|
|
|
19302
19330
|
emojiVariations(emoji).forEach(function (variation) {
|
|
19303
|
-
var emojiUrl =
|
|
19331
|
+
var emojiUrl = getEmojiUrl(variation, emojiStyle);
|
|
19304
19332
|
preloadImage(emojiUrl);
|
|
19305
19333
|
});
|
|
19306
19334
|
preloadedEmojs.add(unified);
|
|
@@ -19315,6 +19343,7 @@ function preloadImage(url) {
|
|
|
19315
19343
|
function useOnFocus() {
|
|
19316
19344
|
var BodyRef = useBodyRef();
|
|
19317
19345
|
var emojiStyle = useEmojiStyleConfig();
|
|
19346
|
+
var getEmojiUrl = useGetEmojiUrlConfig();
|
|
19318
19347
|
React.useEffect(function () {
|
|
19319
19348
|
if (emojiStyle === exports.EmojiStyle.NATIVE) {
|
|
19320
19349
|
return;
|
|
@@ -19341,10 +19370,10 @@ function useOnFocus() {
|
|
|
19341
19370
|
}
|
|
19342
19371
|
|
|
19343
19372
|
if (emojiHasVariations(emoji)) {
|
|
19344
|
-
preloadEmoji(emoji, emojiStyle);
|
|
19373
|
+
preloadEmoji(getEmojiUrl, emoji, emojiStyle);
|
|
19345
19374
|
}
|
|
19346
19375
|
}
|
|
19347
|
-
}, [BodyRef, emojiStyle]);
|
|
19376
|
+
}, [BodyRef, emojiStyle, getEmojiUrl]);
|
|
19348
19377
|
}
|
|
19349
19378
|
|
|
19350
19379
|
function PickerMain(_ref) {
|
|
@@ -19367,8 +19396,8 @@ function PickerRootElement(_ref2) {
|
|
|
19367
19396
|
useKeyboardNavigation();
|
|
19368
19397
|
useOnFocus();
|
|
19369
19398
|
var style = {
|
|
19370
|
-
height: height
|
|
19371
|
-
width: width
|
|
19399
|
+
height: height,
|
|
19400
|
+
width: width
|
|
19372
19401
|
};
|
|
19373
19402
|
return React.createElement("aside", {
|
|
19374
19403
|
className: clsx(ClassNames.emojiPicker, 'epr-main', (_clsx = {}, _clsx[ClassNames.searchActive] = searchModeActive, _clsx['epr-dark-theme'] = theme === exports.Theme.DARK, _clsx)),
|
|
@@ -19425,7 +19454,8 @@ function ExportedEmoji(_ref) {
|
|
|
19425
19454
|
_ref$emojiStyle = _ref.emojiStyle,
|
|
19426
19455
|
emojiStyle = _ref$emojiStyle === void 0 ? exports.EmojiStyle.APPLE : _ref$emojiStyle,
|
|
19427
19456
|
_ref$lazyLoad = _ref.lazyLoad,
|
|
19428
|
-
lazyLoad = _ref$lazyLoad === void 0 ? false : _ref$lazyLoad
|
|
19457
|
+
lazyLoad = _ref$lazyLoad === void 0 ? false : _ref$lazyLoad,
|
|
19458
|
+
getEmojiUrl = _ref.getEmojiUrl;
|
|
19429
19459
|
|
|
19430
19460
|
if (!unified) {
|
|
19431
19461
|
return null;
|
|
@@ -19435,7 +19465,8 @@ function ExportedEmoji(_ref) {
|
|
|
19435
19465
|
unified: unified,
|
|
19436
19466
|
size: size,
|
|
19437
19467
|
emojiStyle: emojiStyle,
|
|
19438
|
-
lazyLoad: lazyLoad
|
|
19468
|
+
lazyLoad: lazyLoad,
|
|
19469
|
+
getEmojiUrl: getEmojiUrl
|
|
19439
19470
|
});
|
|
19440
19471
|
}
|
|
19441
19472
|
|