!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("vue")):"function"==typeof define&&define.amd?define(["exports","vue"],n):n((e=e||self).VueTwemojiPicker={},e.Vue)}(this,(function(e,n){"use strict";function t(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function i(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);n&&(i=i.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,i)}return t}function o(e){for(var n=1;n<arguments.length;n++){var o=null!=arguments[n]?arguments[n]:{};n%2?i(Object(o),!0).forEach((function(n){t(e,n,o[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):i(Object(o)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(o,n))}))}return e}function d(e){return function(e){if(Array.isArray(e))return u(e)}(e)||function(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||function(e,n){if(!e)return;if("string"==typeof e)return u(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);"Object"===t&&e.constructor&&(t=e.constructor.name);if("Map"===t||"Set"===t)return Array.from(t);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return u(e,n)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}
/*! Copyright Twitter Inc. and other contributors. Licensed under MIT */()}function u(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,i=new Array(n);t<n;t++)i[t]=e[t];return i}n=n&&Object.prototype.hasOwnProperty.call(n,"default")?n.default:n;var r=function(){var e={base:"https://twemoji.maxcdn.com/v/13.0.0/",ext:".png",size:"72x72",className:"emoji",convert:{fromCodePoint:function(e){var n="string"==typeof e?parseInt(e,16):e;if(n<65536)return r(n);return r(55296+((n-=65536)>>10),56320+(1023&n))},toCodePoint:A},onerror:function(){this.parentNode&&this.parentNode.replaceChild(a(this.alt,!1),this)},parse:function(n,t){t&&"function"!=typeof t||(t={callback:t});return("string"==typeof n?p:f)(n,{callback:t.callback||c,attributes:"function"==typeof t.attributes?t.attributes:m,base:"string"==typeof t.base?t.base:e.base,ext:t.ext||e.ext,size:t.folder||(i=t.size||e.size,"number"==typeof i?i+"x"+i:i),className:t.className||e.className,onerror:t.onerror||e.onerror});var i},replace:h,test:function(e){t.lastIndex=0;var n=t.test(e);return t.lastIndex=0,n}},n={"&":"&amp;","<":"&lt;",">":"&gt;","'":"&#39;",'"':"&quot;"},t=/(?:\ud83d\udc68\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c[\udffc-\udfff]|\ud83d\udc68\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c[\udffb\udffd-\udfff]|\ud83d\udc68\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c[\udffb\udffc\udffe\udfff]|\ud83d\udc68\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c[\udffb-\udffd\udfff]|\ud83d\udc68\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c[\udffb-\udffe]|\ud83d\udc69\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c[\udffc-\udfff]|\ud83d\udc69\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c[\udffc-\udfff]|\ud83d\udc69\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c[\udffb\udffd-\udfff]|\ud83d\udc69\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c[\udffb\udffd-\udfff]|\ud83d\udc69\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c[\udffb\udffc\udffe\udfff]|\ud83d\udc69\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c[\udffb\udffc\udffe\udfff]|\ud83d\udc69\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c[\udffb-\udffd\udfff]|\ud83d\udc69\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c[\udffb-\udffd\udfff]|\ud83d\udc69\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c[\udffb-\udffe]|\ud83d\udc69\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c[\udffb-\udffe]|\ud83e\uddd1\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c[\udffb-\udfff]|\ud83e\uddd1\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c[\udffb-\udfff]|\ud83e\uddd1\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c[\udffb-\udfff]|\ud83e\uddd1\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c[\udffb-\udfff]|\ud83e\uddd1\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c[\udffb-\udfff]|\ud83e\uddd1\u200d\ud83e\udd1d\u200d\ud83e\uddd1|\ud83d\udc6b\ud83c[\udffb-\udfff]|\ud83d\udc6c\ud83c[\udffb-\udfff]|\ud83d\udc6d\ud83c[\udffb-\udfff]|\ud83d[\udc6b-\udc6d])|(?:\ud83d[\udc68\udc69]|\ud83e\uddd1)(?:\ud83c[\udffb-\udfff])?\u200d(?:\u2695\ufe0f|\u2696\ufe0f|\u2708\ufe0f|\ud83c[\udf3e\udf73\udf7c\udf84\udf93\udfa4\udfa8\udfeb\udfed]|\ud83d[\udcbb\udcbc\udd27\udd2c\ude80\ude92]|\ud83e[\uddaf-\uddb3\uddbc\uddbd])|(?:\ud83c[\udfcb\udfcc]|\ud83d[\udd74\udd75]|\u26f9)((?:\ud83c[\udffb-\udfff]|\ufe0f)\u200d[\u2640\u2642]\ufe0f)|(?:\ud83c[\udfc3\udfc4\udfca]|\ud83d[\udc6e\udc70\udc71\udc73\udc77\udc81\udc82\udc86\udc87\ude45-\ude47\ude4b\ude4d\ude4e\udea3\udeb4-\udeb6]|\ud83e[\udd26\udd35\udd37-\udd39\udd3d\udd3e\uddb8\uddb9\uddcd-\uddcf\uddd6-\udddd])(?:\ud83c[\udffb-\udfff])?\u200d[\u2640\u2642]\ufe0f|(?:\ud83d\udc68\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68|\ud83d\udc68\u200d\ud83d\udc68\u200d\ud83d\udc66\u200d\ud83d\udc66|\ud83d\udc68\u200d\ud83d\udc68\u200d\ud83d\udc67\u200d\ud83d[\udc66\udc67]|\ud83d\udc68\u200d\ud83d\udc69\u200d\ud83d\udc66\u200d\ud83d\udc66|\ud83d\udc68\u200d\ud83d\udc69\u200d\ud83d\udc67\u200d\ud83d[\udc66\udc67]|\ud83d\udc69\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d[\udc68\udc69]|\ud83d\udc69\u200d\ud83d\udc69\u200d\ud83d\udc66\u200d\ud83d\udc66|\ud83d\udc69\u200d\ud83d\udc69\u200d\ud83d\udc67\u200d\ud83d[\udc66\udc67]|\ud83d\udc68\u200d\u2764\ufe0f\u200d\ud83d\udc68|\ud83d\udc68\u200d\ud83d\udc66\u200d\ud83d\udc66|\ud83d\udc68\u200d\ud83d\udc67\u200d\ud83d[\udc66\udc67]|\ud83d\udc68\u200d\ud83d\udc68\u200d\ud83d[\udc66\udc67]|\ud83d\udc68\u200d\ud83d\udc69\u200d\ud83d[\udc66\udc67]|\ud83d\udc69\u200d\u2764\ufe0f\u200d\ud83d[\udc68\udc69]|\ud83d\udc69\u200d\ud83d\udc66\u200d\ud83d\udc66|\ud83d\udc69\u200d\ud83d\udc67\u200d\ud83d[\udc66\udc67]|\ud83d\udc69\u200d\ud83d\udc69\u200d\ud83d[\udc66\udc67]|\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f|\ud83c\udff3\ufe0f\u200d\ud83c\udf08|\ud83c\udff4\u200d\u2620\ufe0f|\ud83d\udc15\u200d\ud83e\uddba|\ud83d\udc3b\u200d\u2744\ufe0f|\ud83d\udc41\u200d\ud83d\udde8|\ud83d\udc68\u200d\ud83d[\udc66\udc67]|\ud83d\udc69\u200d\ud83d[\udc66\udc67]|\ud83d\udc6f\u200d\u2640\ufe0f|\ud83d\udc6f\u200d\u2642\ufe0f|\ud83e\udd3c\u200d\u2640\ufe0f|\ud83e\udd3c\u200d\u2642\ufe0f|\ud83e\uddde\u200d\u2640\ufe0f|\ud83e\uddde\u200d\u2642\ufe0f|\ud83e\udddf\u200d\u2640\ufe0f|\ud83e\udddf\u200d\u2642\ufe0f|\ud83d\udc08\u200d\u2b1b)|[#*0-9]\ufe0f?\u20e3|(?:[©®\u2122\u265f]\ufe0f)|(?:\ud83c[\udc04\udd70\udd71\udd7e\udd7f\ude02\ude1a\ude2f\ude37\udf21\udf24-\udf2c\udf36\udf7d\udf96\udf97\udf99-\udf9b\udf9e\udf9f\udfcd\udfce\udfd4-\udfdf\udff3\udff5\udff7]|\ud83d[\udc3f\udc41\udcfd\udd49\udd4a\udd6f\udd70\udd73\udd76-\udd79\udd87\udd8a-\udd8d\udda5\udda8\uddb1\uddb2\uddbc\uddc2-\uddc4\uddd1-\uddd3\udddc-\uddde\udde1\udde3\udde8\uddef\uddf3\uddfa\udecb\udecd-\udecf\udee0-\udee5\udee9\udef0\udef3]|[\u203c\u2049\u2139\u2194-\u2199\u21a9\u21aa\u231a\u231b\u2328\u23cf\u23ed-\u23ef\u23f1\u23f2\u23f8-\u23fa\u24c2\u25aa\u25ab\u25b6\u25c0\u25fb-\u25fe\u2600-\u2604\u260e\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262a\u262e\u262f\u2638-\u263a\u2640\u2642\u2648-\u2653\u2660\u2663\u2665\u2666\u2668\u267b\u267f\u2692-\u2697\u2699\u269b\u269c\u26a0\u26a1\u26a7\u26aa\u26ab\u26b0\u26b1\u26bd\u26be\u26c4\u26c5\u26c8\u26cf\u26d1\u26d3\u26d4\u26e9\u26ea\u26f0-\u26f5\u26f8\u26fa\u26fd\u2702\u2708\u2709\u270f\u2712\u2714\u2716\u271d\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u2764\u27a1\u2934\u2935\u2b05-\u2b07\u2b1b\u2b1c\u2b50\u2b55\u3030\u303d\u3297\u3299])(?:\ufe0f|(?!\ufe0e))|(?:(?:\ud83c[\udfcb\udfcc]|\ud83d[\udd74\udd75\udd90]|[\u261d\u26f7\u26f9\u270c\u270d])(?:\ufe0f|(?!\ufe0e))|(?:\ud83c[\udf85\udfc2-\udfc4\udfc7\udfca]|\ud83d[\udc42\udc43\udc46-\udc50\udc66-\udc69\udc6e\udc70-\udc78\udc7c\udc81-\udc83\udc85-\udc87\udcaa\udd7a\udd95\udd96\ude45-\ude47\ude4b-\ude4f\udea3\udeb4-\udeb6\udec0\udecc]|\ud83e[\udd0c\udd0f\udd18-\udd1c\udd1e\udd1f\udd26\udd30-\udd39\udd3d\udd3e\udd77\uddb5\uddb6\uddb8\uddb9\uddbb\uddcd-\uddcf\uddd1-\udddd]|[\u270a\u270b]))(?:\ud83c[\udffb-\udfff])?|(?:\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f|\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc73\udb40\udc63\udb40\udc74\udb40\udc7f|\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc77\udb40\udc6c\udb40\udc73\udb40\udc7f|\ud83c\udde6\ud83c[\udde8-\uddec\uddee\uddf1\uddf2\uddf4\uddf6-\uddfa\uddfc\uddfd\uddff]|\ud83c\udde7\ud83c[\udde6\udde7\udde9-\uddef\uddf1-\uddf4\uddf6-\uddf9\uddfb\uddfc\uddfe\uddff]|\ud83c\udde8\ud83c[\udde6\udde8\udde9\uddeb-\uddee\uddf0-\uddf5\uddf7\uddfa-\uddff]|\ud83c\udde9\ud83c[\uddea\uddec\uddef\uddf0\uddf2\uddf4\uddff]|\ud83c\uddea\ud83c[\udde6\udde8\uddea\uddec\udded\uddf7-\uddfa]|\ud83c\uddeb\ud83c[\uddee-\uddf0\uddf2\uddf4\uddf7]|\ud83c\uddec\ud83c[\udde6\udde7\udde9-\uddee\uddf1-\uddf3\uddf5-\uddfa\uddfc\uddfe]|\ud83c\udded\ud83c[\uddf0\uddf2\uddf3\uddf7\uddf9\uddfa]|\ud83c\uddee\ud83c[\udde8-\uddea\uddf1-\uddf4\uddf6-\uddf9]|\ud83c\uddef\ud83c[\uddea\uddf2\uddf4\uddf5]|\ud83c\uddf0\ud83c[\uddea\uddec-\uddee\uddf2\uddf3\uddf5\uddf7\uddfc\uddfe\uddff]|\ud83c\uddf1\ud83c[\udde6-\udde8\uddee\uddf0\uddf7-\uddfb\uddfe]|\ud83c\uddf2\ud83c[\udde6\udde8-\udded\uddf0-\uddff]|\ud83c\uddf3\ud83c[\udde6\udde8\uddea-\uddec\uddee\uddf1\uddf4\uddf5\uddf7\uddfa\uddff]|\ud83c\uddf4\ud83c\uddf2|\ud83c\uddf5\ud83c[\udde6\uddea-\udded\uddf0-\uddf3\uddf7-\uddf9\uddfc\uddfe]|\ud83c\uddf6\ud83c\udde6|\ud83c\uddf7\ud83c[\uddea\uddf4\uddf8\uddfa\uddfc]|\ud83c\uddf8\ud83c[\udde6-\uddea\uddec-\uddf4\uddf7-\uddf9\uddfb\uddfd-\uddff]|\ud83c\uddf9\ud83c[\udde6\udde8\udde9\uddeb-\udded\uddef-\uddf4\uddf7\uddf9\uddfb\uddfc\uddff]|\ud83c\uddfa\ud83c[\udde6\uddec\uddf2\uddf3\uddf8\uddfe\uddff]|\ud83c\uddfb\ud83c[\udde6\udde8\uddea\uddec\uddee\uddf3\uddfa]|\ud83c\uddfc\ud83c[\uddeb\uddf8]|\ud83c\uddfd\ud83c\uddf0|\ud83c\uddfe\ud83c[\uddea\uddf9]|\ud83c\uddff\ud83c[\udde6\uddf2\uddfc]|\ud83c[\udccf\udd8e\udd91-\udd9a\udde6-\uddff\ude01\ude32-\ude36\ude38-\ude3a\ude50\ude51\udf00-\udf20\udf2d-\udf35\udf37-\udf7c\udf7e-\udf84\udf86-\udf93\udfa0-\udfc1\udfc5\udfc6\udfc8\udfc9\udfcf-\udfd3\udfe0-\udff0\udff4\udff8-\udfff]|\ud83d[\udc00-\udc3e\udc40\udc44\udc45\udc51-\udc65\udc6a\udc6f\udc79-\udc7b\udc7d-\udc80\udc84\udc88-\udca9\udcab-\udcfc\udcff-\udd3d\udd4b-\udd4e\udd50-\udd67\udda4\uddfb-\ude44\ude48-\ude4a\ude80-\udea2\udea4-\udeb3\udeb7-\udebf\udec1-\udec5\uded0-\uded2\uded5-\uded7\udeeb\udeec\udef4-\udefc\udfe0-\udfeb]|\ud83e[\udd0d\udd0e\udd10-\udd17\udd1d\udd20-\udd25\udd27-\udd2f\udd3a\udd3c\udd3f-\udd45\udd47-\udd76\udd78\udd7a-\uddb4\uddb7\uddba\uddbc-\uddcb\uddd0\uddde-\uddff\ude70-\ude74\ude78-\ude7a\ude80-\ude86\ude90-\udea8\udeb0-\udeb6\udec0-\udec2\uded0-\uded6]|[\u23e9-\u23ec\u23f0\u23f3\u267e\u26ce\u2705\u2728\u274c\u274e\u2753-\u2755\u2795-\u2797\u27b0\u27bf\ue50a])|\ufe0f/g,i=/\uFE0F/g,o=String.fromCharCode(8205),d=/[&<>'"]/g,u=/^(?:iframe|noframes|noscript|script|select|style|textarea)$/,r=String.fromCharCode;return e;function a(e,n){return document.createTextNode(n?e.replace(i,""):e)}function c(e,n){return"".concat(n.base,n.size,"/",e,n.ext)}function s(e){return A(e.indexOf(o)<0?e.replace(i,""):e)}function f(e,n){for(var i,o,d,r,c,f,p,l,m,h,A,g,b,v=function e(n,t){for(var i,o,d=n.childNodes,r=d.length;r--;)3===(o=(i=d[r]).nodeType)?t.push(i):1!==o||"ownerSVGElement"in i||u.test(i.nodeName.toLowerCase())||e(i,t);return t}(e,[]),j=v.length;j--;){for(d=!1,r=document.createDocumentFragment(),f=(c=v[j]).nodeValue,l=0;p=t.exec(f);){if((m=p.index)!==l&&r.appendChild(a(f.slice(l,m),!0)),g=s(A=p[0]),l=m+A.length,b=n.callback(g,n),g&&b){for(o in(h=new Image).onerror=n.onerror,h.setAttribute("draggable","false"),i=n.attributes(A,g))i.hasOwnProperty(o)&&0!==o.indexOf("on")&&!h.hasAttribute(o)&&h.setAttribute(o,i[o]);h.className=n.className,h.alt=A,h.src=b,d=!0,r.appendChild(h)}h||r.appendChild(a(A,!1)),h=null}d&&(l<f.length&&r.appendChild(a(f.slice(l),!0)),c.parentNode.replaceChild(r,c))}return e}function p(e,n){return h(e,(function(e){var t,i,o=e,u=s(e),r=n.callback(u,n);if(u&&r){for(i in o="<img ".concat('class="',n.className,'" ','draggable="false" ','alt="',e,'"',' src="',r,'"'),t=n.attributes(e,u))t.hasOwnProperty(i)&&0!==i.indexOf("on")&&-1===o.indexOf(" "+i+"=")&&(o=o.concat(" ",i,'="',t[i].replace(d,l),'"'));o=o.concat("/>")}return o}))}function l(e){return n[e]}function m(){return null}function h(e,n){return String(e).replace(t,n)}function A(e,n){for(var t=[],i=0,o=0,d=0;d<e.length;)i=e.charCodeAt(d++),o?(t.push((65536+(o-55296<<10)+(i-56320)).toString(16)),o=0):55296<=i&&i<=56319?o=i:t.push(i.toString(16));return t.join(n||"-")}}(),a={getEmojiImgFromUnicode:function(e,n){return r.parse(e,n)},getEmojiImgArrayFromEmojiPack:function(e,n){var t,i=[];if(0!==(null==(e=JSON.parse(JSON.stringify(e)))?void 0:e.length))for(var o=0;o<e.length;o++){i[o]={group:e[o].group,emojiList:[]};for(var d=0;d<e[o].emojiList.length;d++){var u={unicode:"",img:"",skins:[],tags:[]},r=e[o].emojiList[d];if((null===(t=r.skins)||void 0===t?void 0:t.length)>0){u.unicode=r.unicode,u.skins=[];for(var a=0;a<r.skins.length;a++){var c={unicode:r.skins[a].unicode,img:this.getEmojiImgFromUnicode(r.skins[a].unicode,n)};u.skins.push(c)}}else u.unicode=r.unicode;u.img=this.getEmojiImgFromUnicode(u.unicode,n),i[o].emojiList.push(u)}}return i},getEmojiImgArrayFromEmojiPackByTerm:function(e,n,t){var i,o=[];if(0!==(null==(e=JSON.parse(JSON.stringify(e)))?void 0:e.length))for(var d=0;d<e.length;d++)for(var u=0;u<e[d].emojiList.length;u++){var r={unicode:"",img:"",skins:[],tags:[]},a=e[d].emojiList[u];if((null===(i=a.skins)||void 0===i?void 0:i.length)>0){r.unicode=a.unicode,r.skins=[];for(var c=0;c<a.skins.length;c++){var s={unicode:a.skins[c].unicode,img:this.getEmojiImgFromUnicode(a.skins[c].unicode,n)};r.skins.push(s)}}else r.unicode=e[d].emojiList[u].unicode;r.img=this.getEmojiImgFromUnicode(r.unicode,n);for(var f=0;f<a.tags.length;f++)if(a.tags[f].includes(t)){o.push(r);break}}return o}};function c(e){var n=e.getBoundingClientRect();return{width:n.width,height:n.height,top:n.top,right:n.right,bottom:n.bottom,left:n.left,x:n.left,y:n.top}}function s(e){if("[object Window]"!==e.toString()){var n=e.ownerDocument;return n?n.defaultView:window}return e}function f(e){var n=s(e);return{scrollLeft:n.pageXOffset,scrollTop:n.pageYOffset}}function p(e){return e instanceof s(e).Element||e instanceof Element}function l(e){return e instanceof s(e).HTMLElement||e instanceof HTMLElement}function m(e){return e?(e.nodeName||"").toLowerCase():null}function h(e){return(p(e)?e.ownerDocument:e.document).documentElement}function A(e){return c(h(e)).left+f(e).scrollLeft}function g(e){return s(e).getComputedStyle(e)}function b(e){var n=g(e),t=n.overflow,i=n.overflowX,o=n.overflowY;return/auto|scroll|overlay|hidden/.test(t+o+i)}function v(e,n,t){void 0===t&&(t=!1);var i,o,d=h(n),u=c(e),r={scrollLeft:0,scrollTop:0},a={x:0,y:0};return t||(("body"!==m(n)||b(d))&&(r=(i=n)!==s(i)&&l(i)?{scrollLeft:(o=i).scrollLeft,scrollTop:o.scrollTop}:f(i)),l(n)?((a=c(n)).x+=n.clientLeft,a.y+=n.clientTop):d&&(a.x=A(d))),{x:u.left+r.scrollLeft-a.x,y:u.top+r.scrollTop-a.y,width:u.width,height:u.height}}function j(e){return{x:e.offsetLeft,y:e.offsetTop,width:e.offsetWidth,height:e.offsetHeight}}function y(e){return"html"===m(e)?e:e.assignedSlot||e.parentNode||e.host||h(e)}function x(e,n){void 0===n&&(n=[]);var t=function e(n){return["html","body","#document"].indexOf(m(n))>=0?n.ownerDocument.body:l(n)&&b(n)?n:e(y(n))}(e),i="body"===m(t),o=s(t),d=i?[o].concat(o.visualViewport||[],b(t)?t:[]):t,u=n.concat(d);return i?u:u.concat(x(y(d)))}function w(e){return["table","td","th"].indexOf(m(e))>=0}function k(e){return l(e)&&"fixed"!==g(e).position?e.offsetParent:null}function E(e){for(var n=s(e),t=k(e);t&&w(t);)t=k(t);return t&&"body"===m(t)&&"static"===g(t).position?n:t||n}var C="top",O="bottom",S="right",P="left",T=[C,O,S,P],I=T.reduce((function(e,n){return e.concat([n+"-start",n+"-end"])}),[]),D=[].concat(T,["auto"]).reduce((function(e,n){return e.concat([n,n+"-start",n+"-end"])}),[]),U=["beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite"];function B(e){var n=new Map,t=new Set,i=[];return e.forEach((function(e){n.set(e.name,e)})),e.forEach((function(e){t.has(e.name)||function e(o){t.add(o.name),[].concat(o.requires||[],o.requiresIfExists||[]).forEach((function(i){if(!t.has(i)){var o=n.get(i);o&&e(o)}})),i.push(o)}(e)})),i}function L(e){return e.split("-")[0]}var F={placement:"bottom",modifiers:[],strategy:"absolute"};function M(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++)n[t]=arguments[t];return!n.some((function(e){return!(e&&"function"==typeof e.getBoundingClientRect)}))}function _(e){void 0===e&&(e={});var n=e,t=n.defaultModifiers,i=void 0===t?[]:t,o=n.defaultOptions,d=void 0===o?F:o;return function(e,n,t){void 0===t&&(t=d);var o,u,r={placement:"bottom",orderedModifiers:[],options:Object.assign({},F,{},d),modifiersData:{},elements:{reference:e,popper:n},attributes:{},styles:{}},a=[],c=!1,s={state:r,setOptions:function(t){f(),r.options=Object.assign({},d,{},r.options,{},t),r.scrollParents={reference:p(e)?x(e):e.contextElement?x(e.contextElement):[],popper:x(n)};var o,u,c=function(e){var n=B(e);return U.reduce((function(e,t){return e.concat(n.filter((function(e){return e.phase===t})))}),[])}((o=[].concat(i,r.options.modifiers),u=o.reduce((function(e,n){var t=e[n.name];return e[n.name]=t?Object.assign({},t,{},n,{options:Object.assign({},t.options,{},n.options),data:Object.assign({},t.data,{},n.data)}):n,e}),{}),Object.keys(u).map((function(e){return u[e]}))));return r.orderedModifiers=c.filter((function(e){return e.enabled})),r.orderedModifiers.forEach((function(e){var n=e.name,t=e.options,i=void 0===t?{}:t,o=e.effect;if("function"==typeof o){var d=o({state:r,name:n,instance:s,options:i});a.push(d||function(){})}})),s.update()},forceUpdate:function(){if(!c){var e=r.elements,n=e.reference,t=e.popper;if(M(n,t)){r.rects={reference:v(n,E(t),"fixed"===r.options.strategy),popper:j(t)},r.reset=!1,r.placement=r.options.placement,r.orderedModifiers.forEach((function(e){return r.modifiersData[e.name]=Object.assign({},e.data)}));for(var i=0;i<r.orderedModifiers.length;i++)if(!0!==r.reset){var o=r.orderedModifiers[i],d=o.fn,u=o.options,a=void 0===u?{}:u,f=o.name;"function"==typeof d&&(r=d({state:r,options:a,name:f,instance:s})||r)}else r.reset=!1,i=-1}}},update:(o=function(){return new Promise((function(e){s.forceUpdate(),e(r)}))},function(){return u||(u=new Promise((function(e){Promise.resolve().then((function(){u=void 0,e(o())}))}))),u}),destroy:function(){f(),c=!0}};if(!M(e,n))return s;function f(){a.forEach((function(e){return e()})),a=[]}return s.setOptions(t).then((function(e){!c&&t.onFirstUpdate&&t.onFirstUpdate(e)})),s}}var R={passive:!0};function $(e){return e.split("-")[1]}function z(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}function W(e){var n,t=e.reference,i=e.element,o=e.placement,d=o?L(o):null,u=o?$(o):null,r=t.x+t.width/2-i.width/2,a=t.y+t.height/2-i.height/2;switch(d){case C:n={x:r,y:t.y-i.height};break;case O:n={x:r,y:t.y+t.height};break;case S:n={x:t.x+t.width,y:a};break;case P:n={x:t.x-i.width,y:a};break;default:n={x:t.x,y:t.y}}var c=d?z(d):null;if(null!=c){var s="y"===c?"height":"width";switch(u){case"start":n[c]=Math.floor(n[c])-Math.floor(t[s]/2-i[s]/2);break;case"end":n[c]=Math.floor(n[c])+Math.ceil(t[s]/2-i[s]/2)}}return n}var N={top:"auto",right:"auto",bottom:"auto",left:"auto"};function G(e){var n,t=e.popper,i=e.popperRect,o=e.placement,d=e.offsets,u=e.position,r=e.gpuAcceleration,a=e.adaptive,c=function(e){var n=e.x,t=e.y,i=window.devicePixelRatio||1;return{x:Math.round(n*i)/i||0,y:Math.round(t*i)/i||0}}(d),f=c.x,p=c.y,l=d.hasOwnProperty("x"),m=d.hasOwnProperty("y"),A=P,g=C,b=window;if(a){var v=E(t);v===s(t)&&(v=h(t)),o===C&&(g=O,p-=v.clientHeight-i.height,p*=r?1:-1),o===P&&(A=S,f-=v.clientWidth-i.width,f*=r?1:-1)}var j,y=Object.assign({position:u},a&&N);return r?Object.assign({},y,((j={})[g]=m?"0":"",j[A]=l?"0":"",j.transform=(b.devicePixelRatio||1)<2?"translate("+f+"px, "+p+"px)":"translate3d("+f+"px, "+p+"px, 0)",j)):Object.assign({},y,((n={})[g]=m?p+"px":"",n[A]=l?f+"px":"",n.transform="",n))}function H(e){return parseFloat(e)||0}function K(e){var n=s(e),t=function(e){var n=l(e)?g(e):{};return{top:H(n.borderTopWidth),right:H(n.borderRightWidth),bottom:H(n.borderBottomWidth),left:H(n.borderLeftWidth)}}(e),i="html"===m(e),o=A(e),d=e.clientWidth+t.right,u=e.clientHeight+t.bottom;return i&&n.innerHeight-e.clientHeight>50&&(u=n.innerHeight-t.bottom),{top:i?0:e.clientTop,right:e.clientLeft>t.left?t.right:i?n.innerWidth-d-o:e.offsetWidth-d,bottom:i?n.innerHeight-u:e.offsetHeight-u,left:i?o:e.clientLeft}}function J(e,n){var t=Boolean(n.getRootNode&&n.getRootNode().host);if(e.contains(n))return!0;if(t){var i=n;do{if(i&&e.isSameNode(i))return!0;i=i.parentNode||i.host}while(i)}return!1}function q(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function V(e,n){return"viewport"===n?q(function(e){var n=s(e),t=n.visualViewport,i=n.innerWidth,o=n.innerHeight;return t&&/iPhone|iPod|iPad/.test(navigator.platform)&&(i=t.width,o=t.height),{width:i,height:o,x:0,y:0}}(e)):l(n)?c(n):q(function(e){var n=s(e),t=f(e),i=v(h(e),n);return i.height=Math.max(i.height,n.innerHeight),i.width=Math.max(i.width,n.innerWidth),i.x=-t.scrollLeft,i.y=-t.scrollTop,i}(h(e)))}function Y(e,n,t){var i="clippingParents"===n?function(e){var n=x(e),t=["absolute","fixed"].indexOf(g(e).position)>=0&&l(e)?E(e):e;return p(t)?n.filter((function(e){return p(e)&&J(e,t)})):[]}(e):[].concat(n),o=[].concat(i,[t]),d=o[0],u=o.reduce((function(n,t){var i=V(e,t),o=K(l(t)?t:h(e));return n.top=Math.max(i.top+o.top,n.top),n.right=Math.min(i.right-o.right,n.right),n.bottom=Math.min(i.bottom-o.bottom,n.bottom),n.left=Math.max(i.left+o.left,n.left),n}),V(e,d));return u.width=u.right-u.left,u.height=u.bottom-u.top,u.x=u.left,u.y=u.top,u}function Z(e){return Object.assign({},{top:0,right:0,bottom:0,left:0},{},e)}function Q(e,n){return n.reduce((function(n,t){return n[t]=e,n}),{})}function X(e,n){void 0===n&&(n={});var t=n,i=t.placement,o=void 0===i?e.placement:i,d=t.boundary,u=void 0===d?"clippingParents":d,r=t.rootBoundary,a=void 0===r?"viewport":r,s=t.elementContext,f=void 0===s?"popper":s,l=t.altBoundary,m=void 0!==l&&l,A=t.padding,g=void 0===A?0:A,b=Z("number"!=typeof g?g:Q(g,T)),v="popper"===f?"reference":"popper",j=e.elements.reference,y=e.rects.popper,x=e.elements[m?v:f],w=Y(p(x)?x:x.contextElement||h(e.elements.popper),u,a),k=c(j),E=W({reference:k,element:y,strategy:"absolute",placement:o}),P=q(Object.assign({},y,{},E)),I="popper"===f?P:k,D={top:w.top-I.top+b.top,bottom:I.bottom-w.bottom+b.bottom,left:w.left-I.left+b.left,right:I.right-w.right+b.right},U=e.modifiersData.offset;if("popper"===f&&U){var B=U[o];Object.keys(D).forEach((function(e){var n=[S,O].indexOf(e)>=0?1:-1,t=[C,O].indexOf(e)>=0?"y":"x";D[e]+=B[t]*n}))}return D}var ee=[{name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(e){var n=e.state,t=e.instance,i=e.options,o=i.scroll,d=void 0===o||o,u=i.resize,r=void 0===u||u,a=s(n.elements.popper),c=[].concat(n.scrollParents.reference,n.scrollParents.popper);return d&&c.forEach((function(e){e.addEventListener("scroll",t.update,R)})),r&&a.addEventListener("resize",t.update,R),function(){d&&c.forEach((function(e){e.removeEventListener("scroll",t.update,R)})),r&&a.removeEventListener("resize",t.update,R)}},data:{}},{name:"popperOffsets",enabled:!0,phase:"read",fn:function(e){var n=e.state,t=e.name;n.modifiersData[t]=W({reference:n.rects.reference,element:n.rects.popper,strategy:"absolute",placement:n.placement})},data:{}},{name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(e){var n=e.state,t=e.options,i=t.gpuAcceleration,o=void 0===i||i,d=t.adaptive,u=void 0===d||d,r={placement:L(n.placement),popper:n.elements.popper,popperRect:n.rects.popper,gpuAcceleration:o};null!=n.modifiersData.popperOffsets&&(n.styles.popper=Object.assign({},n.styles.popper,{},G(Object.assign({},r,{offsets:n.modifiersData.popperOffsets,position:n.options.strategy,adaptive:u})))),null!=n.modifiersData.arrow&&(n.styles.arrow=Object.assign({},n.styles.arrow,{},G(Object.assign({},r,{offsets:n.modifiersData.arrow,position:"absolute",adaptive:!1})))),n.attributes.popper=Object.assign({},n.attributes.popper,{"data-popper-placement":n.placement})},data:{}},{name:"applyStyles",enabled:!0,phase:"write",fn:function(e){var n=e.state;Object.keys(n.elements).forEach((function(e){var t=n.styles[e]||{},i=n.attributes[e]||{},o=n.elements[e];l(o)&&m(o)&&(Object.assign(o.style,t),Object.keys(i).forEach((function(e){var n=i[e];!1===n?o.removeAttribute(e):o.setAttribute(e,!0===n?"":n)})))}))},effect:function(e){var n=e.state,t={popper:{position:n.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(n.elements.popper.style,t.popper),n.elements.arrow&&Object.assign(n.elements.arrow.style,t.arrow),function(){Object.keys(n.elements).forEach((function(e){var i=n.elements[e],o=n.attributes[e]||{},d=Object.keys(n.styles.hasOwnProperty(e)?n.styles[e]:t[e]).reduce((function(e,n){return e[n]="",e}),{});l(i)&&m(i)&&(Object.assign(i.style,d),Object.keys(o).forEach((function(e){i.removeAttribute(e)})))}))}},requires:["computeStyles"]}],ne={left:"right",right:"left",bottom:"top",top:"bottom"};function te(e){return e.replace(/left|right|bottom|top/g,(function(e){return ne[e]}))}var ie={start:"end",end:"start"};function oe(e){return e.replace(/start|end/g,(function(e){return ie[e]}))}function de(e,n){void 0===n&&(n={});var t=n,i=t.placement,o=t.boundary,d=t.rootBoundary,u=t.padding,r=t.flipVariations,a=t.allowedAutoPlacements,c=void 0===a?D:a,s=$(i),f=(s?r?I:I.filter((function(e){return $(e)===s})):T).filter((function(e){return c.indexOf(e)>=0})).reduce((function(n,t){return n[t]=X(e,{placement:t,boundary:o,rootBoundary:d,padding:u})[L(t)],n}),{});return Object.keys(f).sort((function(e,n){return f[e]-f[n]}))}var ue={name:"flip",enabled:!0,phase:"main",fn:function(e){var n=e.state,t=e.options,i=e.name;if(!n.modifiersData[i]._skip){for(var o=t.mainAxis,d=void 0===o||o,u=t.altAxis,r=void 0===u||u,a=t.fallbackPlacements,c=t.padding,s=t.boundary,f=t.rootBoundary,p=t.altBoundary,l=t.flipVariations,m=void 0===l||l,h=t.allowedAutoPlacements,A=n.options.placement,g=L(A),b=a||(g===A||!m?[te(A)]:function(e){if("auto"===L(e))return[];var n=te(e);return[oe(e),n,oe(n)]}(A)),v=[A].concat(b).reduce((function(e,t){return e.concat("auto"===L(t)?de(n,{placement:t,boundary:s,rootBoundary:f,padding:c,flipVariations:m,allowedAutoPlacements:h}):t)}),[]),j=n.rects.reference,y=n.rects.popper,x=new Map,w=!0,k=v[0],E=0;E<v.length;E++){var T=v[E],I=L(T),D="start"===$(T),U=[C,O].indexOf(I)>=0,B=U?"width":"height",F=X(n,{placement:T,boundary:s,rootBoundary:f,altBoundary:p,padding:c}),M=U?D?S:P:D?O:C;j[B]>y[B]&&(M=te(M));var _=te(M),R=[];if(d&&R.push(F[I]<=0),r&&R.push(F[M]<=0,F[_]<=0),R.every((function(e){return e}))){k=T,w=!1;break}x.set(T,R)}if(w)for(var z=function(e){var n=v.find((function(n){var t=x.get(n);if(t)return t.slice(0,e).every((function(e){return e}))}));if(n)return k=n,"break"},W=m?3:1;W>0;W--){if("break"===z(W))break}n.placement!==k&&(n.modifiersData[i]._skip=!0,n.placement=k,n.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};var re={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(e){var n=e.state,t=e.options,i=e.name,o=t.offset,d=void 0===o?[0,0]:o,u=D.reduce((function(e,t){return e[t]=function(e,n,t){var i=L(e),o=[P,C].indexOf(i)>=0?-1:1,d="function"==typeof t?t(Object.assign({},n,{placement:e})):t,u=d[0],r=d[1];return u=u||0,r=(r||0)*o,[P,S].indexOf(i)>=0?{x:r,y:u}:{x:u,y:r}}(t,n.rects,d),e}),{}),r=u[n.placement],a=r.x,c=r.y;null!=n.modifiersData.popperOffsets&&(n.modifiersData.popperOffsets.x+=a,n.modifiersData.popperOffsets.y+=c),n.modifiersData[i]=u}};function ae(e,n,t){return Math.max(e,Math.min(n,t))}var ce={name:"arrow",enabled:!0,phase:"main",fn:function(e){var n,t=e.state,i=e.name,o=t.elements.arrow,d=t.modifiersData.popperOffsets,u=L(t.placement),r=z(u),a=[P,S].indexOf(u)>=0?"height":"width";if(o&&d){var c=t.modifiersData[i+"#persistent"].padding,s=j(o),f="y"===r?C:P,p="y"===r?O:S,l=t.rects.reference[a]+t.rects.reference[r]-d[r]-t.rects.popper[a],m=d[r]-t.rects.reference[r],h=E(o),A=h?"y"===r?h.clientHeight||0:h.clientWidth||0:0,g=l/2-m/2,b=c[f],v=A-s[a]-c[p],y=A/2-s[a]/2+g,x=ae(b,y,v),w=r;t.modifiersData[i]=((n={})[w]=x,n.centerOffset=x-y,n)}},effect:function(e){var n=e.state,t=e.options,i=e.name,o=t.element,d=void 0===o?"[data-popper-arrow]":o,u=t.padding,r=void 0===u?0:u;null!=d&&("string"!=typeof d||(d=n.elements.popper.querySelector(d)))&&J(n.elements.popper,d)&&(n.elements.arrow=d,n.modifiersData[i+"#persistent"]={padding:Z("number"!=typeof r?r:Q(r,T))})},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};var se={name:"preventOverflow",enabled:!0,phase:"main",fn:function(e){var n=e.state,t=e.options,i=e.name,o=t.mainAxis,d=void 0===o||o,u=t.altAxis,r=void 0!==u&&u,a=t.boundary,c=t.rootBoundary,s=t.altBoundary,f=t.padding,p=t.tether,l=void 0===p||p,m=t.tetherOffset,h=void 0===m?0:m,A=X(n,{boundary:a,rootBoundary:c,padding:f,altBoundary:s}),g=L(n.placement),b=$(n.placement),v=!b,y=z(g),x="x"===y?"y":"x",w=n.modifiersData.popperOffsets,k=n.rects.reference,T=n.rects.popper,I="function"==typeof h?h(Object.assign({},n.rects,{placement:n.placement})):h,D={x:0,y:0};if(w){if(d){var U="y"===y?C:P,B="y"===y?O:S,F="y"===y?"height":"width",M=w[y],_=w[y]+A[U],R=w[y]-A[B],W=l?-T[F]/2:0,N="start"===b?k[F]:T[F],G="start"===b?-T[F]:-k[F],H=n.elements.arrow,K=l&&H?j(H):{width:0,height:0},J=n.modifiersData["arrow#persistent"]?n.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},q=J[U],V=J[B],Y=ae(0,k[F],K[F]),Z=v?k[F]/2-W-Y-q-I:N-Y-q-I,Q=v?-k[F]/2+W+Y+V+I:G+Y+V+I,ee=n.elements.arrow&&E(n.elements.arrow),ne=ee?"y"===y?ee.clientTop||0:ee.clientLeft||0:0,te=n.modifiersData.offset?n.modifiersData.offset[n.placement][y]:0,ie=w[y]+Z-te-ne,oe=w[y]+Q-te,de=ae(l?Math.min(_,ie):_,M,l?Math.max(R,oe):R);w[y]=de,D[y]=de-M}if(r){var ue="x"===y?C:P,re="x"===y?O:S,ce=w[x],se=ae(ce+A[ue],ce,ce-A[re]);w[x]=se,D[x]=se-ce}n.modifiersData[i]=D}},requiresIfExists:["offset"]},fe=n;fe="default"in fe?fe.default:fe;/^2\./.test(fe.version)||fe.util.warn("VueClickaway 2.2.2 only supports Vue 2.x, and does not support Vue "+fe.version);var pe="_vue_clickaway_handler";function le(e,n,t){me(e);var i=t.context,o=n.value;if("function"==typeof o){var d=!1;setTimeout((function(){d=!0}),0),e[pe]=function(n){var t=n.path||(n.composedPath?n.composedPath():void 0);if(d&&(t?t.indexOf(e)<0:!e.contains(n.target)))return o.call(i,n)},document.documentElement.addEventListener("click",e[pe],!1)}}function me(e){document.documentElement.removeEventListener("click",e[pe],!1),delete e[pe]}var he={bind:le,update:function(e,n){n.value!==n.oldValue&&le(e,n)},unbind:me},Ae={version:"2.2.2",directive:he,mixin:{directives:{onClickaway:he}}},ge=n.extend({mixins:[Ae.mixin],name:"PopupEmoji",data:function(){return{containerRef:null,buttonRef:null,popperOpen:!1,debouncedPopperOpen:!1,popperInstance:null}},props:{disabled:{default:!1,type:Boolean},placement:{default:"top-start",type:String},autoflip:{default:!1,type:Boolean},arrowEnabled:{default:!1,type:Boolean},triggerType:{default:"click",type:String,validator:function(e){return"click"!==e&&"hover"!==e&&console.error('The value entered for the prop "triggerType" is invalid. Valid values: "click" and "hover".'),!0}},extraPaddingOffset:{default:5,type:Number},closeOnClickaway:{default:!0,type:Boolean}},mounted:function(){var e=this,n=[].concat(d(ee),[re,se]);this.autoflip&&n.push(ue),this.arrowEnabled&&n.push(ce);var t=_({defaultModifiers:n});this.containerRef=this.$refs.container,this.buttonRef=this.$refs.button,this.popperInstance=t(this.buttonRef,this.containerRef,{placement:this.placement,modifiers:[{name:"offset",options:{offset:function(n){var t=n.placement;return t.includes("bottom")?(e.arrowEnabled,[0,e.extraPaddingOffset]):t.includes("top")?(e.arrowEnabled,[0,e.extraPaddingOffset]):t.includes("left")?(e.arrowEnabled,[0,e.extraPaddingOffset]):t.includes("right")?(e.arrowEnabled,[0,e.extraPaddingOffset]):[0,0]}}},{name:"arrow",options:{element:"#arrow"}}]})},watch:{popperOpen:function(e){var n=this;e?this.$refs.container.setAttribute("data-show",""):this.$refs.container.removeAttribute("data-show"),this.$emit("popperOpenChanged",e),setTimeout((function(){n.debouncedPopperOpen=e}),300)}},methods:{clickTriggerPopper:function(){if(!this.disabled&&"click"===this.triggerType){var e=this.popperInstance;this.$refs.container.hasAttribute("data-show")?(this.popperOpen=!1,setTimeout(e.forceUpdate,1)):(this.popperOpen=!0,setTimeout(e.forceUpdate,1))}},clickAwayPopper:function(){if(!this.disabled&&this.closeOnClickaway){var e=this.popperInstance;this.debouncedPopperOpen&&(this.popperOpen=!1,setTimeout(e.forceUpdate,1))}},hoverTriggerPopper:function(){if(!this.disabled&&"hover"===this.triggerType){var e=this.popperInstance;this.$refs.container.hasAttribute("data-show")?(this.popperOpen=!1,setTimeout(e.forceUpdate,1)):(this.popperOpen=!0,setTimeout(e.forceUpdate,1))}}}});function be(e,n,t,i,o,d,u,r,a,c){"boolean"!=typeof u&&(a=r,r=u,u=!1);const s="function"==typeof t?t.options:t;let f;if(e&&e.render&&(s.render=e.render,s.staticRenderFns=e.staticRenderFns,s._compiled=!0,o&&(s.functional=!0)),i&&(s._scopeId=i),d?(f=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),n&&n.call(this,a(e)),e&&e._registeredComponents&&e._registeredComponents.add(d)},s._ssrRegister=f):n&&(f=u?function(e){n.call(this,c(e,this.$root.$options.shadowRoot))}:function(e){n.call(this,r(e))}),f)if(s.functional){const e=s.render;s.render=function(n,t){return f.call(t),e(n,t)}}else{const e=s.beforeCreate;s.beforeCreate=e?[].concat(e,f):[f]}return t}const ve="undefined"!=typeof navigator&&/msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());function je(e){return(e,n)=>function(e,n){const t=ve?n.media||"default":e,i=xe[t]||(xe[t]={ids:new Set,styles:[]});if(!i.ids.has(e)){i.ids.add(e);let t=n.source;if(n.map&&(t+="\n/*# sourceURL="+n.map.sources[0]+" */",t+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(n.map))))+" */"),i.element||(i.element=document.createElement("style"),i.element.type="text/css",n.media&&i.element.setAttribute("media",n.media),void 0===ye&&(ye=document.head||document.getElementsByTagName("head")[0]),ye.appendChild(i.element)),"styleSheet"in i.element)i.styles.push(t),i.element.styleSheet.cssText=i.styles.filter(Boolean).join("\n");else{const e=i.ids.size-1,n=document.createTextNode(t),o=i.element.childNodes;o[e]&&i.element.removeChild(o[e]),o.length?i.element.insertBefore(n,o[e]):i.element.appendChild(n)}}}(e,n)}let ye;const xe={};var we=ge,ke=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("div",[t("div",{directives:[{name:"on-clickaway",rawName:"v-on-clickaway",value:e.clickAwayPopper,expression:"clickAwayPopper"}],ref:"container",attrs:{id:"popper-container"},on:{mouseleave:e.hoverTriggerPopper}},[t("div",{attrs:{id:this.arrowEnabled?"arrow":"arrow-disabled","data-popper-arrow":""}}),e._v(" "),t("div",{attrs:{id:"popper-inner"}},[e.containerRef?e._t("container"):e._e()],2)]),e._v(" "),t("div",{ref:"button",attrs:{id:"popper-button"},on:{click:e.clickTriggerPopper,mouseenter:e.hoverTriggerPopper}},[e.buttonRef?e._t("button"):e._e()],2)])};ke._withStripped=!0;var Ee=be({render:ke,staticRenderFns:[]},(function(e){e&&e("data-v-4eddff16_0",{source:"/* *Animation */\n#popper-container {\n  padding: 0;\n  background: #f7f7f7;\n  border: none;\n  border-radius: 3px;\n  -webkit-animation: fadein 300ms;\n          animation: fadein 300ms;\n  z-index: 1;\n  display: none;\n}\n#popper-container[data-show] {\n  display: block;\n}\n#popper-button {\n  display: inline-block;\n}\n#arrow {\n  position: absolute;\n  z-index: -1;\n}\n#arrow::before {\n  position: absolute;\n  z-index: -1;\n  content: '';\n  -webkit-transform: rotate(45deg);\n          transform: rotate(45deg);\n  background: #f0f0f0;\n  width: 24px;\n  height: 24px;\n}\n#popper-container[data-popper-placement^='top'] > #arrow {\n  bottom: 12px;\n  padding-right: 32px;\n}\n#popper-container[data-popper-placement^='top-start'] > #arrow {\n  bottom: 12px;\n  padding-right: 20px;\n}\n#popper-container[data-popper-placement^='bottom'] > #arrow {\n  top: -12px;\n  padding-right: 32px;\n}\n#popper-container[data-popper-placement^='bottom-start'] > #arrow {\n  top: -12px;\n  padding-right: 20px;\n}\n#popper-container[data-popper-placement^='left'] > #arrow {\n  right: 12px;\n  padding-bottom: 32px;\n}\n#popper-container[data-popper-placement^='left-start'] > #arrow {\n  right: 12px;\n  padding-bottom: 5px;\n}\n#popper-container[data-popper-placement^='right'] > #arrow {\n  left: -12px;\n  padding-bottom: 32px;\n}\n#popper-container[data-popper-placement^='right-start'] > #arrow {\n  left: -12px;\n  padding-bottom: 5px;\n}\n@-webkit-keyframes fadein {\nfrom {\n    opacity: 0;\n}\nto {\n    opacity: 1;\n}\n}\n@keyframes fadein {\nfrom {\n    opacity: 0;\n}\nto {\n    opacity: 1;\n}\n}\n",map:{version:3,sources:["/Users/yxy/yxy/code/vue-twemoji-picker/src/components/PopupEmoji.vue","PopupEmoji.vue"],names:[],mappings:"AA4BA,eAAA;AAWA;EACA,UAAA;EACA,mBAAA;EACA,YAAA;EACA,kBAAA;EACA,+BAAA;UAAA,uBAAA;EACA,UAAA;EACA,aAAA;ACrCA;ADuCA;EACA,cAAA;ACrCA;ADyCA;EACA,qBAAA;ACvCA;AD0CA;EACA,kBAAA;EACA,WAAA;ACxCA;AD0CA;EACA,kBAAA;EACA,WAAA;EACA,WAAA;EACA,gCAAA;UAAA,wBAAA;EACA,mBAAA;EACA,WAAA;EACA,YAAA;ACxCA;AD4CA;EACA,YAAA;EACA,mBAAA;AC1CA;AD6CA;EACA,YAAA;EACA,mBAAA;AC3CA;AD8CA;EACA,UAAA;EACA,mBAAA;AC5CA;AD+CA;EACA,UAAA;EACA,mBAAA;AC7CA;ADgDA;EACA,WAAA;EACA,oBAAA;AC9CA;ADiDA;EACA,WAAA;EACA,mBAAA;AC/CA;ADkDA;EACA,WAAA;EACA,oBAAA;AChDA;ADmDA;EACA,WAAA;EACA,mBAAA;ACjDA;AD/BA;AACA;IACA,UAAA;ACyCE;ADtCF;IACA,UAAA;ACwCE;AACF;AD/CA;AACA;IACA,UAAA;ACyDE;ADtDF;IACA,UAAA;ACwDE;AACF",file:"PopupEmoji.vue",sourcesContent:["<template>\n  <div>\n    <div\n      ref=\"container\"\n      id=\"popper-container\"\n      v-on-clickaway=\"clickAwayPopper\"\n      @mouseleave=\"hoverTriggerPopper\"\n    >\n      <div\n        :id=\"this.arrowEnabled ? 'arrow' : 'arrow-disabled'\"\n        data-popper-arrow\n      />\n      <div id=\"popper-inner\">\n        <slot name=\"container\" v-if=\"containerRef\" />\n      </div>\n    </div>\n    <div\n      ref=\"button\"\n      id=\"popper-button\"\n      @click=\"clickTriggerPopper\"\n      @mouseenter=\"hoverTriggerPopper\"\n    >\n      <slot name=\"button\" v-if=\"buttonRef\" />\n    </div>\n  </div>\n</template>\n\n<style lang=\"stylus\">\n/* *Animation */\n@keyframes fadein {\n  from {\n    opacity: 0;\n  }\n\n  to {\n    opacity: 1;\n  }\n}\n\n#popper-container {\n  padding: 0;\n  background: #f7f7f7;\n  border: none;\n  border-radius: 3px;\n  animation: fadein 300ms;\n  z-index: 1;\n  display: none;\n\n  &[data-show] {\n    display: block;\n  }\n}\n\n#popper-button {\n  display: inline-block;\n}\n\n#arrow {\n  position: absolute;\n  z-index: -1;\n\n  &::before {\n    position: absolute;\n    z-index: -1;\n    content: '';\n    transform: rotate(45deg);\n    background: #f0f0f0;\n    width: 24px;\n    height: 24px;\n  }\n}\n\n#popper-container[data-popper-placement^='top'] > #arrow {\n  bottom: 12px;\n  padding-right: 32px;\n}\n\n#popper-container[data-popper-placement^='top-start'] > #arrow {\n  bottom: 12px;\n  padding-right: 20px;\n}\n\n#popper-container[data-popper-placement^='bottom'] > #arrow {\n  top: -12px;\n  padding-right: 32px;\n}\n\n#popper-container[data-popper-placement^='bottom-start'] > #arrow {\n  top: -12px;\n  padding-right: 20px;\n}\n\n#popper-container[data-popper-placement^='left'] > #arrow {\n  right: 12px;\n  padding-bottom: 32px;\n}\n\n#popper-container[data-popper-placement^='left-start'] > #arrow {\n  right: 12px;\n  padding-bottom: 5px;\n}\n\n#popper-container[data-popper-placement^='right'] > #arrow {\n  left: -12px;\n  padding-bottom: 32px;\n}\n\n#popper-container[data-popper-placement^='right-start'] > #arrow {\n  left: -12px;\n  padding-bottom: 5px;\n}\n</style>\n\n<script lang=\"ts\">\nimport Vue from 'vue';\nimport {\n  popperGenerator,\n  defaultModifiers,\n} from '@popperjs/core/lib/popper-lite';\nimport flip from '@popperjs/core/lib/modifiers/flip';\nimport offset from '@popperjs/core/lib/modifiers/offset';\nimport arrow from '@popperjs/core/lib/modifiers/arrow';\nimport preventOverflow from '@popperjs/core/lib/modifiers/preventOverflow';\nimport PopperObject from '../interfaces/PopperObject';\n\nimport VueClickaway from 'vue-clickaway';\n\nexport default Vue.extend({\n  mixins: [VueClickaway.mixin],\n  name: 'PopupEmoji',\n  data() {\n    return {\n      // eslint-disable-next-line\n      containerRef: null as HTMLElement | null,\n      buttonRef: null as HTMLElement | null,\n      popperOpen: false as boolean,\n      debouncedPopperOpen: false as boolean,\n      popperInstance: null as any | null,\n    };\n  },\n  props: {\n    disabled: {\n      default: false,\n      type: Boolean as () => boolean,\n    },\n    placement: {\n      default: 'top-start',\n      type: String as () => string,\n    },\n    autoflip: {\n      default: false,\n      type: Boolean as () => boolean,\n    },\n    arrowEnabled: {\n      default: false,\n      type: Boolean as () => boolean,\n    },\n    triggerType: {\n      default: 'click',\n      type: String as () => string,\n      validator: function (value) {\n        if (value !== 'click' && value !== 'hover') {\n          console.error(\n            'The value entered for the prop \"triggerType\" is invalid. ' +\n              'Valid values: \"click\" and \"hover\".'\n          );\n        }\n        return true;\n      },\n    },\n    extraPaddingOffset: {\n      default: 5,\n      type: Number,\n    },\n    closeOnClickaway: {\n      default: true,\n      type: Boolean as () => boolean,\n    },\n  },\n  mounted(): void {\n    const defaultModifiersObj: any = [\n      ...defaultModifiers,\n      offset,\n      preventOverflow,\n    ];\n    if (this.autoflip) defaultModifiersObj.push(flip);\n    if (this.arrowEnabled) defaultModifiersObj.push(arrow);\n\n    const createPopper = popperGenerator({\n      defaultModifiers: defaultModifiersObj,\n    });\n\n    this.containerRef = this.$refs.container;\n    this.buttonRef = this.$refs.button;\n\n    this.popperInstance = createPopper(this.buttonRef, this.containerRef, {\n      placement: this.placement,\n      modifiers: [\n        {\n          name: 'offset',\n          options: {\n            offset: ({ placement }: PopperObject) => {\n              if (placement.includes('bottom')) {\n                return this.arrowEnabled\n                  ? [0, this.extraPaddingOffset]\n                  : [0, this.extraPaddingOffset];\n              }\n              if (placement.includes('top')) {\n                return this.arrowEnabled\n                  ? [0, this.extraPaddingOffset]\n                  : [0, this.extraPaddingOffset];\n              }\n              if (placement.includes('left')) {\n                return this.arrowEnabled\n                  ? [0, this.extraPaddingOffset]\n                  : [0, this.extraPaddingOffset];\n              }\n              if (placement.includes('right')) {\n                return this.arrowEnabled\n                  ? [0, this.extraPaddingOffset]\n                  : [0, this.extraPaddingOffset];\n              } else {\n                return [0, 0];\n              }\n            },\n          },\n        },\n        {\n          name: 'arrow',\n          options: {\n            element: '#arrow',\n          },\n        },\n      ],\n    });\n  },\n  watch: {\n    popperOpen: function (val): void {\n      if (val) {\n        this.$refs.container.setAttribute('data-show', '');\n      } else {\n        this.$refs.container.removeAttribute('data-show');\n      }\n      this.$emit('popperOpenChanged', val);\n      setTimeout(() => {\n        this.debouncedPopperOpen = val;\n      }, 300);\n    },\n  },\n  methods: {\n    clickTriggerPopper(): void {\n      if (this.disabled || this.triggerType !== 'click') return;\n      const ctxPopperInstance = this.popperInstance;\n\n      if (this.$refs.container.hasAttribute('data-show')) {\n        this.popperOpen = false;\n        setTimeout(ctxPopperInstance.forceUpdate, 1);\n      } else {\n        this.popperOpen = true;\n        setTimeout(ctxPopperInstance.forceUpdate, 1);\n      }\n    },\n    clickAwayPopper(): void {\n      if (this.disabled || !this.closeOnClickaway) return;\n      const ctxPopperInstance = this.popperInstance;\n\n      if (this.debouncedPopperOpen) {\n        this.popperOpen = false;\n        setTimeout(ctxPopperInstance.forceUpdate, 1);\n      }\n    },\n    hoverTriggerPopper(): void {\n      if (this.disabled || this.triggerType !== 'hover') return;\n      const ctxPopperInstance = this.popperInstance;\n\n      if (this.$refs.container.hasAttribute('data-show')) {\n        this.popperOpen = false;\n        setTimeout(ctxPopperInstance.forceUpdate, 1);\n      } else {\n        this.popperOpen = true;\n        setTimeout(ctxPopperInstance.forceUpdate, 1);\n      }\n    },\n  },\n});\n<\/script>\n","/* *Animation */\n#popper-container {\n  padding: 0;\n  background: #f7f7f7;\n  border: none;\n  border-radius: 3px;\n  animation: fadein 300ms;\n  z-index: 1;\n  display: none;\n}\n#popper-container[data-show] {\n  display: block;\n}\n#popper-button {\n  display: inline-block;\n}\n#arrow {\n  position: absolute;\n  z-index: -1;\n}\n#arrow::before {\n  position: absolute;\n  z-index: -1;\n  content: '';\n  transform: rotate(45deg);\n  background: #f0f0f0;\n  width: 24px;\n  height: 24px;\n}\n#popper-container[data-popper-placement^='top'] > #arrow {\n  bottom: 12px;\n  padding-right: 32px;\n}\n#popper-container[data-popper-placement^='top-start'] > #arrow {\n  bottom: 12px;\n  padding-right: 20px;\n}\n#popper-container[data-popper-placement^='bottom'] > #arrow {\n  top: -12px;\n  padding-right: 32px;\n}\n#popper-container[data-popper-placement^='bottom-start'] > #arrow {\n  top: -12px;\n  padding-right: 20px;\n}\n#popper-container[data-popper-placement^='left'] > #arrow {\n  right: 12px;\n  padding-bottom: 32px;\n}\n#popper-container[data-popper-placement^='left-start'] > #arrow {\n  right: 12px;\n  padding-bottom: 5px;\n}\n#popper-container[data-popper-placement^='right'] > #arrow {\n  left: -12px;\n  padding-bottom: 32px;\n}\n#popper-container[data-popper-placement^='right-start'] > #arrow {\n  left: -12px;\n  padding-bottom: 5px;\n}\n@-moz-keyframes fadein {\n  from {\n    opacity: 0;\n  }\n  to {\n    opacity: 1;\n  }\n}\n@-webkit-keyframes fadein {\n  from {\n    opacity: 0;\n  }\n  to {\n    opacity: 1;\n  }\n}\n@-o-keyframes fadein {\n  from {\n    opacity: 0;\n  }\n  to {\n    opacity: 1;\n  }\n}\n@keyframes fadein {\n  from {\n    opacity: 0;\n  }\n  to {\n    opacity: 1;\n  }\n}\n"]},media:void 0})}),we,void 0,!1,void 0,!1,je,void 0,void 0),Ce=n.extend({mixins:[Ae.mixin],name:"PopupSkins",data:function(){return{containerRef:null,buttonRef:null,popperOpen:!1,debouncedPopperOpen:!1,popperInstance:null,holdingInterval:null,closeOnClickaway:!0}},props:{disabled:{default:!1,type:Boolean},offset:{default:function(){return[0,30]},type:Array},emojiList:{required:!0,type:Array},clickEmoji:{required:!0,type:Function}},computed:{createPopper:function(){return _({defaultModifiers:[].concat(d(ee),[re,se,ce])})}},mounted:function(){this.containerRef=this.$refs.container},watch:{popperOpen:function(e){var n=this;this.$emit("popperOpenChanged",e),setTimeout((function(){n.debouncedPopperOpen=e}),300)},closeOnClickaway:function(e){this.$emit("closeOnClickaway",e)}},methods:{clickAwayPopper:function(){if(!this.disable&&this.closeOnClickaway){var e=this.popperInstance;this.debouncedPopperOpen&&(this.$refs.container.removeAttribute("data-show"),this.popperOpen=!1,setTimeout(e.forceUpdate,1))}},instantiatePopper:function(e){var n=document.getElementById(e);this.popperInstance=this.createPopper(n,this.$refs.container,{placement:"top",modifiers:[{name:"offset",options:{offset:this.offset}},{name:"arrow",options:{element:"#skins-arrow"}}]}),this.$refs.container.setAttribute("data-show",!0),this.popperOpen=!0;var t=this.popperInstance;setTimeout(t.forceUpdate,1)},closePopper:function(){this.$refs.container.removeAttribute("data-show"),this.popperOpen=!1;var e=this.popperInstance;e&&setTimeout(e.forceUpdate,1)},setCloseOnClickaway:function(e){this.closeOnClickaway=e}}}),Oe=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("div",[t("div",{directives:[{name:"on-clickaway",rawName:"v-on-clickaway",value:e.clickAwayPopper,expression:"clickAwayPopper"}],ref:"container",attrs:{id:"popper-skins-container"}},[t("div",{attrs:{id:"skins-arrow","data-popper-arrow":""}}),e._v(" "),t("div",{attrs:{id:"popper-inner"}},[t("div",{staticClass:"emoji-popover-inner"},[0!==e.emojiList.length?t("div",[t("p",{staticClass:"emoji-list"},e._l(e.emojiList,(function(n){return t("span",{key:n.unicode,domProps:{innerHTML:e._s(n.img)},on:{click:function(t){return e.clickEmoji(n)}}})})),0)]):e._e()])])])])};Oe._withStripped=!0;var Se=be({render:Oe,staticRenderFns:[]},(function(e){e&&e("data-v-1027f122_0",{source:"/* *Animation */\n#popper-skins-container {\n  -webkit-box-shadow: 0 10px 20px rgba(0,0,0,0.19), 0 6px 6px rgba(0,0,0,0.23);\n          box-shadow: 0 10px 20px rgba(0,0,0,0.19), 0 6px 6px rgba(0,0,0,0.23);\n  padding: 0;\n  background: #f7f7f7;\n  border: none;\n  border-radius: 3px;\n  -webkit-animation: fadein 300ms;\n          animation: fadein 300ms;\n  z-index: 1;\n  display: none;\n}\n#popper-skins-container[data-show] {\n  display: block;\n}\n#skins-arrow {\n  position: absolute;\n  z-index: -1;\n}\n#skins-arrow::before {\n  position: absolute;\n  z-index: -1;\n  content: '';\n  -webkit-transform: rotate(45deg);\n          transform: rotate(45deg);\n  background: #f0f0f0;\n  width: 24px;\n  height: 24px;\n}\n#popper-skins-container[data-popper-placement^='top'] > #skins-arrow {\n  bottom: 12px;\n  padding-right: 20px;\n  left: -10px;\n}\n#popper-skins-container[data-popper-placement^='bottom'] > #skins-arrow {\n  top: -12px;\n  padding-right: 32px;\n}\n#popper-skins-container[data-popper-placement^='left'] > #skins-arrow {\n  right: 12px;\n  padding-bottom: 32px;\n}\n#popper-skins-container[data-popper-placement^='right'] > #skins-arrow {\n  left: -12px;\n  padding-bottom: 32px;\n}\n@-webkit-keyframes fadein {\nfrom {\n    opacity: 0;\n}\nto {\n    opacity: 1;\n}\n}\n@keyframes fadein {\nfrom {\n    opacity: 0;\n}\nto {\n    opacity: 1;\n}\n}\n",map:{version:3,sources:["/Users/yxy/yxy/code/vue-twemoji-picker/src/components/PopupSkins.vue","PopupSkins.vue"],names:[],mappings:"AA2BA,eAAA;AAWA;EACA,4EAAA;UAAA,oEAAA;EACA,UAAA;EACA,mBAAA;EACA,YAAA;EACA,kBAAA;EACA,+BAAA;UAAA,uBAAA;EACA,UAAA;EACA,aAAA;ACpCA;ADsCA;EACA,cAAA;ACpCA;ADwCA;EACA,kBAAA;EACA,WAAA;ACtCA;ADwCA;EACA,kBAAA;EACA,WAAA;EACA,WAAA;EACA,gCAAA;UAAA,wBAAA;EACA,mBAAA;EACA,WAAA;EACA,YAAA;ACtCA;AD0CA;EACA,YAAA;EACA,mBAAA;EACA,WAAA;ACxCA;AD2CA;EACA,UAAA;EACA,mBAAA;ACzCA;AD4CA;EACA,WAAA;EACA,oBAAA;AC1CA;AD6CA;EACA,WAAA;EACA,oBAAA;AC3CA;ADfA;AACA;IACA,UAAA;ACyBE;ADtBF;IACA,UAAA;ACwBE;AACF;AD/BA;AACA;IACA,UAAA;ACyCE;ADtCF;IACA,UAAA;ACwCE;AACF",file:"PopupSkins.vue",sourcesContent:["<template>\n  <div>\n    <div\n      ref=\"container\"\n      id=\"popper-skins-container\"\n      v-on-clickaway=\"clickAwayPopper\"\n    >\n      <div id=\"skins-arrow\" data-popper-arrow />\n      <div id=\"popper-inner\">\n        <div class=\"emoji-popover-inner\">\n          <div v-if=\"emojiList.length !== 0\">\n            <p class=\"emoji-list\">\n              <span\n                v-for=\"emoji in emojiList\"\n                :key=\"emoji.unicode\"\n                v-html=\"emoji.img\"\n                @click=\"clickEmoji(emoji)\"\n              ></span>\n            </p>\n          </div>\n        </div>\n      </div>\n    </div>\n  </div>\n</template>\n\n<style lang=\"stylus\">\n/* *Animation */\n@keyframes fadein {\n  from {\n    opacity: 0;\n  }\n\n  to {\n    opacity: 1;\n  }\n}\n\n#popper-skins-container {\n  box-shadow: 0 10px 20px rgba(0,0,0,0.19), 0 6px 6px rgba(0,0,0,0.23);\n  padding: 0;\n  background: #f7f7f7;\n  border: none;\n  border-radius: 3px;\n  animation: fadein 300ms;\n  z-index: 1;\n  display: none;\n\n  &[data-show] {\n    display: block;\n  }\n}\n\n#skins-arrow {\n  position: absolute;\n  z-index: -1;\n\n  &::before {\n    position: absolute;\n    z-index: -1;\n    content: '';\n    transform: rotate(45deg);\n    background: #f0f0f0;\n    width: 24px;\n    height: 24px;\n  }\n}\n\n#popper-skins-container[data-popper-placement^='top'] > #skins-arrow {\n  bottom: 12px;\n  padding-right: 20px;\n  left: -10px;\n}\n\n#popper-skins-container[data-popper-placement^='bottom'] > #skins-arrow {\n  top: -12px;\n  padding-right: 32px;\n}\n\n#popper-skins-container[data-popper-placement^='left'] > #skins-arrow {\n  right: 12px;\n  padding-bottom: 32px;\n}\n\n#popper-skins-container[data-popper-placement^='right'] > #skins-arrow {\n  left: -12px;\n  padding-bottom: 32px;\n}\n</style>\n\n<script lang=\"ts\">\nimport Vue from 'vue';\nimport {\n  popperGenerator,\n  defaultModifiers,\n} from '@popperjs/core/lib/popper-lite';\nimport offset from '@popperjs/core/lib/modifiers/offset';\nimport preventOverflow from '@popperjs/core/lib/modifiers/preventOverflow';\nimport arrow from '@popperjs/core/lib/modifiers/arrow';\nimport VueClickaway from 'vue-clickaway';\nimport EmojiSkin from '../interfaces/EmojiSkin';\n\nexport default Vue.extend({\n  mixins: [VueClickaway.mixin],\n  name: 'PopupSkins',\n  data() {\n    return {\n      // eslint-disable-next-line\n      containerRef: null as HTMLElement | null,\n      buttonRef: null as HTMLElement | null,\n      popperOpen: false as boolean,\n      debouncedPopperOpen: false as boolean,\n      popperInstance: null as any | null,\n      holdingInterval: null as any,\n      closeOnClickaway: true as boolean,\n    };\n  },\n  props: {\n    disabled: {\n      default: false,\n      type: Boolean as () => boolean,\n    },\n    offset: {\n      default: () => [0, 30],\n      type: Array as () => Array<number>,\n    },\n    emojiList: {\n      required: true,\n      type: Array as () => Array<EmojiSkin>,\n    },\n    clickEmoji: {\n      required: true,\n      type: Function as () => Function,\n    },\n  },\n  computed: {\n    createPopper() {\n      const defaultModifiersObj = [\n        ...defaultModifiers,\n        offset,\n        preventOverflow,\n        arrow,\n      ];\n\n      return popperGenerator({\n        defaultModifiers: defaultModifiersObj,\n      });\n    },\n  },\n  mounted(): void {\n    this.containerRef = this.$refs.container;\n  },\n  watch: {\n    popperOpen: function (val): void {\n      this.$emit('popperOpenChanged', val);\n      setTimeout(() => {\n        this.debouncedPopperOpen = val;\n      }, 300);\n    },\n    closeOnClickaway: function (val): void {\n      this.$emit('closeOnClickaway', val);\n    },\n  },\n  methods: {\n    clickAwayPopper(): void {\n      if (this.disable || !this.closeOnClickaway) return;\n      const ctxPopperInstance = this.popperInstance;\n\n      if (this.debouncedPopperOpen) {\n        this.$refs.container.removeAttribute('data-show');\n        this.popperOpen = false;\n        setTimeout(ctxPopperInstance.forceUpdate, 1);\n      }\n    },\n    instantiatePopper(refClickable: string): void {\n      const domElClickableRef = document.getElementById(refClickable);\n      this.popperInstance = this.createPopper(\n        domElClickableRef,\n        this.$refs.container,\n        {\n          placement: 'top',\n          modifiers: [\n            {\n              name: 'offset',\n              options: {\n                offset: this.offset,\n              },\n            },\n            {\n              name: 'arrow',\n              options: {\n                element: '#skins-arrow',\n              },\n            },\n          ],\n        }\n      );\n      this.$refs.container.setAttribute('data-show', true);\n      this.popperOpen = true;\n      const ctxPopperInstance = this.popperInstance;\n      setTimeout(ctxPopperInstance.forceUpdate, 1);\n    },\n    closePopper(): void {\n      this.$refs.container.removeAttribute('data-show');\n      this.popperOpen = false;\n      const ctxPopperInstance = this.popperInstance;\n      if (ctxPopperInstance) setTimeout(ctxPopperInstance.forceUpdate, 1);\n    },\n    setCloseOnClickaway(bool: boolean): void {\n      this.closeOnClickaway = bool;\n    },\n  },\n});\n<\/script>\n","/* *Animation */\n#popper-skins-container {\n  box-shadow: 0 10px 20px rgba(0,0,0,0.19), 0 6px 6px rgba(0,0,0,0.23);\n  padding: 0;\n  background: #f7f7f7;\n  border: none;\n  border-radius: 3px;\n  animation: fadein 300ms;\n  z-index: 1;\n  display: none;\n}\n#popper-skins-container[data-show] {\n  display: block;\n}\n#skins-arrow {\n  position: absolute;\n  z-index: -1;\n}\n#skins-arrow::before {\n  position: absolute;\n  z-index: -1;\n  content: '';\n  transform: rotate(45deg);\n  background: #f0f0f0;\n  width: 24px;\n  height: 24px;\n}\n#popper-skins-container[data-popper-placement^='top'] > #skins-arrow {\n  bottom: 12px;\n  padding-right: 20px;\n  left: -10px;\n}\n#popper-skins-container[data-popper-placement^='bottom'] > #skins-arrow {\n  top: -12px;\n  padding-right: 32px;\n}\n#popper-skins-container[data-popper-placement^='left'] > #skins-arrow {\n  right: 12px;\n  padding-bottom: 32px;\n}\n#popper-skins-container[data-popper-placement^='right'] > #skins-arrow {\n  left: -12px;\n  padding-bottom: 32px;\n}\n@-moz-keyframes fadein {\n  from {\n    opacity: 0;\n  }\n  to {\n    opacity: 1;\n  }\n}\n@-webkit-keyframes fadein {\n  from {\n    opacity: 0;\n  }\n  to {\n    opacity: 1;\n  }\n}\n@-o-keyframes fadein {\n  from {\n    opacity: 0;\n  }\n  to {\n    opacity: 1;\n  }\n}\n@keyframes fadein {\n  from {\n    opacity: 0;\n  }\n  to {\n    opacity: 1;\n  }\n}\n"]},media:void 0})}),Ce,void 0,!1,void 0,!1,je,void 0,void 0),Pe={emojiPickerDisabled:{default:!1,type:Boolean},pickerWidth:{default:250,type:[Number,String],validator:function(e){return"string"!=typeof e||e.startsWith("#")||console.warn('The value you entered is invalid: should be a number or a ID tag beginning with "#". \n          Using default value of 250px.'),!0}},pickerHeight:{default:150,type:Number},pickerPlacement:{default:"top-start",type:String,validator:function(e){return["top-start","top","top-end","bottom-start","bottom","bottom-right","left-start","left","left-end","right-start","right","right-end"].some((function(n){return n===e}))||console.error("The value entered for the prop \"pickerPlacement\" is invalid. Valid values: \n              'top-start',\n              'top',\n              'top-end',\n              'bottom-start',\n              'bottom',\n              'bottom-right',\n              'left-start',\n              'left',\n              'left-end',\n              'right-start',\n              'right',\n              'right-end'\n            "),!0}},pickerArrowEnabled:{default:!0,type:Boolean},pickerAutoflip:{default:!0,type:Boolean},pickerCloseOnClickaway:{default:!0,type:Boolean},triggerType:{default:"click",type:String,validator:function(e){return"click"!==e&&"hover"!==e&&console.error('The value entered for the prop "triggerType" is invalid. Valid values: "click" and "hover".'),!0}},emojiData:{required:!0,type:Array,validator:function(e){return e&&0!==e.length||console.error('The value entered for the prop "emojiData" is invalid. Should have a length greater than 0.'),!0}},emojiGroups:{required:!0,type:Array},skinsSelection:{default:!1,type:Boolean},recentEmojisFeat:{default:!1,type:Boolean},recentEmojisStorage:{default:"none",type:String,validator:function(e){return"local"!==e&&"session"!==e&&"none"!==e&&console.error('The value entered for the prop "recentEmojisStorage" is invalid. Valid values: "local", "session" and "none".'),!0}},recentEmojiStorageName:{default:"vue-recent-twemojis",type:String},recentEmojiLimit:{default:12,type:Number},searchEmojisFeat:{default:!1,type:Boolean},searchEmojiPlaceholder:{default:"Search emojis.",type:String},isLoadingLabel:{default:"Loading...",type:String},searchEmojiNotFound:{default:"No emojis found.",type:String},twemojiPath:{default:"https://twemoji.maxcdn.com/2/",type:String},twemojiExtension:{default:".png",type:String,validator:function(e){return!1===(-1!==[".png",".svg",".jpg",".jpeg",".ico"].indexOf(e))&&console.error('The value entered for the prop "twemojiPath" is invalid. Valid values: ".png", ".svg", ".jpg", ".jpeg", ".ico".'),!0}},twemojiFolder:{default:"72x72",type:String},randomEmojiArray:{default:function(){return["😀","😃","😄","😁","😆","😅","🤣","😂","🙂","🙃","😉","😊","🥴","😵","🤯","🤠","🥳","😎","🤓","🧐"]},type:Array,validator:function(e){return e&&0===e.length&&console.error("The Array must have a length of one or more."),!0}},pickerPaddingOffset:{default:5,type:Number},emojiTextWeightChanged:{default:!1,type:Boolean}},Te=function(e,n){e.$watch("randomEmojiArray",(function(){return n.setRandomEmoji()})),e.$watch("emojiPickerDisabled",(function(e){!0===e&&(n.$refs.popupEmoji.popperOpen=!1)}))},Ie=n.extend({name:"TwemojiPicker",components:{"popup-emoji":Ee,"popup-skins":Se},props:o({},Pe),data:function(){return{clickingSkinInterval:!1,isClickingEmojiMouseDown:!1,popupSkinsClickaway:!0,showEmoji:!1,showSkinsSelector:!1,skinsListActive:[],emojiPack:[],emojiListActive:[],emojiGroupActive:0,randomEmoji:null,isPointerOnEmojiBtn:!1,twemojiOptions:{},recentEmojis:[],searchTerm:"",searchEmojis:[],searchTimeout:null,isSearchingEmoji:!1,isSearchFocused:!1,calculatedPickerWidth:null,isPickerOpen:!1}},mounted:function(){var e=this;this.setPickerWidth(),this.$nextTick((function(){window.addEventListener("resize",e.setPickerWidth)}))},computed:{randomEmojiImg:function(){return this.triggerShowEmoji(),a.getEmojiImgFromUnicode(this.randomEmoji,this.twemojiOptions)}},created:function(){Te(this,this),this.twemojiOptions={base:this.twemojiPath,ext:this.twemojiExtension,size:this.twemojiFolder},this.recentEmojisFeat&&this.setRecentEmojis(),this.buildEmojiPack(),this.emojiListActive=this.emojiPack[0].emojiList,this.setRandomEmoji()},watch:{isPickerOpen:function(e){var n=this;e!==this.$refs.popupEmoji.popperOpen&&(this.$refs.popupEmoji.popperOpen=e,setTimeout((function(){return n.$refs.popupEmoji.popperInstance.forceUpdate()}),1))},randomEmoji:function(){var e=this;setTimeout((function(){e.$refs.popupEmoji&&e.$refs.popupEmoji.popperInstance.forceUpdate()}),100)}},methods:{triggerShowEmoji:function(){var e=this;this.showEmoji=!1,setTimeout((function(){return e.showEmoji=!0}))},buildEmojiPack:function(){this.emojiPack=a.getEmojiImgArrayFromEmojiPack(this.emojiData,this.twemojiOptions)},onMouseEnterEmojiBtn:function(){!1===this.isPointerOnEmojiBtn&&(this.isPointerOnEmojiBtn=!0,this.setRandomEmoji())},onMouseLeaveEmojiBtn:function(){!0===this.isPointerOnEmojiBtn&&(this.isPointerOnEmojiBtn=!1)},setRandomEmoji:function(){this.randomEmoji=this.randomEmojiArray[Math.floor(Math.random()*this.randomEmojiArray.length)]},clickEmoji:function(e){var n,t;this.$refs.popupSkins.setCloseOnClickaway(!1);var i=this;setTimeout((function(){return i.$refs.popupSkins.setCloseOnClickaway(!0)}),1),(this.isClickingEmojiMouseDown||this.$refs.popupSkins.popperOpen)&&(null===(n=e.skins)||void 0===n?void 0:n.length)>0&&this.skinsSelection||(this.$refs.popupSkins.closePopper(),t=e.unicode,this.recentEmojisFeat&&this.addEmojiToRecentEmojis(t),this.$emit("addTextBlur",t),this.$emit("emojiUnicodeAdded",t),this.$emit("emojiImgAdded",a.getEmojiImgFromUnicode(t,this.twemojiOptions)))},startClickingSkinInterval:function(e){var n,t=this;this.$refs.popupSkins.closePopper(),this.isClickingEmojiMouseDown=!1,(null===(n=e.skins)||void 0===n?void 0:n.length)>0&&this.skinsSelection&&(this.clickingSkinInterval||(this.clickingSkinInterval=setInterval((function(){t.skinsListActive=Array.from(e.skins),t.skinsListActive.unshift({unicode:e.unicode,img:e.img}),t.$refs.popupSkins.instantiatePopper("twemoji-picker-click-emoji-".concat(e.unicode))}),500)))},stopClickingSkinInterval:function(){this.isClickingEmojiMouseDown=!1,clearInterval(this.clickingSkinInterval),this.clickingSkinInterval=!1},getEmojiGroupDescription:function(e){var n=this.emojiGroups.find((function(n){return n.group===e}));return n?a.getEmojiImgFromUnicode(n.description,this.twemojiOptions):"Group "+e},changeEmojiListActive:function(e){this.showSkinsSelector=!1,this.searchTerm="",this.emojiGroupActive=e,e>=0?this.emojiListActive=this.emojiPack[e].emojiList:-1===e&&(this.emojiListActive=this.recentEmojis)},getEmojiImgFromUnicode:function(e){return a.getEmojiImgFromUnicode(e,this.twemojiOptions)},setRecentEmojis:function(){var e=null;null!=(e="local"===this.recentEmojisStorage?JSON.parse(localStorage.getItem(this.recentEmojiStorageName)||"[]"):"session"===this.recentEmojisStorage?JSON.parse(sessionStorage.getItem(this.recentEmojiStorageName)||"[]"):[])&&(this.recentEmojis=e)},addEmojiToRecentEmojis:function(e){var n=this.recentEmojis.findIndex((function(n){return n.unicode===e}));-1!==n?(this.recentEmojis.splice(n,1),this.recentEmojis.unshift({unicode:e,img:a.getEmojiImgFromUnicode(e,this.twemojiOptions),skins:[],tags:[]})):this.recentEmojis.unshift({unicode:e,img:a.getEmojiImgFromUnicode(e,this.twemojiOptions),skins:[],tags:[]}),this.recentEmojis.length>this.recentEmojiLimit&&this.recentEmojis.splice(-1,1),"local"===this.recentEmojisStorage?localStorage.setItem(this.recentEmojiStorageName,JSON.stringify(this.recentEmojis)):"session"===this.recentEmojisStorage&&sessionStorage.setItem(this.recentEmojiStorageName,JSON.stringify(this.recentEmojis))},searchEmojiByTerm:function(){var e=this;this.isSearchingEmoji=!0,clearTimeout(this.searchTimeout),this.searchTerm.length>0?this.searchTimeout=setTimeout((function(){e.searchEmojis=a.getEmojiImgArrayFromEmojiPackByTerm(e.emojiData,e.twemojiOptions,e.searchTerm),e.emojiGroupActive=-2,e.emojiListActive=e.searchEmojis,e.showSkinsSelector=!1,e.isSearchingEmoji=!1}),300):(this.changeEmojiListActive(0),this.isSearchingEmoji=!1)},popperOpenChanged:function(e){this.isPickerOpen=e},setPickerWidth:function(){if("string"==typeof this.pickerWidth&&this.pickerWidth.startsWith("#")){var e=this.pickerWidth.slice(1),n=document.getElementById(e);n&&(this.calculatedPickerWidth=n.offsetWidth-8)}else"number"==typeof this.pickerWidth?this.calculatedPickerWidth=this.pickerWidth:this.calculatedPickerWidth=250},onScrollEmojiList:function(e){this.$refs.popupSkins.closePopper()}}}),De=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("div",[e.emojiData&&e.emojiData.length>0?t("popup-emoji",{ref:"popupEmoji",attrs:{disabled:e.emojiPickerDisabled,triggerType:e.triggerType,placement:e.pickerPlacement,autoflip:e.pickerAutoflip,arrowEnabled:e.pickerArrowEnabled,closeOnClickaway:e.pickerCloseOnClickaway,extraPaddingOffset:e.pickerPaddingOffset},on:{popperOpenChanged:e.popperOpenChanged},scopedSlots:e._u([{key:"container",fn:function(){return[t("div",{attrs:{id:"emoji-container"}},[t("div",{style:{width:e.calculatedPickerWidth+"px"},attrs:{id:"emoji-popup"}},[e.searchEmojisFeat?t("div",{attrs:{id:"emoji-popover-search"}},[t("div",{class:{"is-focused":e.isSearchFocused},attrs:{id:"search-header"}},[t("span",{domProps:{innerHTML:e._s(e.getEmojiImgFromUnicode("🔍"))}}),e._v(" "),t("input",{directives:[{name:"model",rawName:"v-model",value:e.searchTerm,expression:"searchTerm"}],attrs:{placeholder:e.searchEmojiPlaceholder},domProps:{value:e.searchTerm},on:{input:[function(n){n.target.composing||(e.searchTerm=n.target.value)},e.searchEmojiByTerm],focus:function(n){e.isSearchFocused=!0},blur:function(n){e.isSearchFocused=!1}}})])]):e._e(),e._v(" "),t("div",{staticClass:"scroll-min",attrs:{id:"emoji-popover-header"}},[e.recentEmojisFeat&&0!==e.recentEmojis.length?t("span",{staticClass:"emoji-tab",class:{active:-1===e.emojiGroupActive},domProps:{innerHTML:e._s(e.getEmojiImgFromUnicode("🕒"))},on:{click:function(n){return e.changeEmojiListActive(-1)}}}):e._e(),e._v(" "),e._l(e.emojiPack,(function(n,i){return t("span",{key:n.group,staticClass:"emoji-tab",class:{active:e.emojiGroupActive===i},attrs:{id:n.group},domProps:{innerHTML:e._s(e.getEmojiGroupDescription(n.group))},on:{click:function(n){return e.changeEmojiListActive(i)}}})}))],2),e._v(" "),t("div",{staticClass:"emoji-popover-inner",style:{width:e.calculatedPickerWidth+"px",height:e.pickerHeight+"px"},on:{"&scroll":function(n){return e.onScrollEmojiList(n)}}},[e.isSearchingEmoji?t("div",[t("strong",{style:{padding:"3px"},attrs:{id:"loading-label"}},[e._v(e._s(e.isLoadingLabel))])]):e._e(),e._v(" "),0!==e.searchTerm.length&&0===e.searchEmojis.length&&!1===e.isSearchingEmoji?t("div",[t("strong",{style:{padding:"3px"}},[e._v(e._s(e.searchEmojiNotFound))])]):e._e(),e._v(" "),0!==e.emojiListActive.length&&!1===e.isSearchingEmoji?t("div",[t("p",{staticClass:"emoji-list"},e._l(e.emojiListActive,(function(n){return t("span",{key:n.unicode,attrs:{id:"twemoji-picker-click-emoji-"+n.unicode},domProps:{innerHTML:e._s(n.img)},on:{click:function(t){return e.clickEmoji(n)},mousedown:function(t){return e.startClickingSkinInterval(n)},mouseleave:e.stopClickingSkinInterval,mouseup:e.stopClickingSkinInterval,touchstart:function(t){return e.startClickingSkinInterval(n)},touchend:e.stopClickingSkinInterval,touchcancel:e.stopClickingSkinInterval}})})),0)]):e._e()]),e._v(" "),t("popup-skins",{ref:"popupSkins",attrs:{emojiList:e.skinsListActive,closeOnClickaway:e.popupSkinsClickaway,clickEmoji:e.clickEmoji}})],1)])]},proxy:!0},{key:"button",fn:function(){return[e._t("twemoji-picker-button",[t("button",{attrs:{disabled:e.emojiPickerDisabled,id:"btn-emoji-default"},on:{mouseenter:function(n){return e.onMouseEnterEmojiBtn()},mouseleave:function(n){return e.onMouseLeaveEmojiBtn()}}},[t("div",{directives:[{name:"show",rawName:"v-show",value:e.showEmoji,expression:"showEmoji"}],staticClass:"fade-in",domProps:{innerHTML:e._s(e.randomEmojiImg)}}),e._v(" "),t("div",{directives:[{name:"show",rawName:"v-show",value:!e.showEmoji,expression:"!showEmoji"}],attrs:{id:"dummy-el"}})])])]},proxy:!0}],null,!0)}):e._e(),e._v(" "),t("span",{attrs:{id:"dummy-clickable-skin"}})],1)};De._withStripped=!0;var Ue=be({render:De,staticRenderFns:[]},(function(e){e&&e("data-v-5ed29152_0",{source:"#emoji-container {\n  z-index: 1;\n}\n#emoji-container > #emoji-popup {\n  border: 1px solid #f0f0f0;\n  border-radius: 5px;\n  padding: 3px;\n}\n#emoji-container > #emoji-popup img.emoji {\n  height: 32px;\n  width: 32px;\n  vertical-align: -0.5rem;\n}\n#emoji-container > #emoji-popup > #emoji-popover-header {\n  padding: 15px 5px;\n  overflow-y: hidden;\n  overflow-x: auto;\n  white-space: nowrap;\n}\n#emoji-container > #emoji-popup > #emoji-popover-header::-webkit-scrollbar-track {\n  border-radius: 10px;\n  background-color: #f2f2f2;\n}\n#emoji-container > #emoji-popup > #emoji-popover-header::-webkit-scrollbar {\n  height: 12px;\n  background-color: #f2f2f2;\n}\n#emoji-container > #emoji-popup > #emoji-popover-header::-webkit-scrollbar-thumb {\n  border-radius: 10px;\n  background-color: #c1c1c1;\n}\n#emoji-container > #emoji-popup > #emoji-popover-header > .emoji-tab {\n  margin: 3px;\n  padding: 5px;\n  padding: 8px 5px;\n  cursor: pointer;\n  border-radius: 2px;\n  opacity: 0.5;\n  -webkit-filter: grayscale(1);\n          filter: grayscale(1);\n}\n#emoji-container > #emoji-popup > #emoji-popover-header > .emoji-tab:hover {\n  border-bottom: 5px solid #b3b3b3;\n  opacity: 1;\n  -webkit-filter: grayscale(0);\n          filter: grayscale(0);\n}\n#emoji-container > #emoji-popup > #emoji-popover-header > .emoji-tab.active {\n  border-bottom: 5px solid #b3b3b3;\n  opacity: 1;\n  -webkit-filter: grayscale(0);\n          filter: grayscale(0);\n}\n#emoji-container > #emoji-popup .emoji-popover-inner {\n  overflow-y: auto;\n  overflow-x: hidden;\n  background-color: #f7f7f7;\n}\n#emoji-container > #emoji-popup .emoji-popover-inner::-webkit-scrollbar-track {\n  border-radius: 10px;\n  background-color: #f2f2f2;\n}\n#emoji-container > #emoji-popup .emoji-popover-inner::-webkit-scrollbar {\n  width: 12px;\n  background-color: #f2f2f2;\n}\n#emoji-container > #emoji-popup .emoji-popover-inner::-webkit-scrollbar-thumb {\n  border-radius: 10px;\n  background-color: #c1c1c1;\n}\n#emoji-container > #emoji-popup .emoji-popover-inner #loading-label {\n  margin: 0 5px;\n}\n#emoji-container > #emoji-popup .emoji-popover-inner > div > .emoji-list {\n  padding: 10px;\n  margin: 0px;\n  text-align: justify;\n}\n#emoji-container > #emoji-popup .emoji-popover-inner > div > .emoji-list > span {\n  font-size: 15px;\n  cursor: pointer;\n  border-radius: 15px;\n}\n#emoji-container > #emoji-popup .emoji-popover-inner > div > .emoji-list > span:hover {\n  background-color: #cacaca;\n}\n#emoji-container > #emoji-popup .emoji-popover-inner > div > .emoji-list > span > img {\n  margin: 5px;\n}\n#emoji-container > #emoji-popup #emoji-popover-search {\n  background-color: #f7f7f7;\n  border-radius: 3px;\n  margin: 5px 0;\n}\n#emoji-container > #emoji-popup #emoji-popover-search > #search-header {\n  padding-top: 5px 0;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  border: 1px solid #e6e6e6;\n  border-radius: 25px;\n}\n#emoji-container > #emoji-popup #emoji-popover-search > #search-header.is-focused {\n  background-color: #fcfcfc;\n  -webkit-transition: background-color 300ms ease-in-out;\n  transition: background-color 300ms ease-in-out;\n}\n#emoji-container > #emoji-popup #emoji-popover-search > #search-header.is-focused > span {\n  -webkit-filter: grayscale(0);\n          filter: grayscale(0);\n  -webkit-transition: -webkit-filter 300ms ease-in-out;\n  transition: -webkit-filter 300ms ease-in-out;\n  transition: filter 300ms ease-in-out;\n  transition: filter 300ms ease-in-out, -webkit-filter 300ms ease-in-out;\n}\n#emoji-container > #emoji-popup #emoji-popover-search > #search-header > span {\n  -webkit-box-flex: 1;\n      -ms-flex-positive: 1;\n          flex-grow: 1;\n  padding: 5px 10px;\n  width: 32px !important;\n  text-align: center;\n  -webkit-filter: grayscale(1);\n          filter: grayscale(1);\n}\n#emoji-container > #emoji-popup #emoji-popover-search > #search-header > span > img {\n  width: 24px;\n  height: 24px;\n}\n#emoji-container > #emoji-popup #emoji-popover-search > #search-header > input {\n  -webkit-box-flex: 99;\n      -ms-flex-positive: 99;\n          flex-grow: 99;\n  padding: 10px 5px;\n  margin: 0 10px;\n  border: none;\n  font-size: 1rem;\n  background-color: inherit;\n  outline: none;\n}\n/* Popper Emoji */\n#btn-emoji-default {\n  -webkit-box-flex: 100;\n      -ms-flex-positive: 100;\n          flex-grow: 100;\n  border: none;\n  cursor: pointer;\n  height: 45px;\n  width: 45px;\n  margin: 10px;\n  background-color: transparent;\n}\n#btn-emoji-default > div > img.emoji {\n  height: 32px;\n  width: 32px;\n}\n#btn-emoji-default > #dummy-el {\n  height: 32px;\n  width: 32px;\n}\n#btn-emoji-default:disabled {\n  opacity: 0.6;\n  pointer-events: none;\n}\n/* * Cursor */\n.clickable {\n  cursor: pointer;\n}\n/* * Transition - Fade */\n.fade-in {\n  opacity: 1;\n  -webkit-animation-name: fadeInOpacity;\n          animation-name: fadeInOpacity;\n  -webkit-animation-iteration-count: 1;\n          animation-iteration-count: 1;\n  -webkit-animation-timing-function: ease-in;\n          animation-timing-function: ease-in;\n  -webkit-animation-duration: 0.3s;\n          animation-duration: 0.3s;\n}\n@-webkit-keyframes fadeInOpacity {\n0% {\n    opacity: 0.4;\n}\n50% {\n    opacity: 0.8;\n}\n100% {\n    opacity: 1;\n}\n}\n@keyframes fadeInOpacity {\n0% {\n    opacity: 0.4;\n}\n50% {\n    opacity: 0.8;\n}\n100% {\n    opacity: 1;\n}\n}\n",map:{version:3,sources:["/Users/yxy/yxy/code/vue-twemoji-picker/src/components/TwemojiPicker/TwemojiPicker.vue","TwemojiPicker.vue"],names:[],mappings:"AA8IA;EACA,UAAA;AC7IA;AD+IA;EACA,yBAAA;EACA,kBAAA;EACA,YAAA;AC7IA;AD+IA;EACA,YAAA;EACA,WAAA;EACA,uBAAA;AC7IA;ADgJA;EACA,iBAAA;EACA,kBAAA;EACA,gBAAA;EACA,mBAAA;AC9IA;ADgJA;EACA,mBAAA;EACA,yBAAA;AC9IA;ADiJA;EACA,YAAA;EACA,yBAAA;AC/IA;ADkJA;EACA,mBAAA;EACA,yBAAA;AChJA;ADmJA;EACA,WAAA;EACA,YAAA;EACA,gBAAA;EACA,eAAA;EACA,kBAAA;EACA,YAAA;EACA,4BAAA;UAAA,oBAAA;ACjJA;ADmJA;EACA,gCAAA;EACA,UAAA;EACA,4BAAA;UAAA,oBAAA;ACjJA;ADoJA;EACA,gCAAA;EACA,UAAA;EACA,4BAAA;UAAA,oBAAA;AClJA;ADuJA;EACA,gBAAA;EACA,kBAAA;EACA,yBAAA;ACrJA;ADuJA;EACA,mBAAA;EACA,yBAAA;ACrJA;ADwJA;EACA,WAAA;EACA,yBAAA;ACtJA;ADyJA;EACA,mBAAA;EACA,yBAAA;ACvJA;AD0JA;EACA,aAAA;ACxJA;AD2JA;EACA,aAAA;EACA,WAAA;EACA,mBAAA;ACzJA;AD2JA;EACA,eAAA;EACA,eAAA;EACA,mBAAA;ACzJA;AD2JA;EACA,yBAAA;ACzJA;AD4JA;EACA,WAAA;AC1JA;ADgKA;EACA,yBAAA;EACA,kBAAA;EACA,aAAA;AC9JA;ADgKA;EACA,kBAAA;EACA,oBAAA;EAAA,oBAAA;EAAA,aAAA;EACA,yBAAA;EACA,mBAAA;AC9JA;ADgKA;EACA,yBAAA;EACA,sDAAA;EAAA,8CAAA;AC9JA;AD+JA;EACA,4BAAA;UAAA,oBAAA;EACA,oDAAA;EAAA,4CAAA;EAAA,oCAAA;EAAA,sEAAA;AC7JA;ADiKA;EAKA,mBAAA;MAAA,oBAAA;UAAA,YAAA;EACA,iBAAA;EACA,sBAAA;EACA,kBAAA;EACA,4BAAA;UAAA,oBAAA;ACnKA;AD2JA;EACA,WAAA;EACA,YAAA;ACzJA;ADkKA;EACA,oBAAA;MAAA,qBAAA;UAAA,aAAA;EACA,iBAAA;EACA,cAAA;EACA,YAAA;EACA,eAAA;EACA,yBAAA;EACA,aAAA;AChKA;ADuKA,iBAAA;AACA;EACA,qBAAA;MAAA,sBAAA;UAAA,cAAA;EACA,YAAA;EACA,eAAA;EACA,YAAA;EACA,WAAA;EACA,YAAA;EACA,6BAAA;ACrKA;ADuKA;EACA,YAAA;EACA,WAAA;ACrKA;ADwKA;EACA,YAAA;EACA,WAAA;ACtKA;ADyKA;EACA,YAAA;EACA,oBAAA;ACvKA;AD2KA,aAAA;AACA;EACA,eAAA;ACzKA;AD4KA,wBAAA;AACA;EACA,UAAA;EACA,qCAAA;UAAA,6BAAA;EACA,oCAAA;UAAA,4BAAA;EACA,0CAAA;UAAA,kCAAA;EACA,gCAAA;UAAA,wBAAA;AC1KA;AD6KA;AACA;IACA,YAAA;AChKE;ADmKF;IACA,YAAA;ACjKE;ADoKF;IACA,UAAA;AClKE;AACF;ADuJA;AACA;IACA,YAAA;AC1IE;AD6IF;IACA,YAAA;AC3IE;AD8IF;IACA,UAAA;AC5IE;AACF",file:"TwemojiPicker.vue",sourcesContent:['<template>\n  <div>\n    <popup-emoji\n      v-if="emojiData && emojiData.length > 0"\n      :disabled="emojiPickerDisabled"\n      :triggerType="triggerType"\n      :placement="pickerPlacement"\n      :autoflip="pickerAutoflip"\n      :arrowEnabled="pickerArrowEnabled"\n      :closeOnClickaway="pickerCloseOnClickaway"\n      :extraPaddingOffset="pickerPaddingOffset"\n      @popperOpenChanged="popperOpenChanged"\n      ref="popupEmoji"\n    >\n      <template v-slot:container>\n        <div id="emoji-container">\n          <div\n            id="emoji-popup"\n            :style="{ width: calculatedPickerWidth + \'px\' }"\n          >\n            <div id="emoji-popover-search" v-if="searchEmojisFeat">\n              <div\n                id="search-header"\n                :class="{ \'is-focused\': isSearchFocused }"\n              >\n                <span v-html="getEmojiImgFromUnicode(\'🔍\')"></span>\n                <input\n                  @input="searchEmojiByTerm"\n                  :placeholder="searchEmojiPlaceholder"\n                  v-model="searchTerm"\n                  @focus="isSearchFocused = true"\n                  @blur="isSearchFocused = false"\n                />\n              </div>\n            </div>\n\n            <div id="emoji-popover-header" class="scroll-min">\n              <span\n                v-if="recentEmojisFeat && recentEmojis.length !== 0"\n                v-html="getEmojiImgFromUnicode(\'🕒\')"\n                class="emoji-tab"\n                @click="changeEmojiListActive(-1)"\n                :class="{ active: emojiGroupActive === -1 }"\n              ></span>\n              <span\n                v-for="(emojiGroup, index) in emojiPack"\n                :key="emojiGroup.group"\n                :id="emojiGroup.group"\n                v-html="getEmojiGroupDescription(emojiGroup.group)"\n                class="emoji-tab"\n                @click="changeEmojiListActive(index)"\n                :class="{ active: emojiGroupActive === index }"\n              ></span>\n            </div>\n\n            <div\n              class="emoji-popover-inner"\n              :style="{\n                width: calculatedPickerWidth + \'px\',\n                height: pickerHeight + \'px\',\n              }"\n              @scroll.passive="onScrollEmojiList"\n            >\n              <div v-if="isSearchingEmoji">\n                <strong\n                  :style="{\n                    padding: \'3px\',\n                  }"\n                  id="loading-label"\n                  >{{ isLoadingLabel }}</strong\n                >\n              </div>\n\n              <div\n                v-if="\n                  searchTerm.length !== 0 &&\n                  searchEmojis.length === 0 &&\n                  isSearchingEmoji === false\n                "\n              >\n                <strong\n                  :style="{\n                    padding: \'3px\',\n                  }"\n                  >{{ searchEmojiNotFound }}</strong\n                >\n              </div>\n\n              <div\n                v-if="\n                  emojiListActive.length !== 0 && isSearchingEmoji === false\n                "\n              >\n                <p class="emoji-list">\n                  <span\n                    v-for="emoji in emojiListActive"\n                    :key="emoji.unicode"\n                    v-html="emoji.img"\n                    @click="clickEmoji(emoji)"\n                    @mousedown="startClickingSkinInterval(emoji)"\n                    @mouseleave="stopClickingSkinInterval"\n                    @mouseup="stopClickingSkinInterval"\n                    @touchstart="startClickingSkinInterval(emoji)"\n                    @touchend="stopClickingSkinInterval"\n                    @touchcancel="stopClickingSkinInterval"\n                    :id="`twemoji-picker-click-emoji-${emoji.unicode}`"\n                  ></span>\n                </p>\n              </div>\n            </div>\n\n            <popup-skins\n              :emojiList="skinsListActive"\n              :closeOnClickaway="popupSkinsClickaway"\n              :clickEmoji="clickEmoji"\n              ref="popupSkins"\n            />\n          </div>\n        </div>\n      </template>\n      <template v-slot:button>\n        <slot name="twemoji-picker-button">\n          <button\n            @mouseenter="onMouseEnterEmojiBtn()"\n            @mouseleave="onMouseLeaveEmojiBtn()"\n            :disabled="emojiPickerDisabled"\n            id="btn-emoji-default"\n          >\n            <div\n              v-show="showEmoji"\n              v-html="randomEmojiImg"\n              class="fade-in"\n            ></div>\n            <div v-show="!showEmoji" id="dummy-el"></div>\n          </button>\n        </slot>\n      </template>\n    </popup-emoji>\n    <span id="dummy-clickable-skin" />\n  </div>\n</template>\n<style lang="stylus">\n#emoji-container {\n  z-index: 1;\n\n  > #emoji-popup {\n    border: 1px solid #f0f0f0;\n    border-radius: 5px;\n    padding: 3px;\n\n    img.emoji {\n      height: 32px;\n      width: 32px;\n      vertical-align: -0.5rem;\n    }\n\n    > #emoji-popover-header {\n      padding: 15px 5px;\n      overflow-y: hidden;\n      overflow-x: auto;\n      white-space: nowrap;\n\n      &::-webkit-scrollbar-track {\n        border-radius: 10px;\n        background-color: #f2f2f2;\n      }\n\n      &::-webkit-scrollbar{\n        height: 12px;\n        background-color: #f2f2f2;\n      }\n\n      &::-webkit-scrollbar-thumb {\n        border-radius: 10px;\n        background-color: #c1c1c1;\n      }\n\n      > .emoji-tab {\n        margin: 3px;\n        padding: 5px;\n        padding: 8px 5px;\n        cursor: pointer;\n        border-radius: 2px;\n        opacity: 0.5;\n        filter: grayscale(1);\n\n        &:hover {\n          border-bottom: 5px solid #b3b3b3;\n          opacity: 1;\n          filter: grayscale(0);\n        }\n\n        &.active {\n          border-bottom: 5px solid #b3b3b3;\n          opacity: 1;\n          filter: grayscale(0);\n        }\n      }\n    }\n\n    .emoji-popover-inner {\n      overflow-y: auto;\n      overflow-x: hidden;\n      background-color: #f7f7f7;\n\n      &::-webkit-scrollbar-track {\n        border-radius: 10px;\n        background-color: #f2f2f2;\n      }\n\n      &::-webkit-scrollbar{\n        width: 12px;\n        background-color: #f2f2f2;\n      }\n\n      &::-webkit-scrollbar-thumb {\n        border-radius: 10px;\n        background-color: #c1c1c1;\n      }\n\n      #loading-label {\n        margin: 0 5px;\n      }\n\n      > div > .emoji-list {\n        padding: 10px;\n        margin: 0px;\n        text-align: justify;\n\n        > span {\n          font-size: 15px;\n          cursor: pointer;\n          border-radius: 15px;\n\n          &:hover {\n            background-color: #cacaca;\n          }\n\n          > img {\n            margin: 5px;\n          }\n        }\n      }\n    }\n\n    #emoji-popover-search {\n      background-color: #f7f7f7;\n      border-radius: 3px;\n      margin: 5px 0;\n\n      > #search-header {\n        padding-top: 5px 0;\n        display: flex;\n        border: 1px solid #e6e6e6;\n        border-radius: 25px;\n\n        &.is-focused {\n          background-color: #fcfcfc;\n          transition: background-color 300ms ease-in-out;\n          > span {\n            filter: grayscale(0);\n            transition: filter 300ms ease-in-out;\n          }\n        }\n\n        > span {\n          > img {\n            width: 24px;\n            height: 24px;\n          }\n          flex-grow: 1;\n          padding: 5px 10px;\n          width: 32px !important;\n          text-align: center;\n          filter: grayscale(1);\n        }\n\n        > input {\n          flex-grow: 99;\n          padding: 10px 5px;\n          margin: 0 10px;\n          border: none;\n          font-size: 1rem;\n          background-color: inherit;\n          outline: none;\n        }\n      }\n    }\n  }\n}\n\n/* Popper Emoji */\n#btn-emoji-default {\n  flex-grow: 100;\n  border: none;\n  cursor: pointer;\n  height: 45px;\n  width: 45px;\n  margin: 10px;\n  background-color: transparent;\n\n  > div > img.emoji {\n    height: 32px;\n    width: 32px;\n  }\n\n  > #dummy-el {\n    height: 32px;\n    width: 32px;\n  }\n\n  &:disabled {\n    opacity: 0.6;\n    pointer-events: none;\n  }\n}\n\n/* * Cursor */\n.clickable {\n  cursor: pointer;\n}\n\n/* * Transition - Fade */\n.fade-in {\n  opacity: 1;\n  animation-name: fadeInOpacity;\n  animation-iteration-count: 1;\n  animation-timing-function: ease-in;\n  animation-duration: 0.3s;\n}\n\n@keyframes fadeInOpacity {\n  0% {\n    opacity: 0.4;\n  }\n\n  50% {\n    opacity: 0.8;\n  }\n\n  100% {\n    opacity: 1;\n  }\n}\n</style>\n<script lang="ts">\nimport Vue from \'vue\';\nimport EmojiService from \'../../services/EmojiService\';\nimport PopupEmoji from \'../PopupEmoji.vue\';\nimport PopupSkins from \'../PopupSkins.vue\';\nimport EmojiPack from \'../../interfaces/EmojiPack\';\nimport Emoji from \'../../interfaces/Emoji\';\nimport TwemojiOptions from \'../../interfaces/TwemojiOptions\';\nimport EmojiGroup from \'../../interfaces/EmojiGroup\';\n\nimport Props, { DEFAULT_PICKER_WIDTH } from \'./props\';\nimport PropWatchers from \'./prop-watchers\';\nimport EmojiSkin from \'../../interfaces/EmojiSkin\';\n\nexport default Vue.extend({\n  name: \'TwemojiPicker\',\n\n  components: {\n    \'popup-emoji\': PopupEmoji,\n    \'popup-skins\': PopupSkins,\n  },\n\n  props: {\n    ...Props,\n  },\n\n  data() {\n    return {\n      clickingSkinInterval: false as any,\n      isClickingEmojiMouseDown: false as boolean,\n      popupSkinsClickaway: true as boolean,\n\n      showEmoji: false as boolean,\n      showSkinsSelector: false as boolean,\n      skinsListActive: [] as Array<EmojiSkin>,\n\n      emojiPack: [] as Array<EmojiPack>,\n      emojiListActive: [] as Array<Emoji>,\n      emojiGroupActive: 0 as number,\n\n      randomEmoji: null as string | null,\n\n      isPointerOnEmojiBtn: false as boolean,\n      twemojiOptions: {} as TwemojiOptions,\n\n      recentEmojis: [] as Array<Emoji>,\n\n      searchTerm: \'\' as string,\n      searchEmojis: [] as Array<Emoji>,\n      searchTimeout: null as any,\n      isSearchingEmoji: false as boolean,\n      isSearchFocused: false as boolean,\n      calculatedPickerWidth: null as number | null,\n      isPickerOpen: false as boolean,\n    };\n  },\n\n  mounted() {\n    this.setPickerWidth();\n    this.$nextTick(() => {\n      window.addEventListener(\'resize\', this.setPickerWidth);\n    });\n  },\n\n  computed: {\n    randomEmojiImg(): string {\n      this.triggerShowEmoji();\n      return EmojiService.getEmojiImgFromUnicode(\n        this.randomEmoji,\n        this.twemojiOptions\n      );\n    },\n  },\n\n  created(): void {\n    // Init TwemojiPicker watchers\n    PropWatchers(this, this);\n\n    this.twemojiOptions = {\n      base: this.twemojiPath,\n      ext: this.twemojiExtension,\n      size: this.twemojiFolder,\n    };\n    if (this.recentEmojisFeat) {\n      this.setRecentEmojis();\n    }\n    this.buildEmojiPack();\n    this.emojiListActive = this.emojiPack[0].emojiList;\n    this.setRandomEmoji();\n  },\n  watch: {\n    // Data Watchers\n    isPickerOpen(value) {\n      if (value !== this.$refs.popupEmoji.popperOpen) {\n        this.$refs.popupEmoji.popperOpen = value;\n        setTimeout(() => this.$refs.popupEmoji.popperInstance.forceUpdate(), 1);\n      }\n    },\n    randomEmoji() {\n      // eslint-disable-next-line\n      const vueContext = this;\n\n      setTimeout(() => {\n        if (vueContext.$refs.popupEmoji)\n          vueContext.$refs.popupEmoji.popperInstance.forceUpdate();\n      }, 100);\n    },\n  },\n\n  methods: {\n    triggerShowEmoji(): void {\n      this.showEmoji = false;\n      setTimeout(() => (this.showEmoji = true));\n    },\n    buildEmojiPack(): void {\n      this.emojiPack = EmojiService.getEmojiImgArrayFromEmojiPack(\n        this.emojiData,\n        this.twemojiOptions\n      );\n    },\n    onMouseEnterEmojiBtn(): void {\n      if (this.isPointerOnEmojiBtn === false) {\n        this.isPointerOnEmojiBtn = true;\n        this.setRandomEmoji();\n      }\n    },\n    onMouseLeaveEmojiBtn(): void {\n      if (this.isPointerOnEmojiBtn === true) {\n        this.isPointerOnEmojiBtn = false;\n      }\n    },\n    setRandomEmoji(): void {\n      this.randomEmoji = this.randomEmojiArray[\n        Math.floor(Math.random() * this.randomEmojiArray.length)\n      ];\n    },\n\n    clickEmoji(emoji: Emoji): void {\n      this.$refs.popupSkins.setCloseOnClickaway(false);\n      let emojiUnicode: string;\n      // eslint-disable-next-line\n      const vueContext = this;\n      setTimeout(\n        () => vueContext.$refs.popupSkins.setCloseOnClickaway(true),\n        1\n      );\n\n      if (\n        (this.isClickingEmojiMouseDown || this.$refs.popupSkins.popperOpen) &&\n        emoji.skins?.length > 0 &&\n        this.skinsSelection\n      ) {\n        return;\n      } else {\n        this.$refs.popupSkins.closePopper();\n        emojiUnicode = emoji.unicode;\n      }\n\n      if (this.recentEmojisFeat) {\n        this.addEmojiToRecentEmojis(emojiUnicode);\n      }\n\n      this.$emit(\'addTextBlur\', emojiUnicode);\n      this.$emit(\'emojiUnicodeAdded\', emojiUnicode);\n      this.$emit(\n        \'emojiImgAdded\',\n        EmojiService.getEmojiImgFromUnicode(emojiUnicode, this.twemojiOptions)\n      );\n    },\n\n    startClickingSkinInterval(emoji: Emoji): void {\n      this.$refs.popupSkins.closePopper();\n      this.isClickingEmojiMouseDown = false;\n      if (emoji.skins?.length > 0 && this.skinsSelection) {\n        if (!this.clickingSkinInterval) {\n          this.clickingSkinInterval = setInterval(() => {\n            this.skinsListActive = Array.from(emoji.skins);\n            this.skinsListActive.unshift({\n              unicode: emoji.unicode,\n              img: emoji.img,\n            });\n            this.$refs.popupSkins.instantiatePopper(\n              `twemoji-picker-click-emoji-${emoji.unicode}`\n            );\n          }, 500);\n        }\n      }\n    },\n\n    stopClickingSkinInterval(): void {\n      this.isClickingEmojiMouseDown = false;\n      clearInterval(this.clickingSkinInterval);\n      this.clickingSkinInterval = false;\n    },\n\n    getEmojiGroupDescription(emojiGroup: number): string {\n      const emojiGroupFound = this.emojiGroups.find(\n        (x: EmojiGroup) => x.group === emojiGroup\n      );\n      if (emojiGroupFound) {\n        return EmojiService.getEmojiImgFromUnicode(\n          emojiGroupFound.description,\n          this.twemojiOptions\n        );\n      }\n      return \'Group \' + emojiGroup;\n    },\n\n    changeEmojiListActive(index: number): void {\n      this.showSkinsSelector = false;\n      this.searchTerm = \'\';\n      this.emojiGroupActive = index;\n      if (index >= 0) {\n        this.emojiListActive = this.emojiPack[index].emojiList;\n      } else if (index === -1) {\n        this.emojiListActive = this.recentEmojis;\n      }\n    },\n\n    getEmojiImgFromUnicode(unicode: string): string {\n      return EmojiService.getEmojiImgFromUnicode(unicode, this.twemojiOptions);\n    },\n\n    setRecentEmojis(): void {\n      let recentEmojis = null;\n      if (this.recentEmojisStorage === \'local\') {\n        recentEmojis = JSON.parse(\n          localStorage.getItem(this.recentEmojiStorageName) || \'[]\'\n        );\n      } else if (this.recentEmojisStorage === \'session\') {\n        recentEmojis = JSON.parse(\n          sessionStorage.getItem(this.recentEmojiStorageName) || \'[]\'\n        );\n      } else {\n        recentEmojis = [];\n      }\n\n      if (recentEmojis !== undefined && recentEmojis !== null) {\n        this.recentEmojis = recentEmojis;\n      }\n    },\n    addEmojiToRecentEmojis(emojiUnicode: string): void {\n      const indexToRemove = this.recentEmojis.findIndex(\n        (x: Emoji) => x.unicode === emojiUnicode\n      );\n      if (indexToRemove !== -1) {\n        this.recentEmojis.splice(indexToRemove, 1);\n        this.recentEmojis.unshift({\n          unicode: emojiUnicode,\n          img: EmojiService.getEmojiImgFromUnicode(\n            emojiUnicode,\n            this.twemojiOptions\n          ),\n          skins: [],\n          tags: [],\n        });\n      } else {\n        this.recentEmojis.unshift({\n          unicode: emojiUnicode,\n          img: EmojiService.getEmojiImgFromUnicode(\n            emojiUnicode,\n            this.twemojiOptions\n          ),\n          skins: [],\n          tags: [],\n        });\n      }\n\n      if (this.recentEmojis.length > this.recentEmojiLimit) {\n        this.recentEmojis.splice(-1, 1);\n      }\n\n      if (this.recentEmojisStorage === \'local\') {\n        localStorage.setItem(\n          this.recentEmojiStorageName,\n          JSON.stringify(this.recentEmojis)\n        );\n      } else if (this.recentEmojisStorage === \'session\') {\n        sessionStorage.setItem(\n          this.recentEmojiStorageName,\n          JSON.stringify(this.recentEmojis)\n        );\n      }\n    },\n\n    searchEmojiByTerm() {\n      this.isSearchingEmoji = true;\n      clearTimeout(this.searchTimeout);\n      if (this.searchTerm.length > 0) {\n        this.searchTimeout = setTimeout(() => {\n          this.searchEmojis = EmojiService.getEmojiImgArrayFromEmojiPackByTerm(\n            this.emojiData,\n            this.twemojiOptions,\n            this.searchTerm\n          );\n          this.emojiGroupActive = -2;\n          this.emojiListActive = this.searchEmojis;\n          this.showSkinsSelector = false;\n          this.isSearchingEmoji = false;\n        }, 300);\n      } else {\n        this.changeEmojiListActive(0);\n        this.isSearchingEmoji = false;\n      }\n    },\n    popperOpenChanged(popperOpen: boolean) {\n      this.isPickerOpen = popperOpen;\n    },\n    setPickerWidth() {\n      if (\n        typeof this.pickerWidth === \'string\' &&\n        this.pickerWidth.startsWith(\'#\')\n      ) {\n        const domId = this.pickerWidth.slice(1);\n        const domEl = document.getElementById(domId);\n        if (domEl) this.calculatedPickerWidth = domEl.offsetWidth - 8;\n      } else if (typeof this.pickerWidth === \'number\') {\n        this.calculatedPickerWidth = this.pickerWidth;\n      } else {\n        this.calculatedPickerWidth = DEFAULT_PICKER_WIDTH;\n      }\n    },\n    onScrollEmojiList(event: UIEvent) {\n      this.$refs.popupSkins.closePopper();\n    },\n  },\n});\n<\/script>\n',"#emoji-container {\n  z-index: 1;\n}\n#emoji-container > #emoji-popup {\n  border: 1px solid #f0f0f0;\n  border-radius: 5px;\n  padding: 3px;\n}\n#emoji-container > #emoji-popup img.emoji {\n  height: 32px;\n  width: 32px;\n  vertical-align: -0.5rem;\n}\n#emoji-container > #emoji-popup > #emoji-popover-header {\n  padding: 15px 5px;\n  overflow-y: hidden;\n  overflow-x: auto;\n  white-space: nowrap;\n}\n#emoji-container > #emoji-popup > #emoji-popover-header::-webkit-scrollbar-track {\n  border-radius: 10px;\n  background-color: #f2f2f2;\n}\n#emoji-container > #emoji-popup > #emoji-popover-header::-webkit-scrollbar {\n  height: 12px;\n  background-color: #f2f2f2;\n}\n#emoji-container > #emoji-popup > #emoji-popover-header::-webkit-scrollbar-thumb {\n  border-radius: 10px;\n  background-color: #c1c1c1;\n}\n#emoji-container > #emoji-popup > #emoji-popover-header > .emoji-tab {\n  margin: 3px;\n  padding: 5px;\n  padding: 8px 5px;\n  cursor: pointer;\n  border-radius: 2px;\n  opacity: 0.5;\n  filter: grayscale(1);\n}\n#emoji-container > #emoji-popup > #emoji-popover-header > .emoji-tab:hover {\n  border-bottom: 5px solid #b3b3b3;\n  opacity: 1;\n  filter: grayscale(0);\n}\n#emoji-container > #emoji-popup > #emoji-popover-header > .emoji-tab.active {\n  border-bottom: 5px solid #b3b3b3;\n  opacity: 1;\n  filter: grayscale(0);\n}\n#emoji-container > #emoji-popup .emoji-popover-inner {\n  overflow-y: auto;\n  overflow-x: hidden;\n  background-color: #f7f7f7;\n}\n#emoji-container > #emoji-popup .emoji-popover-inner::-webkit-scrollbar-track {\n  border-radius: 10px;\n  background-color: #f2f2f2;\n}\n#emoji-container > #emoji-popup .emoji-popover-inner::-webkit-scrollbar {\n  width: 12px;\n  background-color: #f2f2f2;\n}\n#emoji-container > #emoji-popup .emoji-popover-inner::-webkit-scrollbar-thumb {\n  border-radius: 10px;\n  background-color: #c1c1c1;\n}\n#emoji-container > #emoji-popup .emoji-popover-inner #loading-label {\n  margin: 0 5px;\n}\n#emoji-container > #emoji-popup .emoji-popover-inner > div > .emoji-list {\n  padding: 10px;\n  margin: 0px;\n  text-align: justify;\n}\n#emoji-container > #emoji-popup .emoji-popover-inner > div > .emoji-list > span {\n  font-size: 15px;\n  cursor: pointer;\n  border-radius: 15px;\n}\n#emoji-container > #emoji-popup .emoji-popover-inner > div > .emoji-list > span:hover {\n  background-color: #cacaca;\n}\n#emoji-container > #emoji-popup .emoji-popover-inner > div > .emoji-list > span > img {\n  margin: 5px;\n}\n#emoji-container > #emoji-popup #emoji-popover-search {\n  background-color: #f7f7f7;\n  border-radius: 3px;\n  margin: 5px 0;\n}\n#emoji-container > #emoji-popup #emoji-popover-search > #search-header {\n  padding-top: 5px 0;\n  display: flex;\n  border: 1px solid #e6e6e6;\n  border-radius: 25px;\n}\n#emoji-container > #emoji-popup #emoji-popover-search > #search-header.is-focused {\n  background-color: #fcfcfc;\n  transition: background-color 300ms ease-in-out;\n}\n#emoji-container > #emoji-popup #emoji-popover-search > #search-header.is-focused > span {\n  filter: grayscale(0);\n  transition: filter 300ms ease-in-out;\n}\n#emoji-container > #emoji-popup #emoji-popover-search > #search-header > span {\n  flex-grow: 1;\n  padding: 5px 10px;\n  width: 32px !important;\n  text-align: center;\n  filter: grayscale(1);\n}\n#emoji-container > #emoji-popup #emoji-popover-search > #search-header > span > img {\n  width: 24px;\n  height: 24px;\n}\n#emoji-container > #emoji-popup #emoji-popover-search > #search-header > input {\n  flex-grow: 99;\n  padding: 10px 5px;\n  margin: 0 10px;\n  border: none;\n  font-size: 1rem;\n  background-color: inherit;\n  outline: none;\n}\n/* Popper Emoji */\n#btn-emoji-default {\n  flex-grow: 100;\n  border: none;\n  cursor: pointer;\n  height: 45px;\n  width: 45px;\n  margin: 10px;\n  background-color: transparent;\n}\n#btn-emoji-default > div > img.emoji {\n  height: 32px;\n  width: 32px;\n}\n#btn-emoji-default > #dummy-el {\n  height: 32px;\n  width: 32px;\n}\n#btn-emoji-default:disabled {\n  opacity: 0.6;\n  pointer-events: none;\n}\n/* * Cursor */\n.clickable {\n  cursor: pointer;\n}\n/* * Transition - Fade */\n.fade-in {\n  opacity: 1;\n  animation-name: fadeInOpacity;\n  animation-iteration-count: 1;\n  animation-timing-function: ease-in;\n  animation-duration: 0.3s;\n}\n@-moz-keyframes fadeInOpacity {\n  0% {\n    opacity: 0.4;\n  }\n  50% {\n    opacity: 0.8;\n  }\n  100% {\n    opacity: 1;\n  }\n}\n@-webkit-keyframes fadeInOpacity {\n  0% {\n    opacity: 0.4;\n  }\n  50% {\n    opacity: 0.8;\n  }\n  100% {\n    opacity: 1;\n  }\n}\n@-o-keyframes fadeInOpacity {\n  0% {\n    opacity: 0.4;\n  }\n  50% {\n    opacity: 0.8;\n  }\n  100% {\n    opacity: 1;\n  }\n}\n@keyframes fadeInOpacity {\n  0% {\n    opacity: 0.4;\n  }\n  50% {\n    opacity: 0.8;\n  }\n  100% {\n    opacity: 1;\n  }\n}\n"]},media:void 0})}),Ie,void 0,!1,void 0,!1,je,void 0,void 0),Be={replaceEmojiWithAltAttribute:function(e){return e.replace(/<img class="emoji".*?alt="(.*?)"[^>]+>/g,"$1")},unescapeHtml:function(e){return e.replace(/&amp;/g,"&").replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&quot;/g,'"').replace(/&#039;/g,"'")},escapeHTML:function(e){var n,t=document.createElement("div"),i=t.appendChild(document.createTextNode(e)),o=i.parentNode,d=o.innerHTML;return o.removeChild(i),null===(n=t.parentNode)||void 0===n||n.removeChild(t),d}},Le=n.extend({name:"SendIconImg"}),Fe=function(){var e=this.$createElement;return(this._self._c||e)("img",{attrs:{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAMAAABiM0N1AAAAflBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACCtoPsAAAAKXRSTlMADQ/78CgT7NLzy8WypJaBcV9XUCAXPTva1p2QiGEz4M26qnlmRDYkCH5CaGIAAAEHSURBVFjD7ZdbDoIwEEW1LVhAK1pBFFB82/1v0A9jJjEhVm9N5oOzgJM+bqczo4EBfow3NpDIOZeLQCIn0ziA6EnVwqIXah6DImIWgSIiWaMiUhlUREx3oIjQFhUR+TiEiFKKiIhqgYsopbCIUgqKCOWTUuF8UAYXUUpBEdFZVETkAhMRMiv6TEV0XdSZ9HdtPqR0dTk3x3Tio5p4pXS1bA56r/CUktDoRMr+ZZWjL7iLImq3uiel9Q/l71YuT9vs/QTltAwuwreGH/b6L9ePBxJ/IvijZVRGOsuo1CoT6Dti9EGqecyniZCpYNRoacuoGU0Mp4Z9FjEaaqqW0+CXC07D8cAAEx5sROBoZAawIAAAAABJRU5ErkJggg=="}})};Fe._withStripped=!0;var Me=be({render:Fe,staticRenderFns:[]},void 0,Le,void 0,!1,void 0,!1,void 0,void 0,void 0),_e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function Re(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function $e(e,n){return e(n={exports:{}},n.exports),n.exports}var ze="object"==typeof _e&&_e&&_e.Object===Object&&_e,We="object"==typeof self&&self&&self.Object===Object&&self,Ne=ze||We||Function("return this")();function Ge(e,n,t){switch(t.length){case 0:return e.call(n);case 1:return e.call(n,t[0]);case 2:return e.call(n,t[0],t[1]);case 3:return e.call(n,t[0],t[1],t[2])}return e.apply(n,t)}function He(e,n){for(var t=-1,i=n.length,o=e.length;++t<i;)e[o+t]=n[t];return e}var Ke=Object.prototype,Je=Ke.hasOwnProperty,qe=Ke.toString,Ve=Ne.Symbol,Ye=Ke.propertyIsEnumerable,Ze=Ve?Ve.isConcatSpreadable:void 0,Qe=Math.max;function Xe(e){return nn(e)||function(e){return function(e){return tn(e)&&function(e){return null!=e&&function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991}(e.length)&&!function(e){var n=function(e){var n=typeof e;return!!e&&("object"==n||"function"==n)}(e)?qe.call(e):"";return"[object Function]"==n||"[object GeneratorFunction]"==n}(e)}(e)}(e)&&Je.call(e,"callee")&&(!Ye.call(e,"callee")||"[object Arguments]"==qe.call(e))}(e)||!!(Ze&&e&&e[Ze])}function en(e){if("string"==typeof e||function(e){return"symbol"==typeof e||tn(e)&&"[object Symbol]"==qe.call(e)}(e))return e;var n=e+"";return"0"==n&&1/e==-1/0?"-0":n}var nn=Array.isArray;function tn(e){return!!e&&"object"==typeof e}var on=function(e,n){return n=Qe(void 0===n?e.length-1:n,0),function(){for(var t=arguments,i=-1,o=Qe(t.length-n,0),d=Array(o);++i<o;)d[i]=t[n+i];i=-1;for(var u=Array(n+1);++i<n;)u[i]=t[i];return u[n]=d,Ge(e,this,u)}}((function(e,n){return null==e?{}:function(e,n){return function(e,n,t){var i=-1,o=n.length,d={};for(;++i<o;){var u=n[i],r=e[u];t(r,u)&&(d[u]=r)}return d}(e=Object(e),n,(function(n,t){return t in e}))}(e,function(e,n){for(var t=-1,i=e?e.length:0,o=Array(i);++t<i;)o[t]=n(e[t],t,e);return o}(function e(n,t,i,o,d){var u=-1,r=n.length;for(i||(i=Xe),d||(d=[]);++u<r;){var a=n[u];t>0&&i(a)?t>1?e(a,t-1,i,o,d):He(d,a):o||(d[d.length]=a)}return d}(n,1),en))})),dn={methods:{propsFor:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.$props,t=this.$options.components[e];if(t){var i=t.cid&&"function"==typeof t?t.options.props:t.props,o=Object.keys(i);return on(n,o)}return{}}}},un=function(e){return"object"==typeof e?null!==e:"function"==typeof e},rn=function(e){if(!un(e))throw TypeError(e+" is not an object!");return e},an=function(e){if(null==e)throw TypeError("Can't call method on  "+e);return e},cn=function(e){return Object(an(e))},sn=Math.ceil,fn=Math.floor,pn=function(e){return isNaN(e=+e)?0:(e>0?fn:sn)(e)},ln=Math.min,mn=function(e){return e>0?ln(pn(e),9007199254740991):0},hn=function(e){return function(n,t){var i,o,d=String(an(n)),u=pn(t),r=d.length;return u<0||u>=r?e?"":void 0:(i=d.charCodeAt(u))<55296||i>56319||u+1===r||(o=d.charCodeAt(u+1))<56320||o>57343?e?d.charAt(u):i:e?d.slice(u,u+2):o-56320+(i-55296<<10)+65536}},An=hn(!0),gn=function(e,n,t){return n+(t?An(e,n).length:1)},bn={}.toString,vn=function(e){return bn.call(e).slice(8,-1)},jn=$e((function(e){var n=e.exports={version:"2.6.11"};"number"==typeof __e&&(__e=n)})),yn=(jn.version,$e((function(e){var n=e.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=n)}))),xn=$e((function(e){var n=yn["__core-js_shared__"]||(yn["__core-js_shared__"]={});(e.exports=function(e,t){return n[e]||(n[e]=void 0!==t?t:{})})("versions",[]).push({version:jn.version,mode:"global",copyright:"© 2019 Denis Pushkarev (zloirock.ru)"})})),wn=0,kn=Math.random(),En=function(e){return"Symbol(".concat(void 0===e?"":e,")_",(++wn+kn).toString(36))},Cn=$e((function(e){var n=xn("wks"),t=yn.Symbol,i="function"==typeof t;(e.exports=function(e){return n[e]||(n[e]=i&&t[e]||(i?t:En)("Symbol."+e))}).store=n})),On=Cn("toStringTag"),Sn="Arguments"==vn(function(){return arguments}()),Pn=function(e){var n,t,i;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(t=function(e,n){try{return e[n]}catch(e){}}(n=Object(e),On))?t:Sn?vn(n):"Object"==(i=vn(n))&&"function"==typeof n.callee?"Arguments":i},Tn=RegExp.prototype.exec,In=function(e,n){var t=e.exec;if("function"==typeof t){var i=t.call(e,n);if("object"!=typeof i)throw new TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==Pn(e))throw new TypeError("RegExp#exec called on incompatible receiver");return Tn.call(e,n)},Dn=function(){var e=rn(this),n="";return e.global&&(n+="g"),e.ignoreCase&&(n+="i"),e.multiline&&(n+="m"),e.unicode&&(n+="u"),e.sticky&&(n+="y"),n},Un=RegExp.prototype.exec,Bn=String.prototype.replace,Ln=Un,Fn=function(){var e=/a/,n=/b*/g;return Un.call(e,"a"),Un.call(n,"a"),0!==e.lastIndex||0!==n.lastIndex}(),Mn=void 0!==/()??/.exec("")[1];(Fn||Mn)&&(Ln=function(e){var n,t,i,o,d=this;return Mn&&(t=new RegExp("^"+d.source+"$(?!\\s)",Dn.call(d))),Fn&&(n=d.lastIndex),i=Un.call(d,e),Fn&&i&&(d.lastIndex=d.global?i.index+i[0].length:n),Mn&&i&&i.length>1&&Bn.call(i[0],t,(function(){for(o=1;o<arguments.length-2;o++)void 0===arguments[o]&&(i[o]=void 0)})),i});var _n=Ln,Rn=function(e){try{return!!e()}catch(e){return!0}},$n=!Rn((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})),zn=yn.document,Wn=un(zn)&&un(zn.createElement),Nn=function(e){return Wn?zn.createElement(e):{}},Gn=!$n&&!Rn((function(){return 7!=Object.defineProperty(Nn("div"),"a",{get:function(){return 7}}).a})),Hn=function(e,n){if(!un(e))return e;var t,i;if(n&&"function"==typeof(t=e.toString)&&!un(i=t.call(e)))return i;if("function"==typeof(t=e.valueOf)&&!un(i=t.call(e)))return i;if(!n&&"function"==typeof(t=e.toString)&&!un(i=t.call(e)))return i;throw TypeError("Can't convert object to primitive value")},Kn=Object.defineProperty,Jn={f:$n?Object.defineProperty:function(e,n,t){if(rn(e),n=Hn(n,!0),rn(t),Gn)try{return Kn(e,n,t)}catch(e){}if("get"in t||"set"in t)throw TypeError("Accessors not supported!");return"value"in t&&(e[n]=t.value),e}},qn=function(e,n){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:n}},Vn=$n?function(e,n,t){return Jn.f(e,n,qn(1,t))}:function(e,n,t){return e[n]=t,e},Yn={}.hasOwnProperty,Zn=function(e,n){return Yn.call(e,n)},Qn=xn("native-function-to-string",Function.toString),Xn=$e((function(e){var n=En("src"),t=(""+Qn).split("toString");jn.inspectSource=function(e){return Qn.call(e)},(e.exports=function(e,i,o,d){var u="function"==typeof o;u&&(Zn(o,"name")||Vn(o,"name",i)),e[i]!==o&&(u&&(Zn(o,n)||Vn(o,n,e[i]?""+e[i]:t.join(String(i)))),e===yn?e[i]=o:d?e[i]?e[i]=o:Vn(e,i,o):(delete e[i],Vn(e,i,o)))})(Function.prototype,"toString",(function(){return"function"==typeof this&&this[n]||Qn.call(this)}))})),et=function(e){if("function"!=typeof e)throw TypeError(e+" is not a function!");return e},nt=function(e,n,t){if(et(e),void 0===n)return e;switch(t){case 1:return function(t){return e.call(n,t)};case 2:return function(t,i){return e.call(n,t,i)};case 3:return function(t,i,o){return e.call(n,t,i,o)}}return function(){return e.apply(n,arguments)}},tt=function(e,n,t){var i,o,d,u,r=e&tt.F,a=e&tt.G,c=e&tt.S,s=e&tt.P,f=e&tt.B,p=a?yn:c?yn[n]||(yn[n]={}):(yn[n]||{}).prototype,l=a?jn:jn[n]||(jn[n]={}),m=l.prototype||(l.prototype={});for(i in a&&(t=n),t)d=((o=!r&&p&&void 0!==p[i])?p:t)[i],u=f&&o?nt(d,yn):s&&"function"==typeof d?nt(Function.call,d):d,p&&Xn(p,i,d,e&tt.U),l[i]!=d&&Vn(l,i,u),s&&m[i]!=d&&(m[i]=d)};yn.core=jn,tt.F=1,tt.G=2,tt.S=4,tt.P=8,tt.B=16,tt.W=32,tt.U=64,tt.R=128;var it=tt;it({target:"RegExp",proto:!0,forced:_n!==/./.exec},{exec:_n});var ot=Cn("species"),dt=!Rn((function(){var e=/./;return e.exec=function(){var e=[];return e.groups={a:"7"},e},"7"!=="".replace(e,"$<a>")})),ut=function(){var e=/(?:)/,n=e.exec;e.exec=function(){return n.apply(this,arguments)};var t="ab".split(e);return 2===t.length&&"a"===t[0]&&"b"===t[1]}(),rt=function(e,n,t){var i=Cn(e),o=!Rn((function(){var n={};return n[i]=function(){return 7},7!=""[e](n)})),d=o?!Rn((function(){var n=!1,t=/a/;return t.exec=function(){return n=!0,null},"split"===e&&(t.constructor={},t.constructor[ot]=function(){return t}),t[i](""),!n})):void 0;if(!o||!d||"replace"===e&&!dt||"split"===e&&!ut){var u=/./[i],r=t(an,i,""[e],(function(e,n,t,i,d){return n.exec===_n?o&&!d?{done:!0,value:u.call(n,t,i)}:{done:!0,value:e.call(t,n,i)}:{done:!1}})),a=r[0],c=r[1];Xn(String.prototype,e,a),Vn(RegExp.prototype,i,2==n?function(e,n){return c.call(e,this,n)}:function(e){return c.call(e,this)})}},at=Math.max,ct=Math.min,st=Math.floor,ft=/\$([$&`']|\d\d?|<[^>]*>)/g,pt=/\$([$&`']|\d\d?)/g;rt("replace",2,(function(e,n,t,i){return[function(i,o){var d=e(this),u=null==i?void 0:i[n];return void 0!==u?u.call(i,d,o):t.call(String(d),i,o)},function(e,n){var d=i(t,e,this,n);if(d.done)return d.value;var u=rn(e),r=String(this),a="function"==typeof n;a||(n=String(n));var c=u.global;if(c){var s=u.unicode;u.lastIndex=0}for(var f=[];;){var p=In(u,r);if(null===p)break;if(f.push(p),!c)break;""===String(p[0])&&(u.lastIndex=gn(r,mn(u.lastIndex),s))}for(var l,m="",h=0,A=0;A<f.length;A++){p=f[A];for(var g=String(p[0]),b=at(ct(pn(p.index),r.length),0),v=[],j=1;j<p.length;j++)v.push(void 0===(l=p[j])?l:String(l));var y=p.groups;if(a){var x=[g].concat(v,b,r);void 0!==y&&x.push(y);var w=String(n.apply(void 0,x))}else w=o(g,r,b,v,y,n);b>=h&&(m+=r.slice(h,b)+w,h=b+g.length)}return m+r.slice(h)}];function o(e,n,i,o,d,u){var r=i+e.length,a=o.length,c=pt;return void 0!==d&&(d=cn(d),c=ft),t.call(u,c,(function(t,u){var c;switch(u.charAt(0)){case"$":return"$";case"&":return e;case"`":return n.slice(0,i);case"'":return n.slice(r);case"<":c=d[u.slice(1,-1)];break;default:var s=+u;if(0===s)return t;if(s>a){var f=st(s/10);return 0===f?t:f<=a?void 0===o[f-1]?u.charAt(1):o[f-1]+u.charAt(1):t}c=o[s-1]}return void 0===c?"":c}))}}));var lt=Object("z").propertyIsEnumerable(0)?Object:function(e){return"String"==vn(e)?e.split(""):Object(e)},mt=function(e){return lt(an(e))},ht=Math.max,At=Math.min,gt=function(e){return function(n,t,i){var o,d=mt(n),u=mn(d.length),r=function(e,n){return(e=pn(e))<0?ht(e+n,0):At(e,n)}(i,u);if(e&&t!=t){for(;u>r;)if((o=d[r++])!=o)return!0}else for(;u>r;r++)if((e||r in d)&&d[r]===t)return e||r||0;return!e&&-1}},bt=function(e,n){return!!e&&Rn((function(){n?e.call(null,(function(){}),1):e.call(null)}))},vt=gt(!1),jt=[].indexOf,yt=!!jt&&1/[1].indexOf(1,-0)<0;it(it.P+it.F*(yt||!bt(jt)),"Array",{indexOf:function(e){return yt?jt.apply(this,arguments)||0:vt(this,e,arguments[1])}});var xt,wt=/[a-z]{1,6}(?:[._][a-z]{1,2})?/i,kt=/\!'#%&'\(\)*\+,\\\-\.\/:;<=>\?@\[\]\^_{|}~\$/,Et={f:{}.propertyIsEnumerable},Ct=Object.getOwnPropertyDescriptor,Ot={f:$n?Ct:function(e,n){if(e=mt(e),n=Hn(n,!0),Gn)try{return Ct(e,n)}catch(e){}if(Zn(e,n))return qn(!Et.f.call(e,n),e[n])}},St=function(e,n){if(rn(e),!un(n)&&null!==n)throw TypeError(n+": can't set as prototype!")},Pt={set:Object.setPrototypeOf||("__proto__"in{}?function(e,n,t){try{(t=nt(Function.call,Ot.f(Object.prototype,"__proto__").set,2))(e,[]),n=!(e instanceof Array)}catch(e){n=!0}return function(e,i){return St(e,i),n?e.__proto__=i:t(e,i),e}}({},!1):void 0),check:St}.set,Tt=xn("keys"),It=function(e){return Tt[e]||(Tt[e]=En(e))},Dt=gt(!1),Ut=It("IE_PROTO"),Bt=function(e,n){var t,i=mt(e),o=0,d=[];for(t in i)t!=Ut&&Zn(i,t)&&d.push(t);for(;n.length>o;)Zn(i,t=n[o++])&&(~Dt(d,t)||d.push(t));return d},Lt="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(","),Ft=Lt.concat("length","prototype"),Mt={f:Object.getOwnPropertyNames||function(e){return Bt(e,Ft)}},_t=Cn("match"),Rt=function(e){var n;return un(e)&&(void 0!==(n=e[_t])?!!n:"RegExp"==vn(e))},$t=Cn("species"),zt=Jn.f,Wt=Mt.f,Nt=yn.RegExp,Gt=Nt,Ht=Nt.prototype,Kt=/a/g,Jt=/a/g,qt=new Nt(Kt)!==Kt;if($n&&(!qt||Rn((function(){return Jt[Cn("match")]=!1,Nt(Kt)!=Kt||Nt(Jt)==Jt||"/a/i"!=Nt(Kt,"i")})))){Nt=function(e,n){var t,i,o,d,u=this instanceof Nt,r=Rt(e),a=void 0===n;return!u&&r&&e.constructor===Nt&&a?e:(t=qt?new Gt(r&&!a?e.source:e,n):Gt((r=e instanceof Nt)?e.source:e,r&&a?Dn.call(e):n),i=Nt,(d=(u?this:Ht).constructor)!==i&&"function"==typeof d&&(o=d.prototype)!==i.prototype&&un(o)&&Pt&&Pt(t,o),t)};for(var Vt=function(e){e in Nt||zt(Nt,e,{configurable:!0,get:function(){return Gt[e]},set:function(n){Gt[e]=n}})},Yt=Wt(Gt),Zt=0;Yt.length>Zt;)Vt(Yt[Zt++]);Ht.constructor=Nt,Nt.prototype=Ht,Xn(yn,"RegExp",Nt)}function Qt(e,n,t){return t=t||"","string"!=typeof e&&(e.global&&t.indexOf("g")<0&&(t+="g"),e.ignoreCase&&t.indexOf("i")<0&&(t+="i"),e.multiline&&t.indexOf("m")<0&&(t+="m"),e=e.source),new RegExp(e.replace(/#\{(\w+)\}/g,(function(e,t){var i=n[t]||"";return"string"!=typeof i&&(i=i.source),i})),t)}xt=yn["RegExp"],$n&&xt&&!xt[$t]&&Jn.f(xt,$t,{configurable:!0,get:function(){return this}});var Xt=/\x09-\x0D\x20\x85\xA0\u1680\u180E\u2000-\u200A\u2028\u2029\u202F\u205F\u3000/,ei=Qt(/[#{spacesGroup}]/,{spacesGroup:Xt});Qt("(^|#{spaces})(\\$)(#{cashtag})(?=$|\\s|[#{punct}])",{cashtag:wt,spaces:ei,punct:kt},"gi");rt("match",1,(function(e,n,t,i){return[function(t){var i=e(this),o=null==t?void 0:t[n];return void 0!==o?o.call(t,i):new RegExp(t)[n](String(i))},function(e){var n=i(t,e,this);if(n.done)return n.value;var o=rn(e),d=String(this);if(!o.global)return In(o,d);var u=o.unicode;o.lastIndex=0;for(var r,a=[],c=0;null!==(r=In(o,d));){var s=String(r[0]);a[c]=s,""===s&&(o.lastIndex=gn(d,mn(o.lastIndex),u)),c++}return 0===c?null:a}]}));var ni=/[#＃]/,ti=(Qt(/^(?:#{hashSigns}|:\/\/)/,{hashSigns:ni}),Qt(RegExp("(?:(?:한국|香港|澳門|新加坡|台灣|台湾|中國|中国|გე|ລາວ|ไทย|ලංකා|ഭാരതം|ಭಾರತ|భారత్|சிங்கப்பூர்|இலங்கை|இந்தியா|ଭାରତ|ભારત|ਭਾਰਤ|ভাৰত|ভারত|বাংলা|भारोत|भारतम्|भारत|ڀارت|پاکستان|موريتانيا|مليسيا|مصر|قطر|فلسطين|عمان|عراق|سورية|سودان|تونس|بھارت|بارت|ایران|امارات|المغرب|السعودية|الجزائر|البحرين|الاردن|հայ|қаз|укр|срб|рф|мон|мкд|ею|бел|бг|ευ|ελ|zw|zm|za|yt|ye|ws|wf|vu|vn|vi|vg|ve|vc|va|uz|uy|us|um|uk|ug|ua|tz|tw|tv|tt|tr|tp|to|tn|tm|tl|tk|tj|th|tg|tf|td|tc|sz|sy|sx|sv|su|st|ss|sr|so|sn|sm|sl|sk|sj|si|sh|sg|se|sd|sc|sb|sa|rw|ru|rs|ro|re|qa|py|pw|pt|ps|pr|pn|pm|pl|pk|ph|pg|pf|pe|pa|om|nz|nu|nr|np|no|nl|ni|ng|nf|ne|nc|na|mz|my|mx|mw|mv|mu|mt|ms|mr|mq|mp|mo|mn|mm|ml|mk|mh|mg|mf|me|md|mc|ma|ly|lv|lu|lt|ls|lr|lk|li|lc|lb|la|kz|ky|kw|kr|kp|kn|km|ki|kh|kg|ke|jp|jo|jm|je|it|is|ir|iq|io|in|im|il|ie|id|hu|ht|hr|hn|hm|hk|gy|gw|gu|gt|gs|gr|gq|gp|gn|gm|gl|gi|gh|gg|gf|ge|gd|gb|ga|fr|fo|fm|fk|fj|fi|eu|et|es|er|eh|eg|ee|ec|dz|do|dm|dk|dj|de|cz|cy|cx|cw|cv|cu|cr|co|cn|cm|cl|ck|ci|ch|cg|cf|cd|cc|ca|bz|by|bw|bv|bt|bs|br|bq|bo|bn|bm|bl|bj|bi|bh|bg|bf|be|bd|bb|ba|az|ax|aw|au|at|as|ar|aq|ao|an|am|al|ai|ag|af|ae|ad|ac)(?=[^0-9a-zA-Z@+-]|$))"))),ii=/\u202A-\u202E\u061C\u200E\u200F\u2066\u2067\u2068\u2069/,oi=/\uFFFE\uFEFF\uFFFF/;function di(e,n){return e.replace(/#\{(\w+)\}/g,(function(e,t){return n[t]||""}))}var ui=di("#{punct}#{spacesGroup}#{invalidCharsGroup}#{directionalMarkersGroup}",{punct:kt,spacesGroup:Xt,invalidCharsGroup:oi,directionalMarkersGroup:ii}),ri=Qt(/[^#{invalidDomainChars}]/,{invalidDomainChars:ui}),ai=Qt(/(?:(?:#{validDomainChars}(?:-|#{validDomainChars})*)?#{validDomainChars}\.)/,{validDomainChars:ri}),ci=Qt(RegExp("(?:(?:삼성|닷컴|닷넷|香格里拉|餐厅|食品|飞利浦|電訊盈科|集团|通販|购物|谷歌|诺基亚|联通|网络|网站|网店|网址|组织机构|移动|珠宝|点看|游戏|淡马锡|机构|書籍|时尚|新闻|政府|政务|招聘|手表|手机|我爱你|慈善|微博|广东|工行|家電|娱乐|天主教|大拿|大众汽车|在线|嘉里大酒店|嘉里|商标|商店|商城|公益|公司|八卦|健康|信息|佛山|企业|中文网|中信|世界|ポイント|ファッション|セール|ストア|コム|グーグル|クラウド|みんな|คอม|संगठन|नेट|कॉम|همراه|موقع|موبايلي|كوم|كاثوليك|عرب|شبكة|بيتك|بازار|العليان|ارامكو|اتصالات|ابوظبي|קום|сайт|рус|орг|онлайн|москва|ком|католик|дети|zuerich|zone|zippo|zip|zero|zara|zappos|yun|youtube|you|yokohama|yoga|yodobashi|yandex|yamaxun|yahoo|yachts|xyz|xxx|xperia|xin|xihuan|xfinity|xerox|xbox|wtf|wtc|wow|world|works|work|woodside|wolterskluwer|wme|winners|wine|windows|win|williamhill|wiki|wien|whoswho|weir|weibo|wedding|wed|website|weber|webcam|weatherchannel|weather|watches|watch|warman|wanggou|wang|walter|walmart|wales|vuelos|voyage|voto|voting|vote|volvo|volkswagen|vodka|vlaanderen|vivo|viva|vistaprint|vista|vision|visa|virgin|vip|vin|villas|viking|vig|video|viajes|vet|versicherung|vermögensberatung|vermögensberater|verisign|ventures|vegas|vanguard|vana|vacations|ups|uol|uno|university|unicom|uconnect|ubs|ubank|tvs|tushu|tunes|tui|tube|trv|trust|travelersinsurance|travelers|travelchannel|travel|training|trading|trade|toys|toyota|town|tours|total|toshiba|toray|top|tools|tokyo|today|tmall|tkmaxx|tjx|tjmaxx|tirol|tires|tips|tiffany|tienda|tickets|tiaa|theatre|theater|thd|teva|tennis|temasek|telefonica|telecity|tel|technology|tech|team|tdk|tci|taxi|tax|tattoo|tatar|tatamotors|target|taobao|talk|taipei|tab|systems|symantec|sydney|swiss|swiftcover|swatch|suzuki|surgery|surf|support|supply|supplies|sucks|style|study|studio|stream|store|storage|stockholm|stcgroup|stc|statoil|statefarm|statebank|starhub|star|staples|stada|srt|srl|spreadbetting|spot|sport|spiegel|space|soy|sony|song|solutions|solar|sohu|software|softbank|social|soccer|sncf|smile|smart|sling|skype|sky|skin|ski|site|singles|sina|silk|shriram|showtime|show|shouji|shopping|shop|shoes|shiksha|shia|shell|shaw|sharp|shangrila|sfr|sexy|sex|sew|seven|ses|services|sener|select|seek|security|secure|seat|search|scot|scor|scjohnson|science|schwarz|schule|school|scholarships|schmidt|schaeffler|scb|sca|sbs|sbi|saxo|save|sas|sarl|sapo|sap|sanofi|sandvikcoromant|sandvik|samsung|samsclub|salon|sale|sakura|safety|safe|saarland|ryukyu|rwe|run|ruhr|rugby|rsvp|room|rogers|rodeo|rocks|rocher|rmit|rip|rio|ril|rightathome|ricoh|richardli|rich|rexroth|reviews|review|restaurant|rest|republican|report|repair|rentals|rent|ren|reliance|reit|reisen|reise|rehab|redumbrella|redstone|red|recipes|realty|realtor|realestate|read|raid|radio|racing|qvc|quest|quebec|qpon|pwc|pub|prudential|pru|protection|property|properties|promo|progressive|prof|productions|prod|pro|prime|press|praxi|pramerica|post|porn|politie|poker|pohl|pnc|plus|plumbing|playstation|play|place|pizza|pioneer|pink|ping|pin|pid|pictures|pictet|pics|piaget|physio|photos|photography|photo|phone|philips|phd|pharmacy|pfizer|pet|pccw|pay|passagens|party|parts|partners|pars|paris|panerai|panasonic|pamperedchef|page|ovh|ott|otsuka|osaka|origins|orientexpress|organic|org|orange|oracle|open|ooo|onyourside|online|onl|ong|one|omega|ollo|oldnavy|olayangroup|olayan|okinawa|office|off|observer|obi|nyc|ntt|nrw|nra|nowtv|nowruz|now|norton|northwesternmutual|nokia|nissay|nissan|ninja|nikon|nike|nico|nhk|ngo|nfl|nexus|nextdirect|next|news|newholland|new|neustar|network|netflix|netbank|net|nec|nba|navy|natura|nationwide|name|nagoya|nadex|nab|mutuelle|mutual|museum|mtr|mtpc|mtn|msd|movistar|movie|mov|motorcycles|moto|moscow|mortgage|mormon|mopar|montblanc|monster|money|monash|mom|moi|moe|moda|mobily|mobile|mobi|mma|mls|mlb|mitsubishi|mit|mint|mini|mil|microsoft|miami|metlife|merckmsd|meo|menu|men|memorial|meme|melbourne|meet|media|med|mckinsey|mcdonalds|mcd|mba|mattel|maserati|marshalls|marriott|markets|marketing|market|map|mango|management|man|makeup|maison|maif|madrid|macys|luxury|luxe|lupin|lundbeck|ltda|ltd|lplfinancial|lpl|love|lotto|lotte|london|lol|loft|locus|locker|loans|loan|llp|llc|lixil|living|live|lipsy|link|linde|lincoln|limo|limited|lilly|like|lighting|lifestyle|lifeinsurance|life|lidl|liaison|lgbt|lexus|lego|legal|lefrak|leclerc|lease|lds|lawyer|law|latrobe|latino|lat|lasalle|lanxess|landrover|land|lancome|lancia|lancaster|lamer|lamborghini|ladbrokes|lacaixa|kyoto|kuokgroup|kred|krd|kpn|kpmg|kosher|komatsu|koeln|kiwi|kitchen|kindle|kinder|kim|kia|kfh|kerryproperties|kerrylogistics|kerryhotels|kddi|kaufen|juniper|juegos|jprs|jpmorgan|joy|jot|joburg|jobs|jnj|jmp|jll|jlc|jio|jewelry|jetzt|jeep|jcp|jcb|java|jaguar|iwc|iveco|itv|itau|istanbul|ist|ismaili|iselect|irish|ipiranga|investments|intuit|international|intel|int|insure|insurance|institute|ink|ing|info|infiniti|industries|inc|immobilien|immo|imdb|imamat|ikano|iinet|ifm|ieee|icu|ice|icbc|ibm|hyundai|hyatt|hughes|htc|hsbc|how|house|hotmail|hotels|hoteles|hot|hosting|host|hospital|horse|honeywell|honda|homesense|homes|homegoods|homedepot|holiday|holdings|hockey|hkt|hiv|hitachi|hisamitsu|hiphop|hgtv|hermes|here|helsinki|help|healthcare|health|hdfcbank|hdfc|hbo|haus|hangout|hamburg|hair|guru|guitars|guide|guge|gucci|guardian|group|grocery|gripe|green|gratis|graphics|grainger|gov|got|gop|google|goog|goodyear|goodhands|goo|golf|goldpoint|gold|godaddy|gmx|gmo|gmbh|gmail|globo|global|gle|glass|glade|giving|gives|gifts|gift|ggee|george|genting|gent|gea|gdn|gbiz|gay|garden|gap|games|game|gallup|gallo|gallery|gal|fyi|futbol|furniture|fund|fun|fujixerox|fujitsu|ftr|frontier|frontdoor|frogans|frl|fresenius|free|fox|foundation|forum|forsale|forex|ford|football|foodnetwork|food|foo|fly|flsmidth|flowers|florist|flir|flights|flickr|fitness|fit|fishing|fish|firmdale|firestone|fire|financial|finance|final|film|fido|fidelity|fiat|ferrero|ferrari|feedback|fedex|fast|fashion|farmers|farm|fans|fan|family|faith|fairwinds|fail|fage|extraspace|express|exposed|expert|exchange|everbank|events|eus|eurovision|etisalat|esurance|estate|esq|erni|ericsson|equipment|epson|epost|enterprises|engineering|engineer|energy|emerck|email|education|edu|edeka|eco|eat|earth|dvr|dvag|durban|dupont|duns|dunlop|duck|dubai|dtv|drive|download|dot|doosan|domains|doha|dog|dodge|doctor|docs|dnp|diy|dish|discover|discount|directory|direct|digital|diet|diamonds|dhl|dev|design|desi|dentist|dental|democrat|delta|deloitte|dell|delivery|degree|deals|dealer|deal|dds|dclk|day|datsun|dating|date|data|dance|dad|dabur|cyou|cymru|cuisinella|csc|cruises|cruise|crs|crown|cricket|creditunion|creditcard|credit|cpa|courses|coupons|coupon|country|corsica|coop|cool|cookingchannel|cooking|contractors|contact|consulting|construction|condos|comsec|computer|compare|company|community|commbank|comcast|com|cologne|college|coffee|codes|coach|clubmed|club|cloud|clothing|clinique|clinic|click|cleaning|claims|cityeats|city|citic|citi|citadel|cisco|circle|cipriani|church|chrysler|chrome|christmas|chloe|chintai|cheap|chat|chase|charity|channel|chanel|cfd|cfa|cern|ceo|center|ceb|cbs|cbre|cbn|cba|catholic|catering|cat|casino|cash|caseih|case|casa|cartier|cars|careers|career|care|cards|caravan|car|capitalone|capital|capetown|canon|cancerresearch|camp|camera|cam|calvinklein|call|cal|cafe|cab|bzh|buzz|buy|business|builders|build|bugatti|budapest|brussels|brother|broker|broadway|bridgestone|bradesco|box|boutique|bot|boston|bostik|bosch|boots|booking|book|boo|bond|bom|bofa|boehringer|boats|bnpparibas|bnl|bmw|bms|blue|bloomberg|blog|blockbuster|blanco|blackfriday|black|biz|bio|bingo|bing|bike|bid|bible|bharti|bet|bestbuy|best|berlin|bentley|beer|beauty|beats|bcn|bcg|bbva|bbt|bbc|bayern|bauhaus|basketball|baseball|bargains|barefoot|barclays|barclaycard|barcelona|bar|bank|band|bananarepublic|banamex|baidu|baby|azure|axa|aws|avianca|autos|auto|author|auspost|audio|audible|audi|auction|attorney|athleta|associates|asia|asda|arte|art|arpa|army|archi|aramco|arab|aquarelle|apple|app|apartments|aol|anz|anquan|android|analytics|amsterdam|amica|amfam|amex|americanfamily|americanexpress|alstom|alsace|ally|allstate|allfinanz|alipay|alibaba|alfaromeo|akdn|airtel|airforce|airbus|aigo|aig|agency|agakhan|africa|afl|afamilycompany|aetna|aero|aeg|adult|ads|adac|actor|active|aco|accountants|accountant|accenture|academy|abudhabi|abogado|able|abc|abbvie|abbott|abb|abarth|aarp|aaa|onion)(?=[^0-9a-zA-Z@+-]|$))")),si=/(?:xn--[\-0-9a-z]+)/,fi=Qt(/(?:(?:#{validDomainChars}(?:[_-]|#{validDomainChars})*)?#{validDomainChars}\.)/,{validDomainChars:ri}),pi=Qt(/(?:#{validSubdomain}*#{validDomainName}(?:#{validGTLD}|#{validCCTLD}|#{validPunycode}))/,{validDomainName:ai,validSubdomain:fi,validGTLD:ci,validCCTLD:ti,validPunycode:si}),li=/[0-9]+/,mi=/\u0400-\u04FF/,hi=/\xC0-\xD6\xD8-\xF6\xF8-\xFF\u0100-\u024F\u0253\u0254\u0256\u0257\u0259\u025B\u0263\u0268\u026F\u0272\u0289\u028B\u02BB\u0300-\u036F\u1E00-\u1EFF/,Ai=Qt(/[a-z#{cyrillicLettersAndMarks}0-9!\*';:=\+,\.\$\/%#\[\]\-\u2013_~@\|&#{latinAccentChars}]/i,{cyrillicLettersAndMarks:mi,latinAccentChars:hi}),gi=Qt("\\((?:#{validGeneralUrlPathChars}+|(?:#{validGeneralUrlPathChars}*\\(#{validGeneralUrlPathChars}+\\)#{validGeneralUrlPathChars}*))\\)",{validGeneralUrlPathChars:Ai},"i"),bi=Qt(/[\+\-a-z#{cyrillicLettersAndMarks}0-9=_#\/#{latinAccentChars}]|(?:#{validUrlBalancedParens})/i,{cyrillicLettersAndMarks:mi,latinAccentChars:hi,validUrlBalancedParens:gi}),vi=Qt("(?:(?:#{validGeneralUrlPathChars}*(?:#{validUrlBalancedParens}#{validGeneralUrlPathChars}*)*#{validUrlPathEndingChars})|(?:@#{validGeneralUrlPathChars}+/))",{validGeneralUrlPathChars:Ai,validUrlBalancedParens:gi,validUrlPathEndingChars:bi},"i"),ji=Qt(/(?:[^A-Za-z0-9@＠$#＃#{invalidCharsGroup}]|[#{directionalMarkersGroup}]|^)/,{invalidCharsGroup:oi,directionalMarkersGroup:ii}),yi=/[a-z0-9!?\*'@\(\);:&=\+\$\/%#\[\]\-_\.,~|]/i,xi=/[a-z0-9\-_&=#\/]/i,wi=Qt("((#{validUrlPrecedingChars})((https?:\\/\\/)?(#{validDomain})(?::(#{validPortNumber}))?(\\/#{validUrlPath}*)?(\\?#{validUrlQueryChars}*#{validUrlQueryEndingChars})?))",{validUrlPrecedingChars:ji,validDomain:pi,validPortNumber:li,validUrlPath:vi,validUrlQueryChars:yi,validUrlQueryEndingChars:xi},"gi"),ki=/[-_.\/]$/,Ei=Cn("species"),Ci=Math.min,Oi=[].push,Si=!Rn((function(){RegExp(4294967295,"y")}));rt("split",2,(function(e,n,t,i){var o;return o="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(e,n){var i=String(this);if(void 0===e&&0===n)return[];if(!Rt(e))return t.call(i,e,n);for(var o,d,u,r=[],a=(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.unicode?"u":"")+(e.sticky?"y":""),c=0,s=void 0===n?4294967295:n>>>0,f=new RegExp(e.source,a+"g");(o=_n.call(f,i))&&!((d=f.lastIndex)>c&&(r.push(i.slice(c,o.index)),o.length>1&&o.index<i.length&&Oi.apply(r,o.slice(1)),u=o[0].length,c=d,r.length>=s));)f.lastIndex===o.index&&f.lastIndex++;return c===i.length?!u&&f.test("")||r.push(""):r.push(i.slice(c)),r.length>s?r.slice(0,s):r}:"0".split(void 0,0).length?function(e,n){return void 0===e&&0===n?[]:t.call(this,e,n)}:t,[function(t,i){var d=e(this),u=null==t?void 0:t[n];return void 0!==u?u.call(t,d,i):o.call(String(d),t,i)},function(e,n){var d=i(o,e,this,n,o!==t);if(d.done)return d.value;var u=rn(e),r=String(this),a=function(e,n){var t,i=rn(e).constructor;return void 0===i||null==(t=rn(i)[Ei])?n:et(t)}(u,RegExp),c=u.unicode,s=(u.ignoreCase?"i":"")+(u.multiline?"m":"")+(u.unicode?"u":"")+(Si?"y":"g"),f=new a(Si?u:"^(?:"+u.source+")",s),p=void 0===n?4294967295:n>>>0;if(0===p)return[];if(0===r.length)return null===In(f,r)?[r]:[];for(var l=0,m=0,h=[];m<r.length;){f.lastIndex=Si?m:0;var A,g=In(f,Si?r:r.slice(m));if(null===g||(A=Ci(mn(f.lastIndex+(Si?0:m)),r.length))===l)m=gn(r,m,c);else{if(h.push(r.slice(l,m)),h.length===p)return h;for(var b=1;b<=g.length-1;b++)if(h.push(g[b]),h.length===p)return h;m=l=A}}return h.push(r.slice(l)),h}]}));var Pi=$e((function(e,n){!function(t){var i=n&&!n.nodeType&&n,o=e&&!e.nodeType&&e,d="object"==typeof _e&&_e;d.global!==d&&d.window!==d&&d.self!==d||(t=d);var u,r,a=2147483647,c=/^xn--/,s=/[^\x20-\x7E]/,f=/[\x2E\u3002\uFF0E\uFF61]/g,p={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},l=Math.floor,m=String.fromCharCode;function h(e){throw new RangeError(p[e])}function A(e,n){for(var t=e.length,i=[];t--;)i[t]=n(e[t]);return i}function g(e,n){var t=e.split("@"),i="";return t.length>1&&(i=t[0]+"@",e=t[1]),i+A((e=e.replace(f,".")).split("."),n).join(".")}function b(e){for(var n,t,i=[],o=0,d=e.length;o<d;)(n=e.charCodeAt(o++))>=55296&&n<=56319&&o<d?56320==(64512&(t=e.charCodeAt(o++)))?i.push(((1023&n)<<10)+(1023&t)+65536):(i.push(n),o--):i.push(n);return i}function v(e){return A(e,(function(e){var n="";return e>65535&&(n+=m((e-=65536)>>>10&1023|55296),e=56320|1023&e),n+=m(e)})).join("")}function j(e){return e-48<10?e-22:e-65<26?e-65:e-97<26?e-97:36}function y(e,n){return e+22+75*(e<26)-((0!=n)<<5)}function x(e,n,t){var i=0;for(e=t?l(e/700):e>>1,e+=l(e/n);e>455;i+=36)e=l(e/35);return l(i+36*e/(e+38))}function w(e){var n,t,i,o,d,u,r,c,s,f,p=[],m=e.length,A=0,g=128,b=72;for((t=e.lastIndexOf("-"))<0&&(t=0),i=0;i<t;++i)e.charCodeAt(i)>=128&&h("not-basic"),p.push(e.charCodeAt(i));for(o=t>0?t+1:0;o<m;){for(d=A,u=1,r=36;o>=m&&h("invalid-input"),((c=j(e.charCodeAt(o++)))>=36||c>l((a-A)/u))&&h("overflow"),A+=c*u,!(c<(s=r<=b?1:r>=b+26?26:r-b));r+=36)u>l(a/(f=36-s))&&h("overflow"),u*=f;b=x(A-d,n=p.length+1,0==d),l(A/n)>a-g&&h("overflow"),g+=l(A/n),A%=n,p.splice(A++,0,g)}return v(p)}function k(e){var n,t,i,o,d,u,r,c,s,f,p,A,g,v,j,w=[];for(A=(e=b(e)).length,n=128,t=0,d=72,u=0;u<A;++u)(p=e[u])<128&&w.push(m(p));for(i=o=w.length,o&&w.push("-");i<A;){for(r=a,u=0;u<A;++u)(p=e[u])>=n&&p<r&&(r=p);for(r-n>l((a-t)/(g=i+1))&&h("overflow"),t+=(r-n)*g,n=r,u=0;u<A;++u)if((p=e[u])<n&&++t>a&&h("overflow"),p==n){for(c=t,s=36;!(c<(f=s<=d?1:s>=d+26?26:s-d));s+=36)j=c-f,v=36-f,w.push(m(y(f+j%v,0))),c=l(j/v);w.push(m(y(c,0))),d=x(t,g,i==o),t=0,++i}++t,++n}return w.join("")}if(u={version:"1.4.1",ucs2:{decode:b,encode:v},decode:w,encode:k,toASCII:function(e){return g(e,(function(e){return s.test(e)?"xn--"+k(e):e}))},toUnicode:function(e){return g(e,(function(e){return c.test(e)?w(e.slice(4).toLowerCase()):e}))}},i&&o)if(e.exports==i)o.exports=u;else for(r in u)u.hasOwnProperty(r)&&(i[r]=u[r]);else t.punycode=u}(_e)})),Ti=Qt(/(?:(?:[\-a-z0-9#{latinAccentChars}]+)\.)+(?:#{validGTLD}|#{validCCTLD}|#{validPunycode})/gi,{latinAccentChars:hi,validGTLD:ci,validCCTLD:ti,validPunycode:si}),Ii=function(e){if("xn--"!==e.substring(0,4)||e.match(Ti)){for(var n=e.split("."),t=0;t<n.length;t++){var i=n[t],o=Pi.toASCII(i);if(o.length<1||o.length>63)return}return n.join(".")}},Di=Qt(/^https?:\/\/t\.co\/([a-z0-9]+)(?:\?#{validUrlQueryChars}*#{validUrlQueryEndingChars})?/,{validUrlQueryChars:yi,validUrlQueryEndingChars:xi},"i"),Ui={extractUrlsWithoutProtocol:!0},Bi=function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Ui;if(!e||(n.extractUrlsWithoutProtocol?!e.match(/\./):!e.match(/:/)))return[];for(var t=[],i=function(){var e=RegExp.$2,i=RegExp.$3,o=RegExp.$4,d=RegExp.$5,u=RegExp.$7,r=wi.lastIndex,a=r-i.length;if(!Li(i,o||"https://",d))return"continue";if(o){if(i.match(Di)){var c=RegExp.$1;if(c&&c.length>40)return"continue";i=RegExp.lastMatch,r=a+i.length}t.push({url:i,indices:[a,r]})}else{if(!n.extractUrlsWithoutProtocol||e.match(ki))return"continue";var s=null,f=0;if(d.replace(Ti,(function(e){var n=d.indexOf(e,f);f=n+e.length,s={url:e,indices:[a+n,a+f]},t.push(s)})),null==s)return"continue";u&&(s.url=i.replace(d,s.url),s.indices[1]=r)}};wi.exec(e);)i();return t},Li=function(e,n,t){var i=e.length,o=Ii(t);return!(!o||!o.length)&&(i=i+o.length-t.length,n.length+i<=4096)},Fi=[].sort,Mi=[1,2,3];it(it.P+it.F*(Rn((function(){Mi.sort(void 0)}))||!Rn((function(){Mi.sort(null)}))||!bt(Fi)),"Array",{sort:function(e){return void 0===e?Fi.call(cn(this)):Fi.call(cn(this),et(e))}});var _i=/\ud800[\udc00-\udc0b\udc0d-\udc26\udc28-\udc3a\udc3c\udc3d\udc3f-\udc4d\udc50-\udc5d\udc80-\udcfa\uddfd\ude80-\ude9c\udea0-\uded0\udee0\udf00-\udf1f\udf30-\udf40\udf42-\udf49\udf50-\udf7a\udf80-\udf9d\udfa0-\udfc3\udfc8-\udfcf]|\ud801[\udc00-\udc9d\udd00-\udd27\udd30-\udd63\ude00-\udf36\udf40-\udf55\udf60-\udf67]|\ud802[\udc00-\udc05\udc08\udc0a-\udc35\udc37\udc38\udc3c\udc3f-\udc55\udc60-\udc76\udc80-\udc9e\udd00-\udd15\udd20-\udd39\udd80-\uddb7\uddbe\uddbf\ude00-\ude03\ude05\ude06\ude0c-\ude13\ude15-\ude17\ude19-\ude33\ude38-\ude3a\ude3f\ude60-\ude7c\ude80-\ude9c\udec0-\udec7\udec9-\udee6\udf00-\udf35\udf40-\udf55\udf60-\udf72\udf80-\udf91]|\ud803[\udc00-\udc48]|\ud804[\udc00-\udc46\udc7f-\udcba\udcd0-\udce8\udd00-\udd34\udd50-\udd73\udd76\udd80-\uddc4\uddda\ude00-\ude11\ude13-\ude37\udeb0-\udeea\udf01-\udf03\udf05-\udf0c\udf0f\udf10\udf13-\udf28\udf2a-\udf30\udf32\udf33\udf35-\udf39\udf3c-\udf44\udf47\udf48\udf4b-\udf4d\udf57\udf5d-\udf63\udf66-\udf6c\udf70-\udf74]|\ud805[\udc80-\udcc5\udcc7\udd80-\uddb5\uddb8-\uddc0\ude00-\ude40\ude44\ude80-\udeb7]|\ud806[\udca0-\udcdf\udcff\udec0-\udef8]|\ud808[\udc00-\udf98]|\ud80c[\udc00-\udfff]|\ud80d[\udc00-\udc2e]|\ud81a[\udc00-\ude38\ude40-\ude5e\uded0-\udeed\udef0-\udef4\udf00-\udf36\udf40-\udf43\udf63-\udf77\udf7d-\udf8f]|\ud81b[\udf00-\udf44\udf50-\udf7e\udf8f-\udf9f]|\ud82c[\udc00\udc01]|\ud82f[\udc00-\udc6a\udc70-\udc7c\udc80-\udc88\udc90-\udc99\udc9d\udc9e]|\ud834[\udd65-\udd69\udd6d-\udd72\udd7b-\udd82\udd85-\udd8b\uddaa-\uddad\ude42-\ude44]|\ud835[\udc00-\udc54\udc56-\udc9c\udc9e\udc9f\udca2\udca5\udca6\udca9-\udcac\udcae-\udcb9\udcbb\udcbd-\udcc3\udcc5-\udd05\udd07-\udd0a\udd0d-\udd14\udd16-\udd1c\udd1e-\udd39\udd3b-\udd3e\udd40-\udd44\udd46\udd4a-\udd50\udd52-\udea5\udea8-\udec0\udec2-\udeda\udedc-\udefa\udefc-\udf14\udf16-\udf34\udf36-\udf4e\udf50-\udf6e\udf70-\udf88\udf8a-\udfa8\udfaa-\udfc2\udfc4-\udfcb]|\ud83a[\udc00-\udcc4\udcd0-\udcd6]|\ud83b[\ude00-\ude03\ude05-\ude1f\ude21\ude22\ude24\ude27\ude29-\ude32\ude34-\ude37\ude39\ude3b\ude42\ude47\ude49\ude4b\ude4d-\ude4f\ude51\ude52\ude54\ude57\ude59\ude5b\ude5d\ude5f\ude61\ude62\ude64\ude67-\ude6a\ude6c-\ude72\ude74-\ude77\ude79-\ude7c\ude7e\ude80-\ude89\ude8b-\ude9b\udea1-\udea3\udea5-\udea9\udeab-\udebb]|\ud840[\udc00-\udfff]|\ud841[\udc00-\udfff]|\ud842[\udc00-\udfff]|\ud843[\udc00-\udfff]|\ud844[\udc00-\udfff]|\ud845[\udc00-\udfff]|\ud846[\udc00-\udfff]|\ud847[\udc00-\udfff]|\ud848[\udc00-\udfff]|\ud849[\udc00-\udfff]|\ud84a[\udc00-\udfff]|\ud84b[\udc00-\udfff]|\ud84c[\udc00-\udfff]|\ud84d[\udc00-\udfff]|\ud84e[\udc00-\udfff]|\ud84f[\udc00-\udfff]|\ud850[\udc00-\udfff]|\ud851[\udc00-\udfff]|\ud852[\udc00-\udfff]|\ud853[\udc00-\udfff]|\ud854[\udc00-\udfff]|\ud855[\udc00-\udfff]|\ud856[\udc00-\udfff]|\ud857[\udc00-\udfff]|\ud858[\udc00-\udfff]|\ud859[\udc00-\udfff]|\ud85a[\udc00-\udfff]|\ud85b[\udc00-\udfff]|\ud85c[\udc00-\udfff]|\ud85d[\udc00-\udfff]|\ud85e[\udc00-\udfff]|\ud85f[\udc00-\udfff]|\ud860[\udc00-\udfff]|\ud861[\udc00-\udfff]|\ud862[\udc00-\udfff]|\ud863[\udc00-\udfff]|\ud864[\udc00-\udfff]|\ud865[\udc00-\udfff]|\ud866[\udc00-\udfff]|\ud867[\udc00-\udfff]|\ud868[\udc00-\udfff]|\ud869[\udc00-\uded6\udf00-\udfff]|\ud86a[\udc00-\udfff]|\ud86b[\udc00-\udfff]|\ud86c[\udc00-\udfff]|\ud86d[\udc00-\udf34\udf40-\udfff]|\ud86e[\udc00-\udc1d]|\ud87e[\udc00-\ude1d]|\udb40[\udd00-\uddef]/,Ri=/A-Za-z\xaa\xb5\xba\xc0-\xd6\xd8-\xf6\xf8-\u02c1\u02c6-\u02d1\u02e0-\u02e4\u02ec\u02ee\u0300-\u0374\u0376\u0377\u037a-\u037d\u037f\u0386\u0388-\u038a\u038c\u038e-\u03a1\u03a3-\u03f5\u03f7-\u0481\u0483-\u052f\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u05d0-\u05ea\u05f0-\u05f2\u0610-\u061a\u0620-\u065f\u066e-\u06d3\u06d5-\u06dc\u06df-\u06e8\u06ea-\u06ef\u06fa-\u06fc\u06ff\u0710-\u074a\u074d-\u07b1\u07ca-\u07f5\u07fa\u0800-\u082d\u0840-\u085b\u08a0-\u08b2\u08e4-\u0963\u0971-\u0983\u0985-\u098c\u098f\u0990\u0993-\u09a8\u09aa-\u09b0\u09b2\u09b6-\u09b9\u09bc-\u09c4\u09c7\u09c8\u09cb-\u09ce\u09d7\u09dc\u09dd\u09df-\u09e3\u09f0\u09f1\u0a01-\u0a03\u0a05-\u0a0a\u0a0f\u0a10\u0a13-\u0a28\u0a2a-\u0a30\u0a32\u0a33\u0a35\u0a36\u0a38\u0a39\u0a3c\u0a3e-\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a59-\u0a5c\u0a5e\u0a70-\u0a75\u0a81-\u0a83\u0a85-\u0a8d\u0a8f-\u0a91\u0a93-\u0aa8\u0aaa-\u0ab0\u0ab2\u0ab3\u0ab5-\u0ab9\u0abc-\u0ac5\u0ac7-\u0ac9\u0acb-\u0acd\u0ad0\u0ae0-\u0ae3\u0b01-\u0b03\u0b05-\u0b0c\u0b0f\u0b10\u0b13-\u0b28\u0b2a-\u0b30\u0b32\u0b33\u0b35-\u0b39\u0b3c-\u0b44\u0b47\u0b48\u0b4b-\u0b4d\u0b56\u0b57\u0b5c\u0b5d\u0b5f-\u0b63\u0b71\u0b82\u0b83\u0b85-\u0b8a\u0b8e-\u0b90\u0b92-\u0b95\u0b99\u0b9a\u0b9c\u0b9e\u0b9f\u0ba3\u0ba4\u0ba8-\u0baa\u0bae-\u0bb9\u0bbe-\u0bc2\u0bc6-\u0bc8\u0bca-\u0bcd\u0bd0\u0bd7\u0c00-\u0c03\u0c05-\u0c0c\u0c0e-\u0c10\u0c12-\u0c28\u0c2a-\u0c39\u0c3d-\u0c44\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c58\u0c59\u0c60-\u0c63\u0c81-\u0c83\u0c85-\u0c8c\u0c8e-\u0c90\u0c92-\u0ca8\u0caa-\u0cb3\u0cb5-\u0cb9\u0cbc-\u0cc4\u0cc6-\u0cc8\u0cca-\u0ccd\u0cd5\u0cd6\u0cde\u0ce0-\u0ce3\u0cf1\u0cf2\u0d01-\u0d03\u0d05-\u0d0c\u0d0e-\u0d10\u0d12-\u0d3a\u0d3d-\u0d44\u0d46-\u0d48\u0d4a-\u0d4e\u0d57\u0d60-\u0d63\u0d7a-\u0d7f\u0d82\u0d83\u0d85-\u0d96\u0d9a-\u0db1\u0db3-\u0dbb\u0dbd\u0dc0-\u0dc6\u0dca\u0dcf-\u0dd4\u0dd6\u0dd8-\u0ddf\u0df2\u0df3\u0e01-\u0e3a\u0e40-\u0e4e\u0e81\u0e82\u0e84\u0e87\u0e88\u0e8a\u0e8d\u0e94-\u0e97\u0e99-\u0e9f\u0ea1-\u0ea3\u0ea5\u0ea7\u0eaa\u0eab\u0ead-\u0eb9\u0ebb-\u0ebd\u0ec0-\u0ec4\u0ec6\u0ec8-\u0ecd\u0edc-\u0edf\u0f00\u0f18\u0f19\u0f35\u0f37\u0f39\u0f3e-\u0f47\u0f49-\u0f6c\u0f71-\u0f84\u0f86-\u0f97\u0f99-\u0fbc\u0fc6\u1000-\u103f\u1050-\u108f\u109a-\u109d\u10a0-\u10c5\u10c7\u10cd\u10d0-\u10fa\u10fc-\u1248\u124a-\u124d\u1250-\u1256\u1258\u125a-\u125d\u1260-\u1288\u128a-\u128d\u1290-\u12b0\u12b2-\u12b5\u12b8-\u12be\u12c0\u12c2-\u12c5\u12c8-\u12d6\u12d8-\u1310\u1312-\u1315\u1318-\u135a\u135d-\u135f\u1380-\u138f\u13a0-\u13f4\u1401-\u166c\u166f-\u167f\u1681-\u169a\u16a0-\u16ea\u16f1-\u16f8\u1700-\u170c\u170e-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176c\u176e-\u1770\u1772\u1773\u1780-\u17d3\u17d7\u17dc\u17dd\u180b-\u180d\u1820-\u1877\u1880-\u18aa\u18b0-\u18f5\u1900-\u191e\u1920-\u192b\u1930-\u193b\u1950-\u196d\u1970-\u1974\u1980-\u19ab\u19b0-\u19c9\u1a00-\u1a1b\u1a20-\u1a5e\u1a60-\u1a7c\u1a7f\u1aa7\u1ab0-\u1abe\u1b00-\u1b4b\u1b6b-\u1b73\u1b80-\u1baf\u1bba-\u1bf3\u1c00-\u1c37\u1c4d-\u1c4f\u1c5a-\u1c7d\u1cd0-\u1cd2\u1cd4-\u1cf6\u1cf8\u1cf9\u1d00-\u1df5\u1dfc-\u1f15\u1f18-\u1f1d\u1f20-\u1f45\u1f48-\u1f4d\u1f50-\u1f57\u1f59\u1f5b\u1f5d\u1f5f-\u1f7d\u1f80-\u1fb4\u1fb6-\u1fbc\u1fbe\u1fc2-\u1fc4\u1fc6-\u1fcc\u1fd0-\u1fd3\u1fd6-\u1fdb\u1fe0-\u1fec\u1ff2-\u1ff4\u1ff6-\u1ffc\u2071\u207f\u2090-\u209c\u20d0-\u20f0\u2102\u2107\u210a-\u2113\u2115\u2119-\u211d\u2124\u2126\u2128\u212a-\u212d\u212f-\u2139\u213c-\u213f\u2145-\u2149\u214e\u2183\u2184\u2c00-\u2c2e\u2c30-\u2c5e\u2c60-\u2ce4\u2ceb-\u2cf3\u2d00-\u2d25\u2d27\u2d2d\u2d30-\u2d67\u2d6f\u2d7f-\u2d96\u2da0-\u2da6\u2da8-\u2dae\u2db0-\u2db6\u2db8-\u2dbe\u2dc0-\u2dc6\u2dc8-\u2dce\u2dd0-\u2dd6\u2dd8-\u2dde\u2de0-\u2dff\u2e2f\u3005\u3006\u302a-\u302f\u3031-\u3035\u303b\u303c\u3041-\u3096\u3099\u309a\u309d-\u309f\u30a1-\u30fa\u30fc-\u30ff\u3105-\u312d\u3131-\u318e\u31a0-\u31ba\u31f0-\u31ff\u3400-\u4db5\u4e00-\u9fcc\ua000-\ua48c\ua4d0-\ua4fd\ua500-\ua60c\ua610-\ua61f\ua62a\ua62b\ua640-\ua672\ua674-\ua67d\ua67f-\ua69d\ua69f-\ua6e5\ua6f0\ua6f1\ua717-\ua71f\ua722-\ua788\ua78b-\ua78e\ua790-\ua7ad\ua7b0\ua7b1\ua7f7-\ua827\ua840-\ua873\ua880-\ua8c4\ua8e0-\ua8f7\ua8fb\ua90a-\ua92d\ua930-\ua953\ua960-\ua97c\ua980-\ua9c0\ua9cf\ua9e0-\ua9ef\ua9fa-\ua9fe\uaa00-\uaa36\uaa40-\uaa4d\uaa60-\uaa76\uaa7a-\uaac2\uaadb-\uaadd\uaae0-\uaaef\uaaf2-\uaaf6\uab01-\uab06\uab09-\uab0e\uab11-\uab16\uab20-\uab26\uab28-\uab2e\uab30-\uab5a\uab5c-\uab5f\uab64\uab65\uabc0-\uabea\uabec\uabed\uac00-\ud7a3\ud7b0-\ud7c6\ud7cb-\ud7fb\uf870-\uf87f\uf882\uf884-\uf89f\uf8b8\uf8c1-\uf8d6\uf900-\ufa6d\ufa70-\ufad9\ufb00-\ufb06\ufb13-\ufb17\ufb1d-\ufb28\ufb2a-\ufb36\ufb38-\ufb3c\ufb3e\ufb40\ufb41\ufb43\ufb44\ufb46-\ufbb1\ufbd3-\ufd3d\ufd50-\ufd8f\ufd92-\ufdc7\ufdf0-\ufdfb\ufe00-\ufe0f\ufe20-\ufe2d\ufe70-\ufe74\ufe76-\ufefc\uff21-\uff3a\uff41-\uff5a\uff66-\uffbe\uffc2-\uffc7\uffca-\uffcf\uffd2-\uffd7\uffda-\uffdc/,$i=/[\uD800-\uDBFF][\uDC00-\uDFFF]/gm,zi=Qt(/(?:[#{bmpLetterAndMarks}]|(?=#{nonBmpCodePairs})(?:#{astralLetterAndMarks}))/,{bmpLetterAndMarks:Ri,nonBmpCodePairs:$i,astralLetterAndMarks:_i}),Wi=/\ud801[\udca0-\udca9]|\ud804[\udc66-\udc6f\udcf0-\udcf9\udd36-\udd3f\uddd0-\uddd9\udef0-\udef9]|\ud805[\udcd0-\udcd9\ude50-\ude59\udec0-\udec9]|\ud806[\udce0-\udce9]|\ud81a[\ude60-\ude69\udf50-\udf59]|\ud835[\udfce-\udfff]/,Ni=/0-9\u0660-\u0669\u06f0-\u06f9\u07c0-\u07c9\u0966-\u096f\u09e6-\u09ef\u0a66-\u0a6f\u0ae6-\u0aef\u0b66-\u0b6f\u0be6-\u0bef\u0c66-\u0c6f\u0ce6-\u0cef\u0d66-\u0d6f\u0de6-\u0def\u0e50-\u0e59\u0ed0-\u0ed9\u0f20-\u0f29\u1040-\u1049\u1090-\u1099\u17e0-\u17e9\u1810-\u1819\u1946-\u194f\u19d0-\u19d9\u1a80-\u1a89\u1a90-\u1a99\u1b50-\u1b59\u1bb0-\u1bb9\u1c40-\u1c49\u1c50-\u1c59\ua620-\ua629\ua8d0-\ua8d9\ua900-\ua909\ua9d0-\ua9d9\ua9f0-\ua9f9\uaa50-\uaa59\uabf0-\uabf9\uff10-\uff19/,Gi=/_\u200c\u200d\ua67e\u05be\u05f3\u05f4\uff5e\u301c\u309b\u309c\u30a0\u30fb\u3003\u0f0b\u0f0c\xb7/,Hi=Qt(/(?:[#{bmpLetterAndMarks}#{bmpNumerals}#{hashtagSpecialChars}]|(?=#{nonBmpCodePairs})(?:#{astralLetterAndMarks}|#{astralNumerals}))/,{bmpLetterAndMarks:Ri,bmpNumerals:Ni,hashtagSpecialChars:Gi,nonBmpCodePairs:$i,astralLetterAndMarks:_i,astralNumerals:Wi}),Ki=/(?:[^\uD800-\uDFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF])/,Ji=Qt(/(?:^|\uFE0E|\uFE0F|$|(?!#{hashtagAlphaNumeric}|&)#{codePoint})/,{codePoint:Ki,hashtagAlphaNumeric:Hi}),qi=(Qt(/(#{hashtagBoundary})(#{hashSigns})(?!\uFE0F|\u20E3)(#{hashtagAlphaNumeric}*#{hashtagAlpha}#{hashtagAlphaNumeric}*)/gi,{hashtagBoundary:Ji,hashSigns:ni,hashtagAlphaNumeric:Hi,hashtagAlpha:zi}),/[@＠]/),Vi=(Qt(/^(?:#{atSigns}|[#{latinAccentChars}]|:\/\/)/,{atSigns:qi,latinAccentChars:hi}),/(?:^|[^a-zA-Z0-9_!#$%&*@＠]|(?:^|[^a-zA-Z0-9_+~.-])(?:rt|RT|rT|Rt):?)/),Yi=Qt("(#{validMentionPrecedingChars})(#{atSigns})([a-zA-Z0-9_]{1,20})(/[a-zA-Z][a-zA-Z0-9_-]{0,24})?",{validMentionPrecedingChars:Vi,atSigns:qi},"g");$n&&"g"!=/./g.flags&&Jn.f(RegExp.prototype,"flags",{configurable:!0,get:Dn});var Zi=/./.toString,Qi=function(e){Xn(RegExp.prototype,"toString",e,!0)};Rn((function(){return"/a/b"!=Zi.call({source:"a",flags:"b"})}))?Qi((function(){var e=rn(this);return"/".concat(e.source,"/","flags"in e?e.flags:!$n&&e instanceof RegExp?Dn.call(e):void 0)})):"toString"!=Zi.name&&Qi((function(){return Zi.call(this)}));var Xi=Date.prototype,eo=Xi.toString,no=Xi.getTime;new Date(NaN)+""!="Invalid Date"&&Xn(Xi,"toString",(function(){var e=no.call(this);return e==e?eo.call(this):"Invalid Date"}));var to={};to[Cn("toStringTag")]="z",to+""!="[object z]"&&Xn(Object.prototype,"toString",(function(){return"[object "+Pn(this)+"]"}),!0);var io={version1:{version:1,maxWeightedTweetLength:140,scale:1,defaultWeight:1,transformedURLLength:23,ranges:[]},version2:{version:2,maxWeightedTweetLength:280,scale:100,defaultWeight:200,transformedURLLength:23,ranges:[{start:0,end:4351,weight:100},{start:8192,end:8205,weight:100},{start:8208,end:8223,weight:100},{start:8242,end:8247,weight:100}]},version3:{version:3,maxWeightedTweetLength:280,scale:100,defaultWeight:200,emojiParsingEnabled:!0,transformedURLLength:23,ranges:[{start:0,end:4351,weight:100},{start:8192,end:8205,weight:100},{start:8208,end:8223,weight:100},{start:8242,end:8247,weight:100}]},defaults:{version:3,maxWeightedTweetLength:280,scale:100,defaultWeight:200,emojiParsingEnabled:!0,transformedURLLength:23,ranges:[{start:0,end:4351,weight:100},{start:8192,end:8205,weight:100},{start:8208,end:8223,weight:100},{start:8242,end:8247,weight:100}]}};Qt(/^(?:#{spaces})*#{atSigns}([a-zA-Z0-9_]{1,20})/,{atSigns:qi,spaces:ei});var oo=Array.isArray||function(e){return"Array"==vn(e)};it(it.S,"Array",{isArray:oo});var uo=function(e,n){var t=n.defaultWeight,i=n.ranges,o=t,d=e.charCodeAt(0);if(Array.isArray(i))for(var u=0,r=i.length;u<r;u++){var a=i[u];if(d>=a.start&&d<=a.end){o=a.weight;break}}return o};var ro=function(e,n,t,i,o){et(n);var d=cn(e),u=lt(d),r=mn(d.length),a=o?r-1:0,c=o?-1:1;if(t<2)for(;;){if(a in u){i=u[a],a+=c;break}if(a+=c,o?a<0:r<=a)throw TypeError("Reduce of empty array with no initial value")}for(;o?a>=0:r>a;a+=c)a in u&&(i=n(i,u[a],a,d));return i};it(it.P+it.F*!bt([].reduce,!0),"Array",{reduce:function(e){return ro(this,e,arguments.length,arguments[1],!1)}});var ao=Cn("unscopables"),co=Array.prototype;null==co[ao]&&Vn(co,ao,{});var so=function(e){co[ao][e]=!0},fo=function(e,n){return{value:n,done:!!e}},po={},lo=Object.keys||function(e){return Bt(e,Lt)},mo=$n?Object.defineProperties:function(e,n){rn(e);for(var t,i=lo(n),o=i.length,d=0;o>d;)Jn.f(e,t=i[d++],n[t]);return e},ho=yn.document,Ao=ho&&ho.documentElement,go=It("IE_PROTO"),bo=function(){},vo=function(){var e,n=Nn("iframe"),t=Lt.length;for(n.style.display="none",Ao.appendChild(n),n.src="javascript:",(e=n.contentWindow.document).open(),e.write("<script>document.F=Object<\/script>"),e.close(),vo=e.F;t--;)delete vo.prototype[Lt[t]];return vo()},jo=Object.create||function(e,n){var t;return null!==e?(bo.prototype=rn(e),t=new bo,bo.prototype=null,t[go]=e):t=vo(),void 0===n?t:mo(t,n)},yo=Jn.f,xo=Cn("toStringTag"),wo=function(e,n,t){e&&!Zn(e=t?e:e.prototype,xo)&&yo(e,xo,{configurable:!0,value:n})},ko={};Vn(ko,Cn("iterator"),(function(){return this}));var Eo=function(e,n,t){e.prototype=jo(ko,{next:qn(1,t)}),wo(e,n+" Iterator")},Co=It("IE_PROTO"),Oo=Object.prototype,So=Object.getPrototypeOf||function(e){return e=cn(e),Zn(e,Co)?e[Co]:"function"==typeof e.constructor&&e instanceof e.constructor?e.constructor.prototype:e instanceof Object?Oo:null},Po=Cn("iterator"),To=!([].keys&&"next"in[].keys()),Io=function(){return this},Do=function(e,n,t,i,o,d,u){Eo(t,n,i);var r,a,c,s=function(e){if(!To&&e in m)return m[e];switch(e){case"keys":case"values":return function(){return new t(this,e)}}return function(){return new t(this,e)}},f=n+" Iterator",p="values"==o,l=!1,m=e.prototype,h=m[Po]||m["@@iterator"]||o&&m[o],A=h||s(o),g=o?p?s("entries"):A:void 0,b="Array"==n&&m.entries||h;if(b&&(c=So(b.call(new e)))!==Object.prototype&&c.next&&(wo(c,f,!0),"function"!=typeof c[Po]&&Vn(c,Po,Io)),p&&h&&"values"!==h.name&&(l=!0,A=function(){return h.call(this)}),(To||l||!m[Po])&&Vn(m,Po,A),po[n]=A,po[f]=Io,o)if(r={values:p?A:s("values"),keys:d?A:s("keys"),entries:g},u)for(a in r)a in m||Xn(m,a,r[a]);else it(it.P+it.F*(To||l),n,r);return r},Uo=Do(Array,"Array",(function(e,n){this._t=mt(e),this._i=0,this._k=n}),(function(){var e=this._t,n=this._k,t=this._i++;return!e||t>=e.length?(this._t=void 0,fo(1)):fo(0,"keys"==n?t:"values"==n?e[t]:[t,e[t]])}),"values");po.Arguments=po.Array,so("keys"),so("values"),so("entries");for(var Bo=Cn("iterator"),Lo=Cn("toStringTag"),Fo=po.Array,Mo={CSSRuleList:!0,CSSStyleDeclaration:!1,CSSValueList:!1,ClientRectList:!1,DOMRectList:!1,DOMStringList:!1,DOMTokenList:!0,DataTransferItemList:!1,FileList:!1,HTMLAllCollection:!1,HTMLCollection:!1,HTMLFormElement:!1,HTMLSelectElement:!1,MediaList:!0,MimeTypeArray:!1,NamedNodeMap:!1,NodeList:!0,PaintRequestList:!1,Plugin:!1,PluginArray:!1,SVGLengthList:!1,SVGNumberList:!1,SVGPathSegList:!1,SVGPointList:!1,SVGStringList:!1,SVGTransformList:!1,SourceBufferList:!1,StyleSheetList:!0,TextTrackCueList:!1,TextTrackList:!1,TouchList:!1},_o=lo(Mo),Ro=0;Ro<_o.length;Ro++){var $o,zo=_o[Ro],Wo=Mo[zo],No=yn[zo],Go=No&&No.prototype;if(Go&&(Go[Bo]||Vn(Go,Bo,Fo),Go[Lo]||Vn(Go,Lo,zo),po[zo]=Fo,Wo))for($o in Uo)Go[$o]||Xn(Go,$o,Uo[$o],!0)}!function(e,n){var t=(jn.Object||{})[e]||Object[e],i={};i[e]=n(t),it(it.S+it.F*Rn((function(){t(1)})),"Object",i)}("keys",(function(){return function(e){return lo(cn(e))}}));var Ho=Qt(/[#{invalidCharsGroup}]/,{invalidCharsGroup:oi});function Ko(e){return Ho.test(e)}var Jo=$e((function(e,n){Object.defineProperty(n,"__esModule",{value:!0}),n.default=/(?:\ud83d[\udc68\udc69])(?:\ud83c[\udffb-\udfff])?\u200d(?:\u2695\ufe0f|\u2696\ufe0f|\u2708\ufe0f|\ud83c[\udf3e\udf73\udf93\udfa4\udfa8\udfeb\udfed]|\ud83d[\udcbb\udcbc\udd27\udd2c\ude80\ude92]|\ud83e[\uddb0-\uddb3])|(?:\ud83c[\udfcb\udfcc]|\ud83d[\udd74\udd75]|\u26f9)((?:\ud83c[\udffb-\udfff]|\ufe0f)\u200d[\u2640\u2642]\ufe0f)|(?:\ud83c[\udfc3\udfc4\udfca]|\ud83d[\udc6e\udc71\udc73\udc77\udc81\udc82\udc86\udc87\ude45-\ude47\ude4b\ude4d\ude4e\udea3\udeb4-\udeb6]|\ud83e[\udd26\udd35\udd37-\udd39\udd3d\udd3e\uddb8\uddb9\uddd6-\udddd])(?:\ud83c[\udffb-\udfff])?\u200d[\u2640\u2642]\ufe0f|(?:\ud83d\udc68\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68|\ud83d\udc68\u200d\ud83d\udc68\u200d\ud83d\udc66\u200d\ud83d\udc66|\ud83d\udc68\u200d\ud83d\udc68\u200d\ud83d\udc67\u200d\ud83d[\udc66\udc67]|\ud83d\udc68\u200d\ud83d\udc69\u200d\ud83d\udc66\u200d\ud83d\udc66|\ud83d\udc68\u200d\ud83d\udc69\u200d\ud83d\udc67\u200d\ud83d[\udc66\udc67]|\ud83d\udc69\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d[\udc68\udc69]|\ud83d\udc69\u200d\ud83d\udc69\u200d\ud83d\udc66\u200d\ud83d\udc66|\ud83d\udc69\u200d\ud83d\udc69\u200d\ud83d\udc67\u200d\ud83d[\udc66\udc67]|\ud83d\udc68\u200d\u2764\ufe0f\u200d\ud83d\udc68|\ud83d\udc68\u200d\ud83d\udc66\u200d\ud83d\udc66|\ud83d\udc68\u200d\ud83d\udc67\u200d\ud83d[\udc66\udc67]|\ud83d\udc68\u200d\ud83d\udc68\u200d\ud83d[\udc66\udc67]|\ud83d\udc68\u200d\ud83d\udc69\u200d\ud83d[\udc66\udc67]|\ud83d\udc69\u200d\u2764\ufe0f\u200d\ud83d[\udc68\udc69]|\ud83d\udc69\u200d\ud83d\udc66\u200d\ud83d\udc66|\ud83d\udc69\u200d\ud83d\udc67\u200d\ud83d[\udc66\udc67]|\ud83d\udc69\u200d\ud83d\udc69\u200d\ud83d[\udc66\udc67]|\ud83c\udff3\ufe0f\u200d\ud83c\udf08|\ud83c\udff4\u200d\u2620\ufe0f|\ud83d\udc41\u200d\ud83d\udde8|\ud83d\udc68\u200d\ud83d[\udc66\udc67]|\ud83d\udc69\u200d\ud83d[\udc66\udc67]|\ud83d\udc6f\u200d\u2640\ufe0f|\ud83d\udc6f\u200d\u2642\ufe0f|\ud83e\udd3c\u200d\u2640\ufe0f|\ud83e\udd3c\u200d\u2642\ufe0f|\ud83e\uddde\u200d\u2640\ufe0f|\ud83e\uddde\u200d\u2642\ufe0f|\ud83e\udddf\u200d\u2640\ufe0f|\ud83e\udddf\u200d\u2642\ufe0f)|[#*0-9]\ufe0f?\u20e3|(?:[©®\u2122\u265f]\ufe0f)|(?:\ud83c[\udc04\udd70\udd71\udd7e\udd7f\ude02\ude1a\ude2f\ude37\udf21\udf24-\udf2c\udf36\udf7d\udf96\udf97\udf99-\udf9b\udf9e\udf9f\udfcd\udfce\udfd4-\udfdf\udff3\udff5\udff7]|\ud83d[\udc3f\udc41\udcfd\udd49\udd4a\udd6f\udd70\udd73\udd76-\udd79\udd87\udd8a-\udd8d\udda5\udda8\uddb1\uddb2\uddbc\uddc2-\uddc4\uddd1-\uddd3\udddc-\uddde\udde1\udde3\udde8\uddef\uddf3\uddfa\udecb\udecd-\udecf\udee0-\udee5\udee9\udef0\udef3]|[\u203c\u2049\u2139\u2194-\u2199\u21a9\u21aa\u231a\u231b\u2328\u23cf\u23ed-\u23ef\u23f1\u23f2\u23f8-\u23fa\u24c2\u25aa\u25ab\u25b6\u25c0\u25fb-\u25fe\u2600-\u2604\u260e\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262a\u262e\u262f\u2638-\u263a\u2640\u2642\u2648-\u2653\u2660\u2663\u2665\u2666\u2668\u267b\u267f\u2692-\u2697\u2699\u269b\u269c\u26a0\u26a1\u26aa\u26ab\u26b0\u26b1\u26bd\u26be\u26c4\u26c5\u26c8\u26cf\u26d1\u26d3\u26d4\u26e9\u26ea\u26f0-\u26f5\u26f8\u26fa\u26fd\u2702\u2708\u2709\u270f\u2712\u2714\u2716\u271d\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u2764\u27a1\u2934\u2935\u2b05-\u2b07\u2b1b\u2b1c\u2b50\u2b55\u3030\u303d\u3297\u3299])(?:\ufe0f|(?!\ufe0e))|(?:(?:\ud83c[\udfcb\udfcc]|\ud83d[\udd74\udd75\udd90]|[\u261d\u26f7\u26f9\u270c\u270d])(?:\ufe0f|(?!\ufe0e))|(?:\ud83c[\udf85\udfc2-\udfc4\udfc7\udfca]|\ud83d[\udc42\udc43\udc46-\udc50\udc66-\udc69\udc6e\udc70-\udc78\udc7c\udc81-\udc83\udc85-\udc87\udcaa\udd7a\udd95\udd96\ude45-\ude47\ude4b-\ude4f\udea3\udeb4-\udeb6\udec0\udecc]|\ud83e[\udd18-\udd1c\udd1e\udd1f\udd26\udd30-\udd39\udd3d\udd3e\uddb5\uddb6\uddb8\uddb9\uddd1-\udddd]|[\u270a\u270b]))(?:\ud83c[\udffb-\udfff])?|(?:\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f|\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc73\udb40\udc63\udb40\udc74\udb40\udc7f|\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc77\udb40\udc6c\udb40\udc73\udb40\udc7f|\ud83c\udde6\ud83c[\udde8-\uddec\uddee\uddf1\uddf2\uddf4\uddf6-\uddfa\uddfc\uddfd\uddff]|\ud83c\udde7\ud83c[\udde6\udde7\udde9-\uddef\uddf1-\uddf4\uddf6-\uddf9\uddfb\uddfc\uddfe\uddff]|\ud83c\udde8\ud83c[\udde6\udde8\udde9\uddeb-\uddee\uddf0-\uddf5\uddf7\uddfa-\uddff]|\ud83c\udde9\ud83c[\uddea\uddec\uddef\uddf0\uddf2\uddf4\uddff]|\ud83c\uddea\ud83c[\udde6\udde8\uddea\uddec\udded\uddf7-\uddfa]|\ud83c\uddeb\ud83c[\uddee-\uddf0\uddf2\uddf4\uddf7]|\ud83c\uddec\ud83c[\udde6\udde7\udde9-\uddee\uddf1-\uddf3\uddf5-\uddfa\uddfc\uddfe]|\ud83c\udded\ud83c[\uddf0\uddf2\uddf3\uddf7\uddf9\uddfa]|\ud83c\uddee\ud83c[\udde8-\uddea\uddf1-\uddf4\uddf6-\uddf9]|\ud83c\uddef\ud83c[\uddea\uddf2\uddf4\uddf5]|\ud83c\uddf0\ud83c[\uddea\uddec-\uddee\uddf2\uddf3\uddf5\uddf7\uddfc\uddfe\uddff]|\ud83c\uddf1\ud83c[\udde6-\udde8\uddee\uddf0\uddf7-\uddfb\uddfe]|\ud83c\uddf2\ud83c[\udde6\udde8-\udded\uddf0-\uddff]|\ud83c\uddf3\ud83c[\udde6\udde8\uddea-\uddec\uddee\uddf1\uddf4\uddf5\uddf7\uddfa\uddff]|\ud83c\uddf4\ud83c\uddf2|\ud83c\uddf5\ud83c[\udde6\uddea-\udded\uddf0-\uddf3\uddf7-\uddf9\uddfc\uddfe]|\ud83c\uddf6\ud83c\udde6|\ud83c\uddf7\ud83c[\uddea\uddf4\uddf8\uddfa\uddfc]|\ud83c\uddf8\ud83c[\udde6-\uddea\uddec-\uddf4\uddf7-\uddf9\uddfb\uddfd-\uddff]|\ud83c\uddf9\ud83c[\udde6\udde8\udde9\uddeb-\udded\uddef-\uddf4\uddf7\uddf9\uddfb\uddfc\uddff]|\ud83c\uddfa\ud83c[\udde6\uddec\uddf2\uddf3\uddf8\uddfe\uddff]|\ud83c\uddfb\ud83c[\udde6\udde8\uddea\uddec\uddee\uddf3\uddfa]|\ud83c\uddfc\ud83c[\uddeb\uddf8]|\ud83c\uddfd\ud83c\uddf0|\ud83c\uddfe\ud83c[\uddea\uddf9]|\ud83c\uddff\ud83c[\udde6\uddf2\uddfc]|\ud83c[\udccf\udd8e\udd91-\udd9a\udde6-\uddff\ude01\ude32-\ude36\ude38-\ude3a\ude50\ude51\udf00-\udf20\udf2d-\udf35\udf37-\udf7c\udf7e-\udf84\udf86-\udf93\udfa0-\udfc1\udfc5\udfc6\udfc8\udfc9\udfcf-\udfd3\udfe0-\udff0\udff4\udff8-\udfff]|\ud83d[\udc00-\udc3e\udc40\udc44\udc45\udc51-\udc65\udc6a-\udc6d\udc6f\udc79-\udc7b\udc7d-\udc80\udc84\udc88-\udca9\udcab-\udcfc\udcff-\udd3d\udd4b-\udd4e\udd50-\udd67\udda4\uddfb-\ude44\ude48-\ude4a\ude80-\udea2\udea4-\udeb3\udeb7-\udebf\udec1-\udec5\uded0-\uded2\udeeb\udeec\udef4-\udef9]|\ud83e[\udd10-\udd17\udd1d\udd20-\udd25\udd27-\udd2f\udd3a\udd3c\udd40-\udd45\udd47-\udd70\udd73-\udd76\udd7a\udd7c-\udda2\uddb4\uddb7\uddc0-\uddc2\uddd0\uddde-\uddff]|[\u23e9-\u23ec\u23f0\u23f3\u267e\u26ce\u2705\u2728\u274c\u274e\u2753-\u2755\u2795-\u2797\u27b0\u27bf\ue50a])|\ufe0f/g}));Re(Jo);var qo=$e((function(e,n){Object.defineProperty(n,"__esModule",{value:!0}),n.TypeName=void 0,n.parse=function(e,n){var t=n&&n.assetType?n.assetType:"svg",d=n&&n.buildUrl?n.buildUrl:function(e,n){return"png"===n?"https://twemoji.maxcdn.com/2/72x72/"+e+".png":"https://twemoji.maxcdn.com/2/svg/"+e+".svg"},u=[];i.default.lastIndex=0;for(;;){var c=i.default.exec(e);if(!c)break;var s=c[0],f=a(r(s)).join("-");u.push({url:f?d(f,t):"",indices:[c.index,i.default.lastIndex],text:s,type:o})}return u},n.toCodePoints=a;var t,i=(t=Jo)&&t.__esModule?t:{default:t};var o=n.TypeName="emoji";var d=/\uFE0F/g,u=String.fromCharCode(8205),r=function(e){return e.indexOf(u)<0?e.replace(d,""):e};function a(e){for(var n=[],t=0,i=0,o=0;o<e.length;)t=e.charCodeAt(o++),i?(n.push((65536+(i-55296<<10)+(t-56320)).toString(16)),i=0):t>55296&&t<=56319?i=t:n.push(t.toString(16));return n}}));Re(qo);qo.TypeName;var Vo=qo.parse,Yo=(qo.toCodePoints,function(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:io.defaults,t=Object.keys(n).length?n:io.defaults,i=t.defaultWeight,o=t.emojiParsingEnabled,d=t.scale,u=t.maxWeightedTweetLength,r=t.transformedURLLength,a="function"==typeof String.prototype.normalize?e.normalize():e,c=Zo(Bi(a)),s=o?Zo(Vo(a)):[],f=a.length,p=0,l=0,m=!0,h=0;h<f;h++){if(c[h]){var A=c[h],g=A.url;A.indices;p+=r*d,h+=g.length-1}else if(o&&s[h]){var b=s[h],v=b.text;b.indices;p+=i,h+=v.length-1}else h+=Qo(a,h)?1:0,p+=uo(a.charAt(h),t);m&&(m=!Ko(a.substring(h,h+1))),m&&p<=u*d&&(l=h)}p/=d,m=m&&p>0&&p<=u;var j=Math.floor(p/u*1e3),y=e.length-a.length;return{weightedLength:p,valid:m,permillage:j,validRangeStart:0,validRangeEnd:l+=y,displayRangeStart:0,displayRangeEnd:e.length>0?e.length-1:0}}),Zo=function(e){return e.reduce((function(e,n){return e[n.indices[0]]=n,e}),{})},Qo=function(e,n){if(n<e.length-1){var t=e.charCodeAt(n),i=e.charCodeAt(n+1);return 55296<=t&&t<=56319&&56320<=i&&i<=57343}return!1};it(it.S+it.F*!$n,"Object",{defineProperty:Jn.f}),it(it.S+it.F*!$n,"Object",{defineProperties:mo});var Xo={f:Object.getOwnPropertySymbols},ed=yn.Reflect,nd=ed&&ed.ownKeys||function(e){var n=Mt.f(rn(e)),t=Xo.f;return t?n.concat(t(e)):n},td=function(e,n,t){n in e?Jn.f(e,n,qn(0,t)):e[n]=t};it(it.S,"Object",{getOwnPropertyDescriptors:function(e){for(var n,t,i=mt(e),o=Ot.f,d=nd(i),u={},r=0;d.length>r;)void 0!==(t=o(i,n=d[r++]))&&td(u,n,t);return u}});var id=Cn("species"),od=function(e,n){return new(function(e){var n;return oo(e)&&("function"!=typeof(n=e.constructor)||n!==Array&&!oo(n.prototype)||(n=void 0),un(n)&&null===(n=n[id])&&(n=void 0)),void 0===n?Array:n}(e))(n)},dd=function(e,n){var t=1==e,i=2==e,o=3==e,d=4==e,u=6==e,r=5==e||u,a=n||od;return function(n,c,s){for(var f,p,l=cn(n),m=lt(l),h=nt(c,s,3),A=mn(m.length),g=0,b=t?a(n,A):i?a(n,0):void 0;A>g;g++)if((r||g in m)&&(p=h(f=m[g],g,l),e))if(t)b[g]=p;else if(p)switch(e){case 3:return!0;case 5:return f;case 6:return g;case 2:b.push(f)}else if(d)return!1;return u?-1:o||d?d:b}},ud=dd(0),rd=bt([].forEach,!0);it(it.P+it.F*!rd,"Array",{forEach:function(e){return ud(this,e,arguments[1])}});var ad=dd(2);it(it.P+it.F*!bt([].filter,!0),"Array",{filter:function(e){return ad(this,e,arguments[1])}});var cd=$e((function(e){var n=En("meta"),t=Jn.f,i=0,o=Object.isExtensible||function(){return!0},d=!Rn((function(){return o(Object.preventExtensions({}))})),u=function(e){t(e,n,{value:{i:"O"+ ++i,w:{}}})},r=e.exports={KEY:n,NEED:!1,fastKey:function(e,t){if(!un(e))return"symbol"==typeof e?e:("string"==typeof e?"S":"P")+e;if(!Zn(e,n)){if(!o(e))return"F";if(!t)return"E";u(e)}return e[n].i},getWeak:function(e,t){if(!Zn(e,n)){if(!o(e))return!0;if(!t)return!1;u(e)}return e[n].w},onFreeze:function(e){return d&&r.NEED&&o(e)&&!Zn(e,n)&&u(e),e}}})),sd=(cd.KEY,cd.NEED,cd.fastKey,cd.getWeak,cd.onFreeze,{f:Cn}),fd=Jn.f,pd=function(e){var n=jn.Symbol||(jn.Symbol=yn.Symbol||{});"_"==e.charAt(0)||e in n||fd(n,e,{value:sd.f(e)})},ld=Mt.f,md={}.toString,hd="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],Ad={f:function(e){return hd&&"[object Window]"==md.call(e)?function(e){try{return ld(e)}catch(e){return hd.slice()}}(e):ld(mt(e))}},gd=cd.KEY,bd=Ot.f,vd=Jn.f,jd=Ad.f,yd=yn.Symbol,xd=yn.JSON,wd=xd&&xd.stringify,kd=Cn("_hidden"),Ed=Cn("toPrimitive"),Cd={}.propertyIsEnumerable,Od=xn("symbol-registry"),Sd=xn("symbols"),Pd=xn("op-symbols"),Td=Object.prototype,Id="function"==typeof yd&&!!Xo.f,Dd=yn.QObject,Ud=!Dd||!Dd.prototype||!Dd.prototype.findChild,Bd=$n&&Rn((function(){return 7!=jo(vd({},"a",{get:function(){return vd(this,"a",{value:7}).a}})).a}))?function(e,n,t){var i=bd(Td,n);i&&delete Td[n],vd(e,n,t),i&&e!==Td&&vd(Td,n,i)}:vd,Ld=function(e){var n=Sd[e]=jo(yd.prototype);return n._k=e,n},Fd=Id&&"symbol"==typeof yd.iterator?function(e){return"symbol"==typeof e}:function(e){return e instanceof yd},Md=function(e,n,t){return e===Td&&Md(Pd,n,t),rn(e),n=Hn(n,!0),rn(t),Zn(Sd,n)?(t.enumerable?(Zn(e,kd)&&e[kd][n]&&(e[kd][n]=!1),t=jo(t,{enumerable:qn(0,!1)})):(Zn(e,kd)||vd(e,kd,qn(1,{})),e[kd][n]=!0),Bd(e,n,t)):vd(e,n,t)},_d=function(e,n){rn(e);for(var t,i=function(e){var n=lo(e),t=Xo.f;if(t)for(var i,o=t(e),d=Et.f,u=0;o.length>u;)d.call(e,i=o[u++])&&n.push(i);return n}(n=mt(n)),o=0,d=i.length;d>o;)Md(e,t=i[o++],n[t]);return e},Rd=function(e){var n=Cd.call(this,e=Hn(e,!0));return!(this===Td&&Zn(Sd,e)&&!Zn(Pd,e))&&(!(n||!Zn(this,e)||!Zn(Sd,e)||Zn(this,kd)&&this[kd][e])||n)},$d=function(e,n){if(e=mt(e),n=Hn(n,!0),e!==Td||!Zn(Sd,n)||Zn(Pd,n)){var t=bd(e,n);return!t||!Zn(Sd,n)||Zn(e,kd)&&e[kd][n]||(t.enumerable=!0),t}},zd=function(e){for(var n,t=jd(mt(e)),i=[],o=0;t.length>o;)Zn(Sd,n=t[o++])||n==kd||n==gd||i.push(n);return i},Wd=function(e){for(var n,t=e===Td,i=jd(t?Pd:mt(e)),o=[],d=0;i.length>d;)!Zn(Sd,n=i[d++])||t&&!Zn(Td,n)||o.push(Sd[n]);return o};Id||(Xn((yd=function(){if(this instanceof yd)throw TypeError("Symbol is not a constructor!");var e=En(arguments.length>0?arguments[0]:void 0),n=function(t){this===Td&&n.call(Pd,t),Zn(this,kd)&&Zn(this[kd],e)&&(this[kd][e]=!1),Bd(this,e,qn(1,t))};return $n&&Ud&&Bd(Td,e,{configurable:!0,set:n}),Ld(e)}).prototype,"toString",(function(){return this._k})),Ot.f=$d,Jn.f=Md,Mt.f=Ad.f=zd,Et.f=Rd,Xo.f=Wd,$n&&Xn(Td,"propertyIsEnumerable",Rd,!0),sd.f=function(e){return Ld(Cn(e))}),it(it.G+it.W+it.F*!Id,{Symbol:yd});for(var Nd="hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),Gd=0;Nd.length>Gd;)Cn(Nd[Gd++]);for(var Hd=lo(Cn.store),Kd=0;Hd.length>Kd;)pd(Hd[Kd++]);it(it.S+it.F*!Id,"Symbol",{for:function(e){return Zn(Od,e+="")?Od[e]:Od[e]=yd(e)},keyFor:function(e){if(!Fd(e))throw TypeError(e+" is not a symbol!");for(var n in Od)if(Od[n]===e)return n},useSetter:function(){Ud=!0},useSimple:function(){Ud=!1}}),it(it.S+it.F*!Id,"Object",{create:function(e,n){return void 0===n?jo(e):_d(jo(e),n)},defineProperty:Md,defineProperties:_d,getOwnPropertyDescriptor:$d,getOwnPropertyNames:zd,getOwnPropertySymbols:Wd});var Jd=Rn((function(){Xo.f(1)}));it(it.S+it.F*Jd,"Object",{getOwnPropertySymbols:function(e){return Xo.f(cn(e))}}),xd&&it(it.S+it.F*(!Id||Rn((function(){var e=yd();return"[null]"!=wd([e])||"{}"!=wd({a:e})||"{}"!=wd(Object(e))}))),"JSON",{stringify:function(e){for(var n,t,i=[e],o=1;arguments.length>o;)i.push(arguments[o++]);if(t=n=i[1],(un(n)||void 0!==e)&&!Fd(e))return oo(n)||(n=function(e,n){if("function"==typeof t&&(n=t.call(this,e,n)),!Fd(n))return n}),i[1]=n,wd.apply(xd,i)}}),yd.prototype[Ed]||Vn(yd.prototype,Ed,yd.prototype.valueOf),wo(yd,"Symbol"),wo(Math,"Math",!0),wo(yn.JSON,"JSON",!0);Qt(/^#{validMentionOrList}$/,{validMentionOrList:Yi});var qd=/[a-z\u0400-\u04FF0-9\-._~]/i,Vd=/(?:%[0-9a-f]{2})/i,Yd=/[!$&'()*+,;=]/i,Zd=Qt("(?:#{validateUrlUnreserved}|#{validateUrlPctEncoded}|#{validateUrlSubDelims}|:)*",{validateUrlUnreserved:qd,validateUrlPctEncoded:Vd,validateUrlSubDelims:Yd},"i"),Qd=/(?:[a-z0-9](?:[a-z0-9\-]*[a-z0-9])?)/i,Xd=/(?:[a-z](?:[a-z0-9\-]*[a-z0-9])?)/i,eu=/(?:[a-z0-9](?:[a-z0-9_\-]*[a-z0-9])?)/i,nu=Qt(/(?:(?:#{validateUrlSubDomainSegment}\.)*(?:#{validateUrlDomainSegment}\.)#{validateUrlDomainTld})/i,{validateUrlSubDomainSegment:eu,validateUrlDomainSegment:Qd,validateUrlDomainTld:Xd}),tu=/(?:[0-9]|(?:[1-9][0-9])|(?:1[0-9]{2})|(?:2[0-4][0-9])|(?:25[0-5]))/i,iu=Qt(/(?:#{validateUrlDecOctet}(?:\.#{validateUrlDecOctet}){3})/i,{validateUrlDecOctet:tu}),ou=/(?:\[[a-f0-9:\.]+\])/i,du=Qt("(?:#{validateUrlIpv4}|#{validateUrlIpv6})",{validateUrlIpv4:iu,validateUrlIpv6:ou},"i"),uu=Qt("(?:#{validateUrlIp}|#{validateUrlDomain})",{validateUrlIp:du,validateUrlDomain:nu},"i"),ru=/[0-9]{1,5}/,au=(Qt("(?:(#{validateUrlUserinfo})@)?(#{validateUrlHost})(?::(#{validateUrlPort}))?",{validateUrlUserinfo:Zd,validateUrlHost:uu,validateUrlPort:ru},"i"),Qt("(?:#{validateUrlUnreserved}|#{validateUrlPctEncoded}|#{validateUrlSubDelims}|[:|@])",{validateUrlUnreserved:qd,validateUrlPctEncoded:Vd,validateUrlSubDelims:Yd},"i")),cu=(Qt(/(#{validateUrlPchar}|\/|\?)*/i,{validateUrlPchar:au}),Qt(/(\/#{validateUrlPchar}*)*/i,{validateUrlPchar:au}),Qt(/(#{validateUrlPchar}|\/|\?)*/i,{validateUrlPchar:au}),Qt("^(?:([^:/?#]+):\\/\\/)?([^/?#]*)([^?#]*)(?:\\?([^#]*))?(?:#(.*))?$","i"),/(?:(?:[a-z0-9]|[^\u0000-\u007f])(?:(?:[a-z0-9_\-]|[^\u0000-\u007f])*(?:[a-z0-9]|[^\u0000-\u007f]))?)/i),su=/(?:(?:[a-z0-9]|[^\u0000-\u007f])(?:(?:[a-z0-9\-]|[^\u0000-\u007f])*(?:[a-z0-9]|[^\u0000-\u007f]))?)/i,fu=/(?:(?:[a-z]|[^\u0000-\u007f])(?:(?:[a-z0-9\-]|[^\u0000-\u007f])*(?:[a-z0-9]|[^\u0000-\u007f]))?)/i,pu=Qt(/(?:(?:#{validateUrlUnicodeSubDomainSegment}\.)*(?:#{validateUrlUnicodeDomainSegment}\.)#{validateUrlUnicodeDomainTld})/i,{validateUrlUnicodeSubDomainSegment:cu,validateUrlUnicodeDomainSegment:su,validateUrlUnicodeDomainTld:fu}),lu=Qt("(?:#{validateUrlIp}|#{validateUrlUnicodeDomain})",{validateUrlIp:du,validateUrlUnicodeDomain:pu},"i");Qt("(?:(#{validateUrlUserinfo})@)?(#{validateUrlUnicodeHost})(?::(#{validateUrlPort}))?",{validateUrlUserinfo:Zd,validateUrlUnicodeHost:lu,validateUrlPort:ru},"i");var mu=hn(!0);Do(String,"String",(function(e){this._t=String(e),this._i=0}),(function(){var e,n=this._t,t=this._i;return t>=n.length?{value:void 0,done:!0}:(e=mu(n,t),this._i+=e.length,{value:e,done:!1})}));var hu=function(e,n,t,i){try{return i?n(rn(t)[0],t[1]):n(t)}catch(n){var o=e.return;throw void 0!==o&&rn(o.call(e)),n}},Au=Cn("iterator"),gu=Array.prototype,bu=function(e){return void 0!==e&&(po.Array===e||gu[Au]===e)},vu=Cn("iterator"),ju=jn.getIteratorMethod=function(e){if(null!=e)return e[vu]||e["@@iterator"]||po[Pn(e)]},yu=Cn("iterator"),xu=!1;try{var wu=[7][yu]();wu.return=function(){xu=!0},Array.from(wu,(function(){throw 2}))}catch(e){}it(it.S+it.F*!function(e,n){if(!n&&!xu)return!1;var t=!1;try{var i=[7],o=i[yu]();o.next=function(){return{done:t=!0}},i[yu]=function(){return o},e(i)}catch(e){}return t}((function(e){Array.from(e)})),"Array",{from:function(e){var n,t,i,o,d=cn(e),u="function"==typeof this?this:Array,r=arguments.length,a=r>1?arguments[1]:void 0,c=void 0!==a,s=0,f=ju(d);if(c&&(a=nt(a,r>2?arguments[2]:void 0,2)),null==f||u==Array&&bu(f))for(t=new u(n=mn(d.length));n>s;s++)td(t,s,c?a(d[s],s):d[s]);else for(o=f.call(d),t=new u;!(i=o.next()).done;s++)td(t,s,c?hu(o,a,[i.value,s],!0):i.value);return t.length=s,t}});var ku=Yo,Eu=n.extend({name:"TwemojiTextarea",components:{"twemoji-picker":Ue,"send-icon-img":Me},mixins:[dn],props:o({},Pe,{idTextarea:{default:"twemoji-textarea-outer",type:String},initialContent:{default:"",type:String},enableSendBtn:{default:!1,type:Boolean},emojiPickerDisabled:{default:!1,type:Boolean},textareaDisabled:{default:!1,type:Boolean},componentColor:{type:String,default:"#F7F7F7",validator:function(e){var n=(new Option).style;return n.color=e,!1===(""!==n.color)&&console.error('The value entered for the prop "componentColor" is invalid. Please inform a valid CSS color.'),!0}},placeholder:{type:String,default:""},maxlength:{type:Number,default:null}}),data:function(){return{savedRange:null,twemojiOptions:{},actualContentLength:0}},computed:{twemojiTextarea:function(){return this.$refs.twemojiTextarea},twemojiPicker:function(){return this.$refs.twemojiPicker}},created:function(){this.twemojiOptions={base:this.twemojiPath,ext:this.twemojiExtension,size:this.twemojiFolder}},mounted:function(){Te(this,this.twemojiPicker),this.initialContent.length>0&&(this.twemojiTextarea.innerHTML=this.initialContent)},methods:{updateContent:function(e){var n=e.target.innerHTML;this.$emit("contentChangedHtml",n),n=Be.replaceEmojiWithAltAttribute(n),0!==(n=Be.unescapeHtml(n)).length&&"\n"===n[n.length-1]&&(n=n.slice(0,-1)),this.emojiTextWeightChanged?this.actualContentLength=ku(n||"",{version:3,maxWeightedTweetLength:280,scale:100,defaultWeight:100,transformedURLLength:23,ranges:[]}).weightedLength:this.actualContentLength=ku(n||"").weightedLength,this.twemojiPicker.$refs.popupEmoji&&this.twemojiPicker.$refs.popupEmoji.popperInstance.forceUpdate(),this.$emit("update:content",n),this.$emit("actualContentLengthChanged",this.actualContentLength),this.$emit("contentChanged",n),this.$emit("emojiTextChanged",{value:n,length:this.actualContentLength})},emitIsContentOverflowed:function(){this.actualContentLength>this.maxlength?this.$emit("isContentOverflowed",!0):this.$emit("isContentOverflowed",!1)},emitEnterKeyEvent:function(e){this.emitIsContentOverflowed(),this.$emit("enterKey",e)},enterKey:function(e){!1===e.shiftKey&&(e.preventDefault(),this.emitIsContentOverflowed(),this.emitEnterKeyEvent(e))},shiftEnterKey:function(e){e.stopPropagation(),e.preventDefault(),""===this.twemojiTextarea.innerHTML||"\n"!==this.twemojiTextarea.innerHTML[this.twemojiTextarea.innerHTML.length-1]?(this.addText("\n"),this.addText("\n")):this.addText("\n"),this.twemojiTextarea.scrollTop=this.twemojiTextarea.scrollHeight,this.twemojiPicker.$refs.popupEmoji&&this.twemojiPicker.$refs.popupEmoji.popperInstance.forceUpdate()},onPaste:function(e){var n;e.stopPropagation(),e.preventDefault();var t=e.clipboardData;n=(null==t?void 0:t.getData("Text"))||"",n=Be.escapeHTML(n),n=a.getEmojiImgFromUnicode(n,this.twemojiOptions),window.document.execCommand("insertHTML",!1,n),this.twemojiTextarea.scrollTop=this.twemojiTextarea.scrollHeight},focus:function(){var e=this.twemojiTextarea,n=e.childNodes[0];if(e.focus(),void 0===n){var t=document.createTextNode("");e.appendChild(t);var i=document.createRange(),o=window.getSelection();i.setStart(e.childNodes[0],0),i.collapse(!0),null==o||o.removeAllRanges(),null==o||o.addRange(i),this.saveSelection()}},blur:function(){this.twemojiTextarea.blur()},saveSelection:function(){var e;window.getSelection&&(this.savedRange=null===(e=window.getSelection())||void 0===e?void 0:e.getRangeAt(0))},restoreSelection:function(){if(this.twemojiTextarea.focus(),null!=this.savedRange&&window.getSelection){var e=window.getSelection();(null==e?void 0:e.rangeCount)&&(null==e||e.removeAllRanges()),null==e||e.addRange(this.savedRange)}},addTextBlur:function(e){this.focus(),e=Be.escapeHTML(e),e=a.getEmojiImgFromUnicode(e,this.twemojiOptions),window.document.execCommand("insertHTML",!1,e),this.saveSelection(),this.blur()},addText:function(e){this.focus(),e=Be.escapeHTML(e),e=a.getEmojiImgFromUnicode(e,this.twemojiOptions),window.document.execCommand("insertHTML",!1,e),this.saveSelection()},cleanText:function(){this.twemojiTextarea.innerHTML="",this.$emit("update:content","")},emojiUnicodeAdded:function(e){this.$emit("emojiUnicodeAdded",e)},emojiImgAdded:function(e){this.$emit("emojiImgAdded",e)}}}),Cu=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("div",{staticClass:"twemoji-textarea-outer",style:{paddingBottom:e.maxlength?"15px":"0px",backgroundColor:e.componentColor},attrs:{id:e.idTextarea}},[t("twemoji-picker",e._b({ref:"twemojiPicker",attrs:{pickerPaddingOffset:e.pickerPaddingOffset},on:{addTextBlur:e.addTextBlur,emojiUnicodeAdded:e.emojiUnicodeAdded,emojiImgAdded:e.emojiImgAdded},scopedSlots:e._u([e._l(e.$slots,(function(n,t){return{key:t,fn:function(){return[e._t(t)]},proxy:!0}}))],null,!0)},"twemoji-picker",e.propsFor("twemoji-picker"),!1)),e._v(" "),t("div",{ref:"twemojiTextarea",staticClass:"twemojiTextarea",attrs:{id:"twemoji-textarea",contenteditable:!e.textareaDisabled,placeholder:e.placeholder},on:{input:e.updateContent,paste:e.onPaste,keydown:[function(n){return!n.type.indexOf("key")&&e._k(n.keyCode,"enter",13,n.key,"Enter")?null:n.ctrlKey||n.shiftKey||n.altKey||n.metaKey?null:e.enterKey(n)},function(n){return!n.type.indexOf("key")&&e._k(n.keyCode,"enter",13,n.key,"Enter")?null:n.shiftKey?e.shiftEnterKey(n):null}],mouseup:e.saveSelection,keyup:e.saveSelection,focus:e.restoreSelection}}),e._v(" "),e.enableSendBtn?t("div",{attrs:{id:"send-btn"},on:{click:e.emitEnterKeyEvent}},[t("send-icon-img")],1):e._e(),e._v(" "),e.maxlength?t("div",{attrs:{id:"length-indicator"}},[t("span",{style:{color:e.actualContentLength>e.maxlength?"red":"black"}},[e._v(e._s(e.actualContentLength))]),e._v("\n    /\n    "),t("span",[e._v(e._s(e.maxlength))])]):e._e()],1)};Cu._withStripped=!0;var Ou=Ue,Su=be({render:Cu,staticRenderFns:[]},(function(e){e&&e("data-v-c9e6860c_0",{source:".twemoji-textarea-outer {\n  position: relative;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: horizontal;\n  -webkit-box-direction: normal;\n      -ms-flex-flow: row wrap;\n          flex-flow: row wrap;\n  border-radius: 1px;\n}\n.twemoji-textarea-outer > #twemoji-textarea {\n  -webkit-box-flex: 95;\n      -ms-flex-positive: 95;\n          flex-grow: 95;\n  -ms-flex-preferred-size: 0;\n      flex-basis: 0;\n  background-color: #fff;\n  font-size: 14px;\n  overflow-y: auto;\n  overflow-x: hidden;\n  white-space: pre-wrap;\n  padding: 10px;\n  margin: 10px;\n  border-radius: 10px;\n  text-align: left;\n  cursor: text;\n}\n.twemoji-textarea-outer > #twemoji-textarea[placeholder]:empty:before {\n  content: attr(placeholder);\n  position: absolute;\n  color: #808080;\n  background-color: transparent;\n}\n.twemoji-textarea-outer > #twemoji-textarea > img.emoji {\n  height: 1.5rem;\n  width: 1.5rem;\n  vertical-align: -0.5rem;\n}\n.twemoji-textarea-outer > #length-indicator {\n  position: absolute;\n  bottom: 2px;\n  right: 20px;\n  font-weight: bold;\n}\n.twemoji-textarea-outer >#send-btn {\n  cursor: pointer;\n  -webkit-box-flex: 5;\n      -ms-flex-positive: 5;\n          flex-grow: 5;\n  -ms-flex-preferred-size: 0;\n      flex-basis: 0;\n  height: 40px;\n  margin-top: auto;\n  margin-bottom: auto;\n  margin-right: 5px;\n  padding: 5px;\n}\n.twemoji-textarea-outer >#send-btn > img {\n  width: 25px;\n  height: 25px;\n  margin-top: 10px;\n  margin-bottom: 10px;\n}\n",map:{version:3,sources:["/Users/yxy/yxy/code/vue-twemoji-picker/src/components/TwemojiTextarea.vue","TwemojiTextarea.vue"],names:[],mappings:"AAoDA;EACA,kBAAA;EACA,oBAAA;EAAA,oBAAA;EAAA,aAAA;EACA,8BAAA;EAAA,6BAAA;MAAA,uBAAA;UAAA,mBAAA;EACA,kBAAA;ACnDA;ADqDA;EACA,oBAAA;MAAA,qBAAA;UAAA,aAAA;EACA,0BAAA;MAAA,aAAA;EACA,sBAAA;EACA,eAAA;EACA,gBAAA;EACA,kBAAA;EACA,qBAAA;EACA,aAAA;EACA,YAAA;EACA,mBAAA;EACA,gBAAA;EACA,YAAA;ACnDA;ADqDA;EACA,0BAAA;EACA,kBAAA;EACA,cAAA;EACA,6BAAA;ACnDA;ADsDA;EACA,cAAA;EACA,aAAA;EACA,uBAAA;ACpDA;ADwDA;EACA,kBAAA;EACA,WAAA;EACA,WAAA;EACA,iBAAA;ACtDA;ADyDA;EACA,eAAA;EACA,mBAAA;MAAA,oBAAA;UAAA,YAAA;EACA,0BAAA;MAAA,aAAA;EACA,YAAA;EACA,gBAAA;EACA,mBAAA;EACA,iBAAA;EACA,YAAA;ACvDA;ADyDA;EACA,WAAA;EACA,YAAA;EACA,gBAAA;EACA,mBAAA;ACvDA",file:"TwemojiTextarea.vue",sourcesContent:["<template>\n  <div\n    class=\"twemoji-textarea-outer\"\n    :id=\"idTextarea\"\n    :style=\"{\n      paddingBottom: maxlength ? '15px' : '0px',\n      backgroundColor: componentColor,\n    }\"\n  >\n    <twemoji-picker\n      ref=\"twemojiPicker\"\n      v-bind=\"propsFor('twemoji-picker')\"\n      @addTextBlur=\"addTextBlur\"\n      @emojiUnicodeAdded=\"emojiUnicodeAdded\"\n      @emojiImgAdded=\"emojiImgAdded\"\n      :pickerPaddingOffset=\"pickerPaddingOffset\"\n    >\n      <template v-for=\"(_, slotName) in $slots\" v-slot:[slotName]>\n        <slot :name=\"slotName\" />\n      </template>\n    </twemoji-picker>\n\n    <div\n      ref=\"twemojiTextarea\"\n      id=\"twemoji-textarea\"\n      class=\"twemojiTextarea\"\n      :contenteditable=\"textareaDisabled ? false : true\"\n      @input=\"updateContent\"\n      @paste=\"onPaste\"\n      @keydown.exact.enter=\"enterKey\"\n      @keydown.shift.enter=\"shiftEnterKey\"\n      @mouseup=\"saveSelection\"\n      @keyup=\"saveSelection\"\n      @focus=\"restoreSelection\"\n      :placeholder=\"placeholder\"\n    ></div>\n\n    <div id=\"send-btn\" @click=\"emitEnterKeyEvent\" v-if=\"enableSendBtn\">\n      <send-icon-img />\n    </div>\n\n    <div id=\"length-indicator\" v-if=\"maxlength\">\n      <span\n        :style=\"{ color: actualContentLength > maxlength ? 'red' : 'black' }\"\n        >{{ actualContentLength }}</span\n      >\n      /\n      <span>{{ maxlength }}</span>\n    </div>\n  </div>\n</template>\n<style lang=\"stylus\">\n.twemoji-textarea-outer {\n  position: relative;\n  display: flex;\n  flex-flow: row wrap;\n  border-radius: 1px;\n\n  > #twemoji-textarea {\n    flex-grow: 95;\n    flex-basis: 0;\n    background-color: #ffffff;\n    font-size: 14px;\n    overflow-y: auto;\n    overflow-x: hidden;\n    white-space: pre-wrap;\n    padding: 10px;\n    margin: 10px;\n    border-radius: 10px;\n    text-align: left;\n    cursor: text;\n\n    &[placeholder]:empty:before {\n      content: attr(placeholder);\n      position: absolute;\n      color: gray;\n      background-color: transparent;\n    }\n\n    > img.emoji {\n      height: 1.5rem;\n      width: 1.5rem;\n      vertical-align: -0.5rem;\n    }\n  }\n\n  > #length-indicator {\n    position: absolute;\n    bottom: 2px;\n    right: 20px;\n    font-weight: bold;\n  }\n\n  >#send-btn {\n    cursor: pointer;\n    flex-grow: 5;\n    flex-basis: 0;\n    height: 40px;\n    margin-top: auto;\n    margin-bottom: auto;\n    margin-right: 5px;\n    padding: 5px;\n\n    > img {\n      width: 25px;\n      height: 25px;\n      margin-top: 10px;\n      margin-bottom: 10px;\n    }\n  }\n}\n</style>\n<script lang=\"ts\">\nimport Vue from 'vue';\nimport TextareaParser from '../services/TextareaParser';\nimport EmojiService from '../services/EmojiService';\nimport TwemojiPicker from './TwemojiPicker';\nimport SendIconImg from './SendIconImg.vue';\nimport TwemojiOptions from '../interfaces/TwemojiOptions';\n\nimport TwemojiProps from './TwemojiPicker/props';\nimport TwemojiPropWatchers from './TwemojiPicker/prop-watchers';\nimport { propsForMixin } from '../mixins/propsFor';\n\nimport TwitterText from 'twitter-text';\n\nexport default Vue.extend({\n  name: 'TwemojiTextarea',\n\n  components: {\n    'twemoji-picker': TwemojiPicker,\n    'send-icon-img': SendIconImg,\n  },\n  mixins: [propsForMixin],\n\n  props: {\n    ...TwemojiProps,\n\n    // ** Textarea Props **/\n    idTextarea: {\n      default: 'twemoji-textarea-outer',\n      type: String as () => string,\n    },\n    initialContent: {\n      default: '',\n      type: String as () => string,\n    },\n    enableSendBtn: {\n      default: false,\n      type: Boolean as () => boolean,\n    },\n    emojiPickerDisabled: {\n      default: false,\n      type: Boolean as () => boolean,\n    },\n    textareaDisabled: {\n      default: false,\n      type: Boolean as () => boolean,\n    },\n    componentColor: {\n      type: String as () => string,\n      default: '#F7F7F7',\n      validator: function (value: string) {\n        const s = new Option().style;\n        s.color = value;\n        const bolValid = s.color !== '';\n        if (bolValid === false) {\n          console.error(\n            'The value entered for the prop \"componentColor\" is invalid. ' +\n              'Please inform a valid CSS color.'\n          );\n        }\n        return true;\n      },\n    },\n    placeholder: {\n      type: String as () => string,\n      default: '',\n    },\n    maxlength: {\n      type: Number as () => number,\n      default: null,\n    },\n  },\n\n  data() {\n    return {\n      savedRange: null as any,\n      twemojiOptions: {} as TwemojiOptions,\n      actualContentLength: 0 as number,\n    };\n  },\n\n  computed: {\n    twemojiTextarea(): any {\n      return this.$refs.twemojiTextarea as HTMLElement;\n    },\n    twemojiPicker(): any {\n      return this.$refs.twemojiPicker as any;\n    },\n  },\n\n  created(): void {\n    this.twemojiOptions = {\n      base: this.twemojiPath,\n      ext: this.twemojiExtension,\n      size: this.twemojiFolder,\n    };\n  },\n\n  mounted(): void {\n    // Init TwemojiPicker watchers\n    TwemojiPropWatchers(this, this.twemojiPicker);\n\n    if (this.initialContent.length > 0) {\n      this.twemojiTextarea.innerHTML = this.initialContent;\n    }\n  },\n\n  methods: {\n    updateContent(event: Event): void {\n      const targetedElement = event.target as HTMLElement;\n      let content = targetedElement.innerHTML as any;\n      this.$emit('contentChangedHtml', content);\n      content = TextareaParser.replaceEmojiWithAltAttribute(content);\n      content = TextareaParser.unescapeHtml(content);\n      if (content.length !== 0 && content[content.length - 1] === '\\n') {\n        content = content.slice(0, -1);\n      }\n\n      if (this.emojiTextWeightChanged) {\n        this.actualContentLength = TwitterText.parseTweet(\n          content || '', {\n            version: 3,\n            maxWeightedTweetLength: 280,\n            scale: 100,\n            defaultWeight: 100,\n            transformedURLLength: 23,\n            ranges: []\n          }\n        ).weightedLength;\n      } else {\n        this.actualContentLength = TwitterText.parseTweet(\n          content || ''\n        ).weightedLength;\n      }\n\n      if (this.twemojiPicker.$refs.popupEmoji)\n        this.twemojiPicker.$refs.popupEmoji.popperInstance.forceUpdate();\n      this.$emit('update:content', content);\n      this.$emit('actualContentLengthChanged', this.actualContentLength);\n      this.$emit('contentChanged', content);\n      this.$emit('emojiTextChanged', {value: content, length: this.actualContentLength});\n    },\n    emitIsContentOverflowed() {\n      if (this.actualContentLength > this.maxlength)\n        this.$emit('isContentOverflowed', true);\n      else this.$emit('isContentOverflowed', false);\n    },\n    emitEnterKeyEvent(event: Event): void {\n      this.emitIsContentOverflowed();\n      this.$emit('enterKey', event);\n    },\n    enterKey(event: KeyboardEvent): void {\n      if (event.shiftKey === false) {\n        event.preventDefault();\n        this.emitIsContentOverflowed();\n        this.emitEnterKeyEvent(event);\n      }\n    },\n    shiftEnterKey(event: KeyboardEvent): void {\n      event.stopPropagation();\n      event.preventDefault();\n\n      if (\n        this.twemojiTextarea.innerHTML === '' ||\n        this.twemojiTextarea.innerHTML[\n          this.twemojiTextarea.innerHTML.length - 1\n        ] !== '\\n'\n      ) {\n        this.addText('\\n');\n        this.addText('\\n');\n      } else {\n        this.addText('\\n');\n      }\n\n      this.twemojiTextarea.scrollTop = this.twemojiTextarea.scrollHeight;\n      if (this.twemojiPicker.$refs.popupEmoji)\n        this.twemojiPicker.$refs.popupEmoji.popperInstance.forceUpdate();\n    },\n    onPaste(pasteEvent: ClipboardEvent): void {\n      let pastedData;\n\n      pasteEvent.stopPropagation();\n      pasteEvent.preventDefault();\n      const clipboardData = pasteEvent.clipboardData;\n      pastedData = clipboardData?.getData('Text') || '';\n      pastedData = TextareaParser.escapeHTML(pastedData);\n      pastedData = EmojiService.getEmojiImgFromUnicode(\n        pastedData,\n        this.twemojiOptions\n      );\n\n      window.document.execCommand('insertHTML', false, pastedData);\n\n      this.twemojiTextarea.scrollTop = this.twemojiTextarea.scrollHeight;\n    },\n    focus(): void {\n      const doc = this.twemojiTextarea;\n      const childNode = doc.childNodes[0];\n      doc.focus();\n\n      if (childNode === undefined) {\n        const textNode = document.createTextNode('');\n        doc.appendChild(textNode);\n        const range = document.createRange();\n        const sel = window.getSelection();\n        range.setStart(doc.childNodes[0], 0);\n        range.collapse(true);\n        sel?.removeAllRanges();\n        sel?.addRange(range);\n        this.saveSelection();\n      }\n    },\n    blur(): void {\n      const doc = this.twemojiTextarea;\n      doc.blur();\n    },\n    saveSelection(): void {\n      if (window.getSelection) {\n        this.savedRange = window.getSelection()?.getRangeAt(0);\n      }\n    },\n    restoreSelection(): void {\n      const doc = this.twemojiTextarea;\n      doc.focus();\n      if (this.savedRange != null) {\n        if (window.getSelection) {\n          const s = window.getSelection();\n          if (s?.rangeCount || 0 > 0) {\n            s?.removeAllRanges();\n          }\n          s?.addRange(this.savedRange);\n        }\n      }\n    },\n\n    addTextBlur(text: string): void {\n      this.focus();\n\n      text = TextareaParser.escapeHTML(text);\n      text = EmojiService.getEmojiImgFromUnicode(text, this.twemojiOptions);\n\n      window.document.execCommand('insertHTML', false, text);\n      this.saveSelection();\n      this.blur();\n    },\n    addText(text: string): void {\n      this.focus();\n\n      text = TextareaParser.escapeHTML(text);\n      text = EmojiService.getEmojiImgFromUnicode(text, this.twemojiOptions);\n\n      window.document.execCommand('insertHTML', false, text);\n      this.saveSelection();\n    },\n    cleanText(): void {\n      this.twemojiTextarea.innerHTML = '';\n      this.$emit('update:content', '');\n    },\n    emojiUnicodeAdded(unicode: string): void {\n      this.$emit('emojiUnicodeAdded', unicode);\n    },\n    emojiImgAdded(img: string): void {\n      this.$emit('emojiImgAdded', img);\n    },\n  },\n});\n<\/script>\n",".twemoji-textarea-outer {\n  position: relative;\n  display: flex;\n  flex-flow: row wrap;\n  border-radius: 1px;\n}\n.twemoji-textarea-outer > #twemoji-textarea {\n  flex-grow: 95;\n  flex-basis: 0;\n  background-color: #fff;\n  font-size: 14px;\n  overflow-y: auto;\n  overflow-x: hidden;\n  white-space: pre-wrap;\n  padding: 10px;\n  margin: 10px;\n  border-radius: 10px;\n  text-align: left;\n  cursor: text;\n}\n.twemoji-textarea-outer > #twemoji-textarea[placeholder]:empty:before {\n  content: attr(placeholder);\n  position: absolute;\n  color: #808080;\n  background-color: transparent;\n}\n.twemoji-textarea-outer > #twemoji-textarea > img.emoji {\n  height: 1.5rem;\n  width: 1.5rem;\n  vertical-align: -0.5rem;\n}\n.twemoji-textarea-outer > #length-indicator {\n  position: absolute;\n  bottom: 2px;\n  right: 20px;\n  font-weight: bold;\n}\n.twemoji-textarea-outer >#send-btn {\n  cursor: pointer;\n  flex-grow: 5;\n  flex-basis: 0;\n  height: 40px;\n  margin-top: auto;\n  margin-bottom: auto;\n  margin-right: 5px;\n  padding: 5px;\n}\n.twemoji-textarea-outer >#send-btn > img {\n  width: 25px;\n  height: 25px;\n  margin-top: 10px;\n  margin-bottom: 10px;\n}\n"]},media:void 0})}),Eu,void 0,!1,void 0,!1,je,void 0,void 0),Pu=a,Tu=Be;e.EmojiService=Pu,e.TextareaParser=Tu,e.TwemojiPicker=Ou,e.TwemojiTextarea=Su,Object.defineProperty(e,"__esModule",{value:!0})}));
