emoji-picker-react 4.0.0-rc.20 → 4.0.0-rc.21
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/dist/DomUtils/keyboardNavigation.d.ts +1 -0
- package/dist/emoji-picker-react.cjs.development.css +2 -2
- package/dist/emoji-picker-react.cjs.development.js +201 -115
- 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 +203 -117
- package/dist/emoji-picker-react.esm.js.map +1 -1
- package/dist/hooks/useFilter.d.ts +1 -0
- package/package.json +1 -1
- package/src/DomUtils/keyboardNavigation.ts +9 -3
- package/src/DomUtils/selectors.ts +5 -5
- package/src/EmojiPickerReact.css +3 -0
- package/src/components/body/EmojiCategory.css +14 -19
- package/src/components/body/EmojiCategory.tsx +1 -1
- package/src/hooks/useEmojiPreviewEvents.ts +19 -1
- package/src/hooks/useFilter.ts +14 -1
- package/src/hooks/useKeyboardNavigation.ts +59 -7
- package/dist/DomUtils/lastElementChild.d.ts +0 -2
- package/src/DomUtils/lastElementChild.ts +0 -7
|
@@ -15291,9 +15291,99 @@ function useActiveCategoryScrollDetection(bodyRef) {
|
|
|
15291
15291
|
}, [bodyRef, setActiveCategory]);
|
|
15292
15292
|
}
|
|
15293
15293
|
|
|
15294
|
-
function
|
|
15295
|
-
if (!element)
|
|
15296
|
-
|
|
15294
|
+
function elementCountInRow(parent, element) {
|
|
15295
|
+
if (!parent || !element) {
|
|
15296
|
+
return 0;
|
|
15297
|
+
}
|
|
15298
|
+
|
|
15299
|
+
var parentWidth = parent.getBoundingClientRect().width;
|
|
15300
|
+
var elementWidth = element.getBoundingClientRect().width;
|
|
15301
|
+
return Math.floor(parentWidth / elementWidth);
|
|
15302
|
+
}
|
|
15303
|
+
function elementIndexInRow(parent, element) {
|
|
15304
|
+
if (!parent || !element) {
|
|
15305
|
+
return 0;
|
|
15306
|
+
}
|
|
15307
|
+
|
|
15308
|
+
var elementWidth = element.getBoundingClientRect().width;
|
|
15309
|
+
var elementLeft = element.getBoundingClientRect().left;
|
|
15310
|
+
var parentLeft = parent.getBoundingClientRect().left;
|
|
15311
|
+
return Math.floor((elementLeft - parentLeft) / elementWidth);
|
|
15312
|
+
}
|
|
15313
|
+
function rowNumber(parent, element) {
|
|
15314
|
+
if (!parent || !element) {
|
|
15315
|
+
return 0;
|
|
15316
|
+
}
|
|
15317
|
+
|
|
15318
|
+
var elementHeight = element.getBoundingClientRect().height;
|
|
15319
|
+
var elementTop = element.getBoundingClientRect().top;
|
|
15320
|
+
var parentTop = parent.getBoundingClientRect().top;
|
|
15321
|
+
return Math.floor((elementTop - parentTop) / elementHeight) - 1;
|
|
15322
|
+
}
|
|
15323
|
+
function hasNextRow(parent, element) {
|
|
15324
|
+
if (!parent || !element) {
|
|
15325
|
+
return false;
|
|
15326
|
+
}
|
|
15327
|
+
|
|
15328
|
+
var elementHeight = element.getBoundingClientRect().height;
|
|
15329
|
+
var elementTop = element.getBoundingClientRect().top;
|
|
15330
|
+
var parentTop = parent.getBoundingClientRect().top;
|
|
15331
|
+
var parentHeight = parent.getBoundingClientRect().height;
|
|
15332
|
+
return elementTop - parentTop + elementHeight < parentHeight;
|
|
15333
|
+
}
|
|
15334
|
+
|
|
15335
|
+
function getRowElements(elements, row, elementsInRow) {
|
|
15336
|
+
if (row === -1) {
|
|
15337
|
+
var lastRow = Math.floor(elements.length / elementsInRow);
|
|
15338
|
+
var firstElementIndex = lastRow * elementsInRow;
|
|
15339
|
+
var lastElementIndex = elements.length - 1;
|
|
15340
|
+
return elements.slice(firstElementIndex, lastElementIndex + 1);
|
|
15341
|
+
}
|
|
15342
|
+
|
|
15343
|
+
return elements.slice(row * elementsInRow, (row + 1) * elementsInRow);
|
|
15344
|
+
}
|
|
15345
|
+
|
|
15346
|
+
function getNextRowElements(allElements, currentRow, elementsInRow) {
|
|
15347
|
+
var nextRow = currentRow + 1;
|
|
15348
|
+
|
|
15349
|
+
if (nextRow * elementsInRow > allElements.length) {
|
|
15350
|
+
return [];
|
|
15351
|
+
}
|
|
15352
|
+
|
|
15353
|
+
return getRowElements(allElements, nextRow, elementsInRow);
|
|
15354
|
+
}
|
|
15355
|
+
|
|
15356
|
+
function getElementInRow(elements, row, elementsInRow, indexInRow) {
|
|
15357
|
+
var rowElements = getRowElements(elements, row, elementsInRow); // get element, default to last
|
|
15358
|
+
|
|
15359
|
+
return rowElements[indexInRow] || rowElements[rowElements.length - 1] || null;
|
|
15360
|
+
}
|
|
15361
|
+
function getElementInNextRow(allElements, currentRow, elementsInRow, index) {
|
|
15362
|
+
var nextRowElements = getNextRowElements(allElements, currentRow, elementsInRow); // return item in index, or last item in row
|
|
15363
|
+
|
|
15364
|
+
return nextRowElements[index] || nextRowElements[nextRowElements.length - 1] || null;
|
|
15365
|
+
}
|
|
15366
|
+
function getElementInPrevRow(allElements, currentRow, elementsInRow, index) {
|
|
15367
|
+
var prevRowElements = getRowElements(allElements, currentRow - 1, elementsInRow); // default to last
|
|
15368
|
+
|
|
15369
|
+
return prevRowElements[index] || prevRowElements[prevRowElements.length - 1] || null;
|
|
15370
|
+
}
|
|
15371
|
+
function firstVisibleElementInContainer(parent, elements) {
|
|
15372
|
+
if (!parent || !elements.length) {
|
|
15373
|
+
return null;
|
|
15374
|
+
}
|
|
15375
|
+
|
|
15376
|
+
var parentTop = parent.getBoundingClientRect().top;
|
|
15377
|
+
var parentBottom = parent.getBoundingClientRect().bottom;
|
|
15378
|
+
var visibleElements = elements.find(function (element) {
|
|
15379
|
+
var elementTop = element.getBoundingClientRect().top;
|
|
15380
|
+
var elementBottom = element.getBoundingClientRect().bottom;
|
|
15381
|
+
return elementTop >= parentTop && elementTop <= parentBottom || elementBottom >= parentTop && elementBottom <= parentBottom;
|
|
15382
|
+
});
|
|
15383
|
+
return visibleElements || null;
|
|
15384
|
+
}
|
|
15385
|
+
function hasNextElementSibling(element) {
|
|
15386
|
+
return !!element.nextElementSibling;
|
|
15297
15387
|
}
|
|
15298
15388
|
|
|
15299
15389
|
var EmojiButtonSelector = "button" + /*#__PURE__*/asSelectors(ClassNames.emoji);
|
|
@@ -15395,7 +15485,10 @@ function allVisibleEmojis(parent) {
|
|
|
15395
15485
|
}
|
|
15396
15486
|
function lastVisibleEmoji(element) {
|
|
15397
15487
|
if (!element) return null;
|
|
15398
|
-
var
|
|
15488
|
+
var allEmojis = allVisibleEmojis(element);
|
|
15489
|
+
|
|
15490
|
+
var _allEmojis$slice = allEmojis.slice(-1),
|
|
15491
|
+
last = _allEmojis$slice[0];
|
|
15399
15492
|
|
|
15400
15493
|
if (!last) {
|
|
15401
15494
|
return null;
|
|
@@ -15438,8 +15531,8 @@ function firstVisibleEmoji(parent) {
|
|
|
15438
15531
|
return null;
|
|
15439
15532
|
}
|
|
15440
15533
|
|
|
15441
|
-
var
|
|
15442
|
-
return
|
|
15534
|
+
var allEmojis = allVisibleEmojis(parent);
|
|
15535
|
+
return firstVisibleElementInContainer(parent, allEmojis);
|
|
15443
15536
|
}
|
|
15444
15537
|
function prevCategory(element) {
|
|
15445
15538
|
var category = closestCategory(element);
|
|
@@ -15803,14 +15896,29 @@ function useClearSearch() {
|
|
|
15803
15896
|
setSearchTerm('');
|
|
15804
15897
|
};
|
|
15805
15898
|
}
|
|
15899
|
+
function useAppendSearch() {
|
|
15900
|
+
var SearchInputRef = useSearchInputRef();
|
|
15901
|
+
|
|
15902
|
+
var _useSearchTermState2 = useSearchTermState(),
|
|
15903
|
+
setSearchTerm = _useSearchTermState2[1];
|
|
15904
|
+
|
|
15905
|
+
return function appendSearch(str) {
|
|
15906
|
+
if (SearchInputRef.current) {
|
|
15907
|
+
SearchInputRef.current.value = SearchInputRef.current.value + str;
|
|
15908
|
+
setSearchTerm(SearchInputRef.current.value);
|
|
15909
|
+
}
|
|
15910
|
+
|
|
15911
|
+
setSearchTerm(str);
|
|
15912
|
+
};
|
|
15913
|
+
}
|
|
15806
15914
|
function useFilter() {
|
|
15807
15915
|
var SearchInputRef = useSearchInputRef();
|
|
15808
15916
|
var filterRef = useFilterRef();
|
|
15809
15917
|
var setFilterRef = useSetFilterRef();
|
|
15810
15918
|
|
|
15811
|
-
var
|
|
15812
|
-
searchTerm =
|
|
15813
|
-
setSearchTerm =
|
|
15919
|
+
var _useSearchTermState3 = useSearchTermState(),
|
|
15920
|
+
searchTerm = _useSearchTermState3[0],
|
|
15921
|
+
setSearchTerm = _useSearchTermState3[1];
|
|
15814
15922
|
|
|
15815
15923
|
var PickerMainRef = usePickerMainRef();
|
|
15816
15924
|
return {
|
|
@@ -15893,8 +16001,8 @@ function useIsEmojiFiltered() {
|
|
|
15893
16001
|
var _useFilterRef = useFilterRef(),
|
|
15894
16002
|
filter = _useFilterRef.current;
|
|
15895
16003
|
|
|
15896
|
-
var
|
|
15897
|
-
searchTerm =
|
|
16004
|
+
var _useSearchTermState4 = useSearchTermState(),
|
|
16005
|
+
searchTerm = _useSearchTermState4[0];
|
|
15898
16006
|
|
|
15899
16007
|
return function (unified) {
|
|
15900
16008
|
return isEmojiFilteredBySearchTerm(unified, filter, searchTerm);
|
|
@@ -16046,7 +16154,7 @@ function EmojiImg(_ref3) {
|
|
|
16046
16154
|
}
|
|
16047
16155
|
}
|
|
16048
16156
|
|
|
16049
|
-
var css_248z$1 = ".EmojiPickerReact li.epr-emoji-category>.epr-emoji-category-label{align-items:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background-color:var(--epr-category-label-bg-color);color:var(--epr-category-label-text-color);display:flex;font-weight:700;height:var(--epr-category-label-height);padding:var(--epr-category-label-padding);position:-webkit-sticky;position:sticky;text-transform:capitalize;top:0;width:100%;z-index:var(--epr-category-label-z-index)}.EmojiPickerReact.epr-search-active li.epr-emoji-category>.epr-emoji-category-label{opacity:.4;position:relative}
|
|
16157
|
+
var css_248z$1 = ".EmojiPickerReact li.epr-emoji-category>.epr-emoji-category-content{grid-gap:0;display:grid;grid-template-columns:repeat(auto-fill,var(--epr-emoji-fullsize));justify-content:space-between;padding:var(--epr-category-padding);position:relative}.EmojiPickerReact li.epr-emoji-category:not(:has(.epr-visible)){display:none}.EmojiPickerReact li.epr-emoji-category>.epr-emoji-category-label{align-items:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background-color:var(--epr-category-label-bg-color);color:var(--epr-category-label-text-color);display:flex;font-weight:700;height:var(--epr-category-label-height);padding:var(--epr-category-label-padding);position:-webkit-sticky;position:sticky;text-transform:capitalize;top:0;width:100%;z-index:var(--epr-category-label-z-index)}.EmojiPickerReact.epr-search-active li.epr-emoji-category>.epr-emoji-category-label{opacity:.4;position:relative}";
|
|
16050
16158
|
styleInject(css_248z$1);
|
|
16051
16159
|
|
|
16052
16160
|
function EmojiCategory(_ref) {
|
|
@@ -16063,7 +16171,9 @@ function EmojiCategory(_ref) {
|
|
|
16063
16171
|
"data-name": category
|
|
16064
16172
|
}, createElement("div", {
|
|
16065
16173
|
className: "epr-emoji-category-label"
|
|
16066
|
-
}, categoryName),
|
|
16174
|
+
}, categoryName), createElement("div", {
|
|
16175
|
+
className: "epr-emoji-category-content"
|
|
16176
|
+
}, children));
|
|
16067
16177
|
}
|
|
16068
16178
|
|
|
16069
16179
|
function Suggested(_ref) {
|
|
@@ -16352,6 +16462,9 @@ function useEmojiPreviewEvents(allow, setPreviewEmoji) {
|
|
|
16352
16462
|
}
|
|
16353
16463
|
|
|
16354
16464
|
var bodyRef = BodyRef.current;
|
|
16465
|
+
bodyRef == null ? void 0 : bodyRef.addEventListener('keydown', onEscape, {
|
|
16466
|
+
passive: true
|
|
16467
|
+
});
|
|
16355
16468
|
bodyRef == null ? void 0 : bodyRef.addEventListener('mouseover', onMouseOver, {
|
|
16356
16469
|
passive: true
|
|
16357
16470
|
});
|
|
@@ -16381,15 +16494,30 @@ function useEmojiPreviewEvents(allow, setPreviewEmoji) {
|
|
|
16381
16494
|
});
|
|
16382
16495
|
}
|
|
16383
16496
|
|
|
16384
|
-
function onLeave() {
|
|
16497
|
+
function onLeave(e) {
|
|
16498
|
+
if (e) {
|
|
16499
|
+
var button = buttonFromTarget(e.target);
|
|
16500
|
+
|
|
16501
|
+
if (button) {
|
|
16502
|
+
return;
|
|
16503
|
+
}
|
|
16504
|
+
}
|
|
16505
|
+
|
|
16385
16506
|
setPreviewEmoji(null);
|
|
16386
16507
|
}
|
|
16387
16508
|
|
|
16509
|
+
function onEscape(e) {
|
|
16510
|
+
if (e.key === 'Escape') {
|
|
16511
|
+
setPreviewEmoji(null);
|
|
16512
|
+
}
|
|
16513
|
+
}
|
|
16514
|
+
|
|
16388
16515
|
return function () {
|
|
16389
16516
|
bodyRef == null ? void 0 : bodyRef.removeEventListener('mouseover', onMouseOver);
|
|
16390
16517
|
bodyRef == null ? void 0 : bodyRef.removeEventListener('mouseout', onLeave);
|
|
16391
16518
|
bodyRef == null ? void 0 : bodyRef.removeEventListener('focus', onEnter, true);
|
|
16392
16519
|
bodyRef == null ? void 0 : bodyRef.removeEventListener('blur', onLeave, true);
|
|
16520
|
+
bodyRef == null ? void 0 : bodyRef.removeEventListener('keydown', onEscape);
|
|
16393
16521
|
};
|
|
16394
16522
|
}, [BodyRef, allow, setPreviewEmoji]);
|
|
16395
16523
|
|
|
@@ -16620,108 +16748,17 @@ function useIsSearchMode() {
|
|
|
16620
16748
|
return !!searchTerm;
|
|
16621
16749
|
}
|
|
16622
16750
|
|
|
16623
|
-
function elementCountInRow(parent, element) {
|
|
16624
|
-
if (!parent || !element) {
|
|
16625
|
-
return 0;
|
|
16626
|
-
}
|
|
16627
|
-
|
|
16628
|
-
var parentWidth = parent.getBoundingClientRect().width;
|
|
16629
|
-
var elementWidth = element.getBoundingClientRect().width;
|
|
16630
|
-
return Math.floor(parentWidth / elementWidth);
|
|
16631
|
-
}
|
|
16632
|
-
function elementIndexInRow(parent, element) {
|
|
16633
|
-
if (!parent || !element) {
|
|
16634
|
-
return 0;
|
|
16635
|
-
}
|
|
16636
|
-
|
|
16637
|
-
var elementWidth = element.getBoundingClientRect().width;
|
|
16638
|
-
var elementLeft = element.getBoundingClientRect().left;
|
|
16639
|
-
var parentLeft = parent.getBoundingClientRect().left;
|
|
16640
|
-
return Math.floor((elementLeft - parentLeft) / elementWidth);
|
|
16641
|
-
}
|
|
16642
|
-
function rowNumber(parent, element) {
|
|
16643
|
-
if (!parent || !element) {
|
|
16644
|
-
return 0;
|
|
16645
|
-
}
|
|
16646
|
-
|
|
16647
|
-
var elementHeight = element.getBoundingClientRect().height;
|
|
16648
|
-
var elementTop = element.getBoundingClientRect().top;
|
|
16649
|
-
var parentTop = parent.getBoundingClientRect().top;
|
|
16650
|
-
return Math.floor((elementTop - parentTop) / elementHeight) - 1;
|
|
16651
|
-
}
|
|
16652
|
-
function hasNextRow(parent, element) {
|
|
16653
|
-
if (!parent || !element) {
|
|
16654
|
-
return false;
|
|
16655
|
-
}
|
|
16656
|
-
|
|
16657
|
-
var elementHeight = element.getBoundingClientRect().height;
|
|
16658
|
-
var elementTop = element.getBoundingClientRect().top;
|
|
16659
|
-
var parentTop = parent.getBoundingClientRect().top;
|
|
16660
|
-
var parentHeight = parent.getBoundingClientRect().height;
|
|
16661
|
-
return elementTop - parentTop + elementHeight < parentHeight;
|
|
16662
|
-
}
|
|
16663
|
-
|
|
16664
|
-
function getRowElements(elements, row, elementsInRow) {
|
|
16665
|
-
if (row === -1) {
|
|
16666
|
-
var lastRow = Math.floor(elements.length / elementsInRow);
|
|
16667
|
-
var firstElementIndex = lastRow * elementsInRow;
|
|
16668
|
-
var lastElementIndex = elements.length - 1;
|
|
16669
|
-
return elements.slice(firstElementIndex, lastElementIndex + 1);
|
|
16670
|
-
}
|
|
16671
|
-
|
|
16672
|
-
return elements.slice(row * elementsInRow, (row + 1) * elementsInRow);
|
|
16673
|
-
}
|
|
16674
|
-
|
|
16675
|
-
function getNextRowElements(allElements, currentRow, elementsInRow) {
|
|
16676
|
-
var nextRow = currentRow + 1;
|
|
16677
|
-
|
|
16678
|
-
if (nextRow * elementsInRow > allElements.length) {
|
|
16679
|
-
return [];
|
|
16680
|
-
}
|
|
16681
|
-
|
|
16682
|
-
return getRowElements(allElements, nextRow, elementsInRow);
|
|
16683
|
-
}
|
|
16684
|
-
|
|
16685
|
-
function getElementInRow(elements, row, elementsInRow, indexInRow) {
|
|
16686
|
-
var rowElements = getRowElements(elements, row, elementsInRow); // get element, default to last
|
|
16687
|
-
|
|
16688
|
-
return rowElements[indexInRow] || rowElements[rowElements.length - 1] || null;
|
|
16689
|
-
}
|
|
16690
|
-
function getElementInNextRow(allElements, currentRow, elementsInRow, index) {
|
|
16691
|
-
var nextRowElements = getNextRowElements(allElements, currentRow, elementsInRow); // return item in index, or last item in row
|
|
16692
|
-
|
|
16693
|
-
return nextRowElements[index] || nextRowElements[nextRowElements.length - 1] || null;
|
|
16694
|
-
}
|
|
16695
|
-
function getElementInPrevRow(allElements, currentRow, elementsInRow, index) {
|
|
16696
|
-
var prevRowElements = getRowElements(allElements, currentRow - 1, elementsInRow); // default to last
|
|
16697
|
-
|
|
16698
|
-
return prevRowElements[index] || prevRowElements[prevRowElements.length - 1] || null;
|
|
16699
|
-
}
|
|
16700
|
-
function firstVisibleElementInContainer(parent, elements) {
|
|
16701
|
-
if (!parent || !elements.length) {
|
|
16702
|
-
return null;
|
|
16703
|
-
}
|
|
16704
|
-
|
|
16705
|
-
var parentTop = parent.getBoundingClientRect().top;
|
|
16706
|
-
var parentBottom = parent.getBoundingClientRect().bottom;
|
|
16707
|
-
var visibleElements = elements.find(function (element) {
|
|
16708
|
-
var elementTop = element.getBoundingClientRect().top;
|
|
16709
|
-
var elementBottom = element.getBoundingClientRect().bottom;
|
|
16710
|
-
return elementTop >= parentTop && elementTop <= parentBottom || elementBottom >= parentTop && elementBottom <= parentBottom;
|
|
16711
|
-
});
|
|
16712
|
-
return visibleElements || null;
|
|
16713
|
-
}
|
|
16714
|
-
function hasNextElementSibling(element) {
|
|
16715
|
-
return !!element.nextElementSibling;
|
|
16716
|
-
}
|
|
16717
|
-
|
|
16718
16751
|
function getActiveElement() {
|
|
16719
16752
|
return document.activeElement;
|
|
16720
16753
|
}
|
|
16721
16754
|
|
|
16722
16755
|
function focusFirstVisibleEmoji(parent) {
|
|
16723
|
-
|
|
16724
|
-
|
|
16756
|
+
focusElement(firstVisibleEmoji(parent));
|
|
16757
|
+
}
|
|
16758
|
+
function focusAndClickFirstVisibleEmoji(parent) {
|
|
16759
|
+
var firstEmoji = firstVisibleEmoji(parent);
|
|
16760
|
+
focusElement(firstEmoji);
|
|
16761
|
+
firstEmoji == null ? void 0 : firstEmoji.click();
|
|
16725
16762
|
}
|
|
16726
16763
|
function focusLastVisibleEmoji(parent) {
|
|
16727
16764
|
focusElement(lastVisibleEmoji(parent));
|
|
@@ -16857,6 +16894,7 @@ var KeyboardEvents;
|
|
|
16857
16894
|
KeyboardEvents["ArrowLeft"] = "ArrowLeft";
|
|
16858
16895
|
KeyboardEvents["ArrowRight"] = "ArrowRight";
|
|
16859
16896
|
KeyboardEvents["Escape"] = "Escape";
|
|
16897
|
+
KeyboardEvents["Enter"] = "Enter";
|
|
16860
16898
|
})(KeyboardEvents || (KeyboardEvents = {}));
|
|
16861
16899
|
|
|
16862
16900
|
function useKeyboardNavigation() {
|
|
@@ -16878,7 +16916,7 @@ function usePickerMainKeyboardEvents() {
|
|
|
16878
16916
|
return function onKeyDown(event) {
|
|
16879
16917
|
var key = event.key;
|
|
16880
16918
|
|
|
16881
|
-
if (key ===
|
|
16919
|
+
if (key === KeyboardEvents.Escape) {
|
|
16882
16920
|
event.preventDefault();
|
|
16883
16921
|
clearSearch();
|
|
16884
16922
|
closeAllOpenToggles();
|
|
@@ -16904,6 +16942,7 @@ function usePickerMainKeyboardEvents() {
|
|
|
16904
16942
|
function useSearchInputKeyboardEvents() {
|
|
16905
16943
|
var focusSkinTonePicker = useFocusSkinTonePicker();
|
|
16906
16944
|
var PickerMainRef = usePickerMainRef();
|
|
16945
|
+
var BodyRef = useBodyRef();
|
|
16907
16946
|
var SearchInputRef = useSearchInputRef();
|
|
16908
16947
|
|
|
16909
16948
|
var _useSkinToneFanOpenSt = useSkinToneFanOpenState(),
|
|
@@ -16925,9 +16964,14 @@ function useSearchInputKeyboardEvents() {
|
|
|
16925
16964
|
event.preventDefault();
|
|
16926
16965
|
goDownFromSearchInput();
|
|
16927
16966
|
break;
|
|
16967
|
+
|
|
16968
|
+
case KeyboardEvents.Enter:
|
|
16969
|
+
event.preventDefault();
|
|
16970
|
+
focusAndClickFirstVisibleEmoji(BodyRef.current);
|
|
16971
|
+
break;
|
|
16928
16972
|
}
|
|
16929
16973
|
};
|
|
16930
|
-
}, [focusSkinTonePicker, goDownFromSearchInput, setSkinToneFanOpenState]);
|
|
16974
|
+
}, [focusSkinTonePicker, goDownFromSearchInput, setSkinToneFanOpenState, BodyRef]);
|
|
16931
16975
|
useEffect(function () {
|
|
16932
16976
|
var current = SearchInputRef.current;
|
|
16933
16977
|
|
|
@@ -16952,6 +16996,7 @@ function useSkinTonePickerKeyboardEvents() {
|
|
|
16952
16996
|
isOpen = _useSkinToneFanOpenSt2[0],
|
|
16953
16997
|
setIsOpen = _useSkinToneFanOpenSt2[1];
|
|
16954
16998
|
|
|
16999
|
+
var onType = useOnType();
|
|
16955
17000
|
var onKeyDown = useMemo(function () {
|
|
16956
17001
|
return function onKeyDown(event) {
|
|
16957
17002
|
var key = event.key;
|
|
@@ -16986,9 +17031,13 @@ function useSkinTonePickerKeyboardEvents() {
|
|
|
16986
17031
|
|
|
16987
17032
|
goDownFromSearchInput();
|
|
16988
17033
|
break;
|
|
17034
|
+
|
|
17035
|
+
default:
|
|
17036
|
+
onType(event);
|
|
17037
|
+
break;
|
|
16989
17038
|
}
|
|
16990
17039
|
};
|
|
16991
|
-
}, [isOpen, focusSearchInput, setIsOpen, goDownFromSearchInput]);
|
|
17040
|
+
}, [isOpen, focusSearchInput, setIsOpen, goDownFromSearchInput, onType]);
|
|
16992
17041
|
useEffect(function () {
|
|
16993
17042
|
var current = SkinTonePickerRef.current;
|
|
16994
17043
|
|
|
@@ -17007,6 +17056,7 @@ function useCategoryNavigationKeyboardEvents() {
|
|
|
17007
17056
|
var focusSearchInput = useFocusSearchInput();
|
|
17008
17057
|
var CategoryNavigationRef = useCategoryNavigationRef();
|
|
17009
17058
|
var BodyRef = useBodyRef();
|
|
17059
|
+
var onType = useOnType();
|
|
17010
17060
|
var onKeyDown = useMemo(function () {
|
|
17011
17061
|
return function onKeyDown(event) {
|
|
17012
17062
|
var key = event.key;
|
|
@@ -17031,9 +17081,13 @@ function useCategoryNavigationKeyboardEvents() {
|
|
|
17031
17081
|
event.preventDefault();
|
|
17032
17082
|
focusFirstVisibleEmoji(BodyRef.current);
|
|
17033
17083
|
break;
|
|
17084
|
+
|
|
17085
|
+
default:
|
|
17086
|
+
onType(event);
|
|
17087
|
+
break;
|
|
17034
17088
|
}
|
|
17035
17089
|
};
|
|
17036
|
-
}, [BodyRef, focusSearchInput]);
|
|
17090
|
+
}, [BodyRef, focusSearchInput, onType]);
|
|
17037
17091
|
useEffect(function () {
|
|
17038
17092
|
var current = CategoryNavigationRef.current;
|
|
17039
17093
|
|
|
@@ -17051,6 +17105,7 @@ function useCategoryNavigationKeyboardEvents() {
|
|
|
17051
17105
|
function useBodyKeyboardEvents() {
|
|
17052
17106
|
var BodyRef = useBodyRef();
|
|
17053
17107
|
var goUpFromBody = useGoUpFromBody();
|
|
17108
|
+
var onType = useOnType();
|
|
17054
17109
|
var onKeyDown = useMemo(function () {
|
|
17055
17110
|
return function onKeyDown(event) {
|
|
17056
17111
|
var key = event.key;
|
|
@@ -17076,9 +17131,13 @@ function useBodyKeyboardEvents() {
|
|
|
17076
17131
|
event.preventDefault();
|
|
17077
17132
|
focusVisibleEmojiOneRowUp(activeElement, goUpFromBody);
|
|
17078
17133
|
break;
|
|
17134
|
+
|
|
17135
|
+
default:
|
|
17136
|
+
onType(event);
|
|
17137
|
+
break;
|
|
17079
17138
|
}
|
|
17080
17139
|
};
|
|
17081
|
-
}, [goUpFromBody]);
|
|
17140
|
+
}, [goUpFromBody, onType]);
|
|
17082
17141
|
useEffect(function () {
|
|
17083
17142
|
var current = BodyRef.current;
|
|
17084
17143
|
|
|
@@ -17143,6 +17202,33 @@ function focusPrevSkinTone() {
|
|
|
17143
17202
|
focusPrevElementSibling(currentSkinTone);
|
|
17144
17203
|
}
|
|
17145
17204
|
|
|
17205
|
+
function useOnType() {
|
|
17206
|
+
var appendSearch = useAppendSearch();
|
|
17207
|
+
var focusSearchInput = useFocusSearchInput();
|
|
17208
|
+
var closeAllOpenToggles = useCloseAllOpenToggles();
|
|
17209
|
+
return function onType(event) {
|
|
17210
|
+
var key = event.key;
|
|
17211
|
+
|
|
17212
|
+
if (hasModifier(event)) {
|
|
17213
|
+
return;
|
|
17214
|
+
}
|
|
17215
|
+
|
|
17216
|
+
if (key.match(/(^[a-zA-Z0-9]$){1}/)) {
|
|
17217
|
+
event.preventDefault();
|
|
17218
|
+
closeAllOpenToggles();
|
|
17219
|
+
focusSearchInput();
|
|
17220
|
+
appendSearch(key);
|
|
17221
|
+
}
|
|
17222
|
+
};
|
|
17223
|
+
}
|
|
17224
|
+
|
|
17225
|
+
function hasModifier(event) {
|
|
17226
|
+
var metaKey = event.metaKey,
|
|
17227
|
+
ctrlKey = event.ctrlKey,
|
|
17228
|
+
altKey = event.altKey;
|
|
17229
|
+
return metaKey || ctrlKey || altKey;
|
|
17230
|
+
}
|
|
17231
|
+
|
|
17146
17232
|
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;height:var(--epr-picker-height);position:relative;width:var(--epr-picker-width)}";
|
|
17147
17233
|
styleInject(css_248z$b);
|
|
17148
17234
|
|
|
@@ -17165,7 +17251,7 @@ function PickerRootElement(_ref2) {
|
|
|
17165
17251
|
}, children);
|
|
17166
17252
|
}
|
|
17167
17253
|
|
|
17168
|
-
var css_248z$c = ".EmojiPickerReact{--epr-highlight-color:#007aeb;--epr-hover-bg-color:#f1f8ff;--epr-focus-bg-color:#e0f0ff;--epr-text-color:#858585;--epr-search-input-bg-color:#f6f6f6;--epr-picker-border-color:#e7e7e7;--epr-bg-color:#fff;--epr-category-icon-active-color:#6aa8de;--epr-horizontal-padding:10px;--epr-picker-width:350px;--epr-picker-height:450px;--epr-picker-border-radius:8px;--epr-search-border-color:var(--epr-highlight-color);--epr-header-padding:15px var(--epr-horizontal-padding);--epr-active-skin-tone-indicator-border-color:var(--epr-highlight-color);--epr-active-skin-hover-color:var(--epr-hover-bg-color);--epr-search-input-bg-color-active:var(--epr-search-input-bg-color);--epr-search-input-padding:0 30px;--epr-search-input-border-radius:8px;--epr-search-input-height:40px;--epr-search-input-text-color:var(--epr-text-color);--epr-search-input-placeholder-color:var(--epr-text-color);--epr-search-bar-inner-padding:var(--epr-horizontal-padding);--epr-category-navigation-button-size:30px;--epr-emoji-variation-picker-height:55px;--epr-emoji-variation-picker-bg-color:var(--epr-bg-color);--epr-preview-height:70px;--epr-preview-text-size:14px;--epr-preview-text-padding:0 var(--epr-horizontal-padding);--epr-preview-border-color:var(--epr-picker-border-color);--epr-preview-text-color:var(--epr-text-color);--epr-category-padding:0 var(--epr-horizontal-padding);--epr-category-label-bg-color:#ffffffe6;--epr-category-label-text-color:var(--epr-text-color);--epr-category-label-padding:0 var(--epr-horizontal-padding);--epr-category-label-height:40px;--epr-emoji-size:30px;--epr-emoji-padding:5px;--epr-emoji-hover-color:var(--epr-hover-bg-color);--epr-emoji-variation-indicator-color:var(--epr-picker-border-color);--epr-emoji-variation-indicator-color-hover:var(--epr-text-color);--epr-header-overlay-z-index:3;--epr-emoji-variations-indictator-z-index:1;--epr-category-label-z-index:2;--epr-skin-variation-picker-z-index:5}.EmojiPickerReact.epr-dark-theme{--epr-dark:#000;--epr-emoji-variation-picker-bg-color:var(--epr-dark);--epr-highlight-color:silver;--epr-text-color:var(--epr-highlight-color);--epr-hover-bg-color:#363636f6;--epr-focus-bg-color:#474747;--epr-search-input-bg-color:#333;--epr-category-label-bg-color:#222222e6;--epr-picker-border-color:#151617;--epr-bg-color:#222;--epr-search-input-bg-color-active:var(--epr-dark);--epr-emoji-variation-indicator-color:#444;--epr-category-icon-active-color:#3271b7}.EmojiPickerReact{background-color:var(--epr-bg-color);overflow:hidden}.EmojiPickerReact .epr-hidden,.EmojiPickerReact.epr-search-active .epr-hidden-on-search{display:none!important;opacity:0!important;pointer-events:none!important;visibility:hidden!important}.EmojiPickerReact *{box-sizing:border-box;font-family:sans-serif}.EmojiPickerReact button{background:none;border:0;cursor:pointer;outline:none}";
|
|
17254
|
+
var css_248z$c = ".EmojiPickerReact{--epr-highlight-color:#007aeb;--epr-hover-bg-color:#f1f8ff;--epr-focus-bg-color:#e0f0ff;--epr-text-color:#858585;--epr-search-input-bg-color:#f6f6f6;--epr-picker-border-color:#e7e7e7;--epr-bg-color:#fff;--epr-category-icon-active-color:#6aa8de;--epr-horizontal-padding:10px;--epr-picker-width:350px;--epr-picker-height:450px;--epr-picker-border-radius:8px;--epr-search-border-color:var(--epr-highlight-color);--epr-header-padding:15px var(--epr-horizontal-padding);--epr-active-skin-tone-indicator-border-color:var(--epr-highlight-color);--epr-active-skin-hover-color:var(--epr-hover-bg-color);--epr-search-input-bg-color-active:var(--epr-search-input-bg-color);--epr-search-input-padding:0 30px;--epr-search-input-border-radius:8px;--epr-search-input-height:40px;--epr-search-input-text-color:var(--epr-text-color);--epr-search-input-placeholder-color:var(--epr-text-color);--epr-search-bar-inner-padding:var(--epr-horizontal-padding);--epr-category-navigation-button-size:30px;--epr-emoji-variation-picker-height:55px;--epr-emoji-variation-picker-bg-color:var(--epr-bg-color);--epr-preview-height:70px;--epr-preview-text-size:14px;--epr-preview-text-padding:0 var(--epr-horizontal-padding);--epr-preview-border-color:var(--epr-picker-border-color);--epr-preview-text-color:var(--epr-text-color);--epr-category-padding:0 var(--epr-horizontal-padding);--epr-category-label-bg-color:#ffffffe6;--epr-category-label-text-color:var(--epr-text-color);--epr-category-label-padding:0 var(--epr-horizontal-padding);--epr-category-label-height:40px;--epr-emoji-size:30px;--epr-emoji-padding:5px;--epr-emoji-fullsize:calc(var(--epr-emoji-size) + var(--epr-emoji-padding)*2);--epr-emoji-hover-color:var(--epr-hover-bg-color);--epr-emoji-variation-indicator-color:var(--epr-picker-border-color);--epr-emoji-variation-indicator-color-hover:var(--epr-text-color);--epr-header-overlay-z-index:3;--epr-emoji-variations-indictator-z-index:1;--epr-category-label-z-index:2;--epr-skin-variation-picker-z-index:5}.EmojiPickerReact.epr-dark-theme{--epr-dark:#000;--epr-emoji-variation-picker-bg-color:var(--epr-dark);--epr-highlight-color:silver;--epr-text-color:var(--epr-highlight-color);--epr-hover-bg-color:#363636f6;--epr-focus-bg-color:#474747;--epr-search-input-bg-color:#333;--epr-category-label-bg-color:#222222e6;--epr-picker-border-color:#151617;--epr-bg-color:#222;--epr-search-input-bg-color-active:var(--epr-dark);--epr-emoji-variation-indicator-color:#444;--epr-category-icon-active-color:#3271b7}.EmojiPickerReact{background-color:var(--epr-bg-color);overflow:hidden}.EmojiPickerReact .epr-hidden,.EmojiPickerReact.epr-search-active .epr-hidden-on-search{display:none!important;opacity:0!important;pointer-events:none!important;visibility:hidden!important}.EmojiPickerReact *{box-sizing:border-box;font-family:sans-serif}.EmojiPickerReact button{background:none;border:0;cursor:pointer;outline:none}";
|
|
17169
17255
|
styleInject(css_248z$c);
|
|
17170
17256
|
|
|
17171
17257
|
function EmojiPicker(props) {
|