PageSourceSearch

https://toot.wales/packs/emoji_picker_dropdown_container-BOWiGtYe.js

js toot.wales collected 2026-10-02 04:07:43 UTC 13,743 bytes, 2 lines download raw bytes

1import{o as e,t}from"./chunk-CMxvf4Kt.js";import{n,t as r}from"./jsx-runtime-SsSjplwM.js";import{a as i,s as a}from"./react-intl-Cop388b4.js";import{Q as o,X as s}from"./poll-xFwn7afV.js";import{Mi as c,Ni as l}from"./render-CyxiOTyI.js";import{p as u,y as d}from"./react-router-BzQH59UT.js";import{c as f}from"./router-COf4DbtI.js";import{t as p}from"./defineProperty-ClgyJMzY.js";import{f as m}from"./redux-toolkit.modern-DmA8smPH.js";import{l as h}from"./typed_functions-CyAHd4bl.js";import{l as g,n as _}from"./immutable.es-BbKILtiW.js";import{dt as v}from"./status_quoted-zZwhcx8q.js";import{t as y}from"./classnames-CYxIelk8.js";import{t as b}from"./intl-5El_RLKu.js";var x=t(((e,t)=>{t.exports=()=>{let e=`\\ud800-\\udfff`,t=`[${e}]`,n=`[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\u1ab0-\\u1aff\\u1dc0-\\u1dff]`,r=`\\ud83c[\\udffb-\\udfff]`,i=`(?:${n}|${r})`,a=`[^${e}]`,o=`(?:\\uD83C[\\uDDE6-\\uDDFF]){2}`,s=`[\\ud800-\\udbff][\\udc00-\\udfff]`,c=`${i}?`,l=`[\\ufe0e\\ufe0f]?`,u=`(?:\\u200d(?:${[a,o,s].join(`|`)})${l+c})*`,d=l+c+u,f=`(?:${[`${a}${n}?`,n,o,s,t,`[\\uD83D\\uDC69\\uD83C\\uDFFB\\u200D\\uD83C\\uDF93]`].join(`|`)})`;return RegExp(`(?:\\ud83c\\udff4\\udb40\\udc67\\udb40\\udc62\\udb40(?:\\udc65|\\udc73|\\udc77)\\udb40(?:\\udc6e|\\udc63|\\udc6c)\\udb40(?:\\udc67|\\udc74|\\udc73)\\udb40\\udc7f)|${r}(?=${r})|${f+d}`,`g`)}})),S=t((e=>{var t=e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(e,"__esModule",{value:!0});var n=t(x());function r(e){if(typeof e!=`string`)throw Error(`Input must be a string`);var t=e.match(n.default());return t===null?0:t.length}e.length=r})),C=e(n()),w=C.useLayoutEffect,T=function(e){var t=C.useRef(e);return w(function(){t.current=e}),t},E=function(e,t){if(typeof e==`function`){e(t);return}e.current=t},D=function(e,t){var n=(0,C.useRef)();return(0,C.useCallback)(function(r){e.current=r,n.current&&E(n.current,null),n.current=t,t&&E(t,r)},[t])},O={"min-height":`0`,"max-height":`none`,height:`0`,visibility:`hidden`,overflow:`hidden`,position:`absolute`,"z-index":`-1000`,top:`0`,right:`0`,display:`block`},k=function(e){Object.keys(O).forEach(function(t){e.style.setProperty(t,O[t],`important`)})},A=null,j=function(e,t){var n=e.scrollHeight;return t.sizingStyle.boxSizing===`border-box`?n+t.borderSize:n-t.paddingSize};function M(e,t,n,r){n===void 0&&(n=1),r===void 0&&(r=1/0),A||(A=document.createElement(`textarea`),A.setAttribute(`tabindex`,`-1`),A.setAttribute(`aria-hidden`,`true`),k(A)),A.parentNode===null&&document.body.appendChild(A);var i=e.paddingSize,a=e.borderSize,o=e.sizingStyle,s=o.boxSizing;Object.keys(o).forEach(function(e){var t=e;A.style[t]=o[t]}),k(A),A.value=t;var c=j(A,e);A.value=t,c=j(A,e),A.value=`x`;var l=A.scrollHeight-i,u=l*n;s===`border-box`&&(u=u+i+a),c=Math.max(u,c);var d=l*r;return s===`border-box`&&(d=d+i+a),c=Math.min(d,c),[c,l]}var N=function(){},ee=function(e,t){return e.reduce(function(e,n){return e[n]=t[n],e},{})},te=[`borderBottomWidth`,`borderLeftWidth`,`borderRightWidth`,`borderTopWidth`,`boxSizing`,`fontFamily`,`fontSize`,`fontStyle`,`fontWeight`,`letterSpacing`,`lineHeight`,`paddingBottom`,`paddingLeft`,`paddingRight`,`paddingTop`,`tabSize`,`textIndent`,`textRendering`,`textTransform`,`width`,`wordBreak`,`wordSpacing`,`scrollbarGutter`],P=!!document.documentElement.currentStyle,F=function(e){var t=window.getComputedStyle(e);if(t===null)return null;var n=ee(te,t),r=n.boxSizing;return r===``?null:(P&&r===`border-box`&&(n.width=parseFloat(n.width)+parseFloat(n.borderRightWidth)+parseFloat(n.borderLeftWidth)+parseFloat(n.paddingRight)+parseFloat(n.paddingLeft)+`px`),{sizingStyle:n,paddingSize:parseFloat(n.paddingBottom)+parseFloat(n.paddingTop),borderSize:parseFloat(n.borderBottomWidth)+parseFloat(n.borderTopWidth)})};function I(e,t,n){var r=T(n);C.useLayoutEffect(function(){var n=function(e){return r.current(e)};if(e)return e.addEventListener(t,n),function(){return e.removeEventListener(t,n)}},[])}var L=function(e,t){I(document.body,`reset`,function(n){e.current.form===n.target&&t(n)})},R=function(e){I(window,`resize`,e)},z=function(e){I(document.fonts,`loadingdone`,e)},B=[`cacheMeasurements`,`maxRows`,`minRows`,`onChange`,`onHeightChange`],V=C.forwardRef(function(e,t){var n=e.cacheMeasurements,r=e.maxRows,i=e.minRows,a=e.onChange,o=a===void 0?N:a,s=e.onHeightChange,c=s===void 0?N:s,l=u(e,B),f=l.value!==void 0,p=C.useRef(null),m=D(p,t),h=C.useRef(0),g=C.useRef(),_=function(){var e=p.current,t=n&&g.current?g.current:F(e);if(t){g.current=t;var a=M(t,e.value||e.placeholder||`x`,i,r),o=a[0],s=a[1];h.current!==o&&(h.current=o,e.style.setProperty(`height`,o+`px`,`important`),c(o,{rowHeight:s}))}};return C.useLayoutEffect(_),L(p,function(){if(!f){var e=p.current.value;requestAnimationFrame(function(){var t=p.current;t&&e!==t.value&&_()})}}),R(_),z(_),C.createElement(`textarea`,d({},l,{onChange:function(e){f||_(),o(e)},ref:m}))});g();var H=e(y()),U=r(),W=e=>(0,U.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,height:20,viewBox:`0 -960 960 960`,width:20,...e,children:(0,U.jsx)(`path`,{d:`M612-516q25 0 42.5-17.5T672-576q0-25-17.5-42.5T612-636q-25 0-42.5 17.5T552-576q0 25 17.5 42.5T612-516Zm-264 0q25 0 42.5-17.5T408-576q0-25-17.5-42.5T348-636q-25 0-42.5 17.5T288-576q0 25 17.5 42.5T348-516Zm242.5 197q50.5-31 79.5-84H290q29 53 79.5 84T480-288q60 0 110.5-31ZM331-126q-70-30-122.5-82.5T126-330.96q-30-69.96-30-149.5t30-149.04q30-69.5 82.5-122T330.96-834q69.96-30 149.5-30t149.04 30q69.5 30 122 82.5T834-629.28q30 69.73 30 149Q864-401 834-331t-82.5 122.5Q699-156 629.28-126q-69.73 30-149 30Q401-96 331-126Zm149-354Zm221 221q91-91 91-221t-91-221q-91-91-221-91t-221 91q-91 91-91 221t91 221q91 91 221 91t221-91Z`})}),G=a({emoji:{id:`emoji_button.label`,defaultMessage:`Insert emoji`},emoji_search:{id:`emoji_button.search`,defaultMessage:`Search...`},custom:{id:`emoji_button.custom`,defaultMessage:`Custom`},recent:{id:`emoji_button.recent`,defaultMessage:`Frequently used`},search_results:{id:`emoji_button.search_results`,defaultMessage:`Search results`},people:{id:`emoji_button.people`,defaultMessage:`People`},nature:{id:`emoji_button.nature`,defaultMessage:`Nature`},food:{id:`emoji_button.food`,defaultMessage:`Food & Drink`},activity:{id:`emoji_button.activity`,defaultMessage:`Activity`},travel:{id:`emoji_button.travel`,defaultMessage:`Travel & Places`},objects:{id:`emoji_button.objects`,defaultMessage:`Objects`},symbols:{id:`emoji_button.symbols`,defaultMessage:`Symbols`},flags:{id:`emoji_button.flags`,defaultMessage:`Flags`}}),K,q,J=f?{passive:!0,capture:!0}:!0,Y=()=>(0,U.jsxs)(`div`,{className:`emoji-mart-no-results`,children:[(0,U.jsx)(q,{emoji:`sleuth_or_spy`,size:32}),(0,U.jsx)(`div`,{className:`emoji-mart-no-results-label`,children:(0,U.jsx)(i,{id:`emoji_button.not_found`,defaultMessage:`No matching emojis found`})})]}
1),X=class extends C.PureComponent{constructor(...e){super(...e),p(this,`handleClick`,e=>{this.props.onSelect(e.currentTarget.getAttribute(`data-index`)*1)}),p(this,`handleDocumentClick`,e=>{this.node&&!this.node.contains(e.target)&&this.props.onClose()}),p(this,`setRef`,e=>{this.node=e})}componentDidMount(){this.props.active&&this.attachListeners()}componentDidUpdate(){this.props.active?this.attachListeners():this.removeListeners()}componentWillUnmount(){this.removeListeners()}attachListeners(){document.addEventListener(`click`,this.handleDocumentClick,{capture:!0}),document.addEventListener(`touchend`,this.handleDocumentClick,J)}removeListeners(){document.removeEventListener(`click`,this.handleDocumentClick,{capture:!0}),document.removeEventListener(`touchend`,this.handleDocumentClick,J)}render(){let{active:e}=this.props;return(0,U.jsxs)(`div`,{className:`emoji-picker-dropdown__modifiers__menu`,style:{display:e?`block`:`none`},ref:this.setRef,children:[(0,U.jsx)(`button`,{type:`button`,onClick:this.handleClick,"data-index":1,children:(0,U.jsx)(q,{emoji:`fist`,size:22,skin:1})}),(0,U.jsx)(`button`,{type:`button`,onClick:this.handleClick,"data-index":2,children:(0,U.jsx)(q,{emoji:`fist`,size:22,skin:2})}),(0,U.jsx)(`button`,{type:`button`,onClick:this.handleClick,"data-index":3,children:(0,U.jsx)(q,{emoji:`fist`,size:22,skin:3})}),(0,U.jsx)(`button`,{type:`button`,onClick:this.handleClick,"data-index":4,children:(0,U.jsx)(q,{emoji:`fist`,size:22,skin:4})}),(0,U.jsx)(`button`,{type:`button`,onClick:this.handleClick,"data-index":5,children:(0,U.jsx)(q,{emoji:`fist`,size:22,skin:5})}),(0,U.jsx)(`button`,{type:`button`,onClick:this.handleClick,"data-index":6,children:(0,U.jsx)(q,{emoji:`fist`,size:22,skin:6})})]})}},Z=class extends C.PureComponent{constructor(...e){super(...e),p(this,`handleClick`,()=>{this.props.active?this.props.onClose():this.props.onOpen()}),p(this,`handleSelect`,e=>{this.props.onChange(e),this.props.onClose()})}render(){let{active:e,modifier:t}=this.props;return(0,U.jsxs)(`div`,{className:`emoji-picker-dropdown__modifiers`,children:[(0,U.jsx)(q,{emoji:`fist`,size:22,skin:t,onClick:this.handleClick}),(0,U.jsx)(X,{active:e,onSelect:this.handleSelect,onClose:this.props.onClose})]})}},Q=class extends C.PureComponent{constructor(...e){super(...e),p(this,`state`,{modifierOpen:!1,readyToFocus:!1}),p(this,`handleDocumentClick`,e=>{this.node&&!this.node.contains(e.target)&&!this.props.pickerButtonRef.contains(e.target)&&this.props.onClose()}),p(this,`setRef`,e=>{this.node=e}),p(this,`getI18n`,()=>{let{intl:e}=this.props;return{search:e.formatMessage(G.emoji_search),categories:{search:e.formatMessage(G.search_results),recent:e.formatMessage(G.recent),people:e.formatMessage(G.people),nature:e.formatMessage(G.nature),foods:e.formatMessage(G.food),activity:e.formatMessage(G.activity),places:e.formatMessage(G.travel),objects:e.formatMessage(G.objects),symbols:e.formatMessage(G.symbols),flags:e.formatMessage(G.flags),custom:e.formatMessage(G.custom)}}}),p(this,`handleClick`,(e,t)=>{e.native||=`:${e.id}:`,t.ctrlKey||t.metaKey||this.props.onClose(),this.props.onPick(e)}),p(this,`handleModifierOpen`,()=>{this.setState({modifierOpen:!0})}),p(this,`handleModifierClose`,()=>{this.setState({modifierOpen:!1})}),p(this,`handleModifierChange`,e=>{this.props.onSkinTone(e)})}componentDidMount(){document.addEventListener(`click`,this.handleDocumentClick,{capture:!0}),document.addEventListener(`touchend`,this.handleDocumentClick,J),requestAnimationFrame(()=>{if(this.setState({readyToFocus:!0}),this.node){let e=this.node.querySelector(`input[type="search"]`);e&&e.focus()}})}componentWillUnmount(){document.removeEventListener(`click`,this.handleDocumentClick,{capture:!0}),document.removeEventListener(`touchend`,this.handleDocumentClick,J)}render(){let{loading:e,style:t,intl:n,skinTone:r,frequentlyUsedEmojis:i}=this.props;if(e)return(0,U.jsx)(`div`,{style:{width:299}});let a=n.formatMessage(G.emoji),{modifierOpen:o}=this.state;return(0,U.jsxs)(`div`,{className:(0,H.default)(`emoji-picker-dropdown__menu`,{selecting:o}),style:t,ref:this.setRef,children:[(0,U.jsx)(K,{perLine:8,emojiSize:22,color:``,emoji:``,title:a,i18n:this.getI18n(),onClick:this.handleClick,recent:i,skin:r,showPreview:!1,showSkinTones:!1,notFound:Y,autoFocus:this.state.readyToFocus,emojiTooltip:!0}),(0,U.jsx)(Z,{active:o,modifier:r,onOpen:this.handleModifierOpen,onClose:this.handleModifierClose,onChange:this.handleModifierChange})]})}};p(Q,`defaultProps`,{style:{},loading:!0,frequentlyUsedEmojis:[]});
1var ne=b(Q),re=b(class extends C.PureComponent{constructor(...e){super(...e),p(this,`state`,{active:!1,loading:!1,placement:`bottom`}),p(this,`setRef`,e=>{this.dropdown=e}),p(this,`onShowDropdown`,()=>{this.setState({active:!0}),K||(this.setState({loading:!0}),v().then(e=>{K=e.Picker,q=e.Emoji,this.setState({loading:!1})}).catch(()=>{this.setState({loading:!1,active:!1})}))}),p(this,`onHideDropdown`,()=>{this.setState({active:!1})}),p(this,`onToggle`,e=>{!this.state.loading&&(!e.key||e.key===`Enter`)&&(this.state.active?this.onHideDropdown():this.onShowDropdown(e))}),p(this,`handleKeyDown`,e=>{e.key===`Escape`&&this.onHideDropdown()}),p(this,`setTargetRef`,e=>{this.target=e}),p(this,`findTarget`,()=>this.target),p(this,`handleOverlayEnter`,e=>{this.setState({placement:e.placement})})}render(){let{intl:e,onPickEmoji:t,onSkinTone:n,skinTone:r,frequentlyUsedEmojis:i,disabled:a}=this.props,c=e.formatMessage(G.emoji),{active:l,loading:u,placement:d}=this.state;return(0,U.jsxs)(`div`,{className:`emoji-picker-dropdown`,onKeyDown:this.handleKeyDown,ref:this.setTargetRef,children:[(0,U.jsx)(o,{title:c,"aria-expanded":l,active:l,iconComponent:W,onClick:this.onToggle,disabled:a,id:`emoji`,inverted:!0}),(0,U.jsx)(s,{show:l,placement:d,flip:!0,target:this.findTarget,popperConfig:{strategy:`fixed`,onFirstUpdate:this.handleOverlayEnter},children:({props:e,placement:a})=>(0,U.jsx)(`div`,{...e,style:{...e.style},children:(0,U.jsx)(`div`,{className:`dropdown-animation ${a}`,children:(0,U.jsx)(ne,{loading:u,onClose:this.onHideDropdown,onPick:t,onSkinTone:n,skinTone:r,frequentlyUsedEmojis:i,pickerButtonRef:this.target})})})})]})}}),ie=8,ae=2,$=[`+1`,`grinning`,`kissing_heart`,`heart_eyes`,`laughing`,`stuck_out_tongue_winking_eye`,`sweat_smile`,`joy`,`yum`,`disappointed`,`thinking_face`,`weary`,`sob`,`sunglasses`,`heart`,`ok_hand`],oe=m([e=>e.getIn([`settings`,`frequentlyUsedEmojis`],_())],e=>{let t=e.keySeq().sort((t,n)=>e.get(t)-e.get(n)).reverse().slice(0,ie*ae).toArray();if(t.length<$.length){let e=$.filter(e=>!t.includes(e));t=t.concat(e.slice(0,$.length-t.length))}return t}),se=h(e=>({skinTone:e.getIn([`settings`,`skinTone`]),frequentlyUsedEmojis:oe(e)}),(e,{onPickEmoji:t})=>({onSkinTone:t=>{e(l([`skinTone`],t))},onPickEmoji:n=>{e(c(n)),t&&t(n)}}))(re);export{S as i,V as n,w as r,se as t};
2//# sourceMappingURL=emoji_picker_dropdown_container-BOWiGtYe.js.map

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.