1234 |
- var cn=Object.defineProperty;var un=(t,e,n)=>e in t?cn(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;var et=(t,e,n)=>(un(t,typeof e!="symbol"?e+"":e,n),n);function Xe(t){if(typeof t!="string"||!t)throw new Error("expected a non-empty string, got: "+t)}function tt(t){if(typeof t!="number")throw new Error("expected a number, got: "+t)}const dn=1,fn=1,fe="emoji",Ge="keyvalue",dt="favorites",hn="tokens",Ut="tokens",mn="unicode",Pt="count",pn="group",gn="order",Kt="group-order",_t="eTag",st="url",bt="skinTone",Ae="readonly",ft="readwrite",Gt="skinUnicodes",_n="skinUnicodes",bn="https://cdn.jsdelivr.net/npm/emoji-picker-element-data@^1/en/emojibase/data.json",yn="en";function kn(t,e){const n=new Set,o=[];for(const r of t){const s=e(r);n.has(s)||(n.add(s),o.push(r))}return o}function yt(t){return kn(t,e=>e.unicode)}function vn(t){function e(n,o,r){const s=o?t.createObjectStore(n,{keyPath:o}):t.createObjectStore(n);if(r)for(const[c,[m,u]]of Object.entries(r))s.createIndex(c,m,{multiEntry:u});return s}e(Ge),e(fe,mn,{[Ut]:[hn,!0],[Kt]:[[pn,gn]],[Gt]:[_n,!0]}),e(dt,void 0,{[Pt]:[""]})}const at={},Je={},xe={};function Wt(t,e,n){n.onerror=()=>e(n.error),n.onblocked=()=>e(new Error("IDB blocked")),n.onsuccess=()=>t(n.result)}async function wn(t){const e=await new Promise((n,o)=>{const r=indexedDB.open(t,dn);at[t]=r,r.onupgradeneeded=s=>{s.oldVersion<fn&&vn(r.result)},Wt(n,o,r)});return e.onclose=()=>ht(t),e}function En(t){return Je[t]||(Je[t]=wn(t)),Je[t]}function ie(t,e,n,o){return new Promise((r,s)=>{const c=t.transaction(e,n,{durability:"relaxed"}),m=typeof e=="string"?c.objectStore(e):e.map(d=>c.objectStore(d));let u;o(m,c,d=>{u=d}),c.oncomplete=()=>r(u),c.onerror=()=>s(c.error)})}function ht(t){const e=at[t],n=e&&e.result;if(n){n.close();const o=xe[t];if(o)for(const r of o)r()}delete at[t],delete Je[t],delete xe[t]}function jn(t){return new Promise((e,n)=>{ht(t);const o=indexedDB.deleteDatabase(t);Wt(e,n,o)})}function Tn(t,e){let n=xe[t];n||(n=xe[t]=[]),n.push(e)}const Sn=new Set([":D","XD",":'D","O:)",":X",":P",";P","XP",":L",":Z",":j","8D","XO","8)",":B",":O",":S",":'o","Dx","X(","D:",":C",">0)",":3","</3","<3","\\M/",":E","8#"]);function De(t){return t.split(/[\s_]+/).map(e=>!e.match(/\w/)||Sn.has(e)?e.toLowerCase():e.replace(/[)(:,]/g,"").replace(/’/g,"'").toLowerCase()).filter(Boolean)}const Cn=2;function Vt(t){return t.filter(Boolean).map(e=>e.toLowerCase()).filter(e=>e.length>=Cn)}function Ln(t){return t.map(({annotation:n,emoticon:o,group:r,order:s,shortcodes:c,skins:m,tags:u,emoji:d,version:f})=>{const g=[...new Set(Vt([...(c||[]).map(De).flat(),...u.map(De).flat(),...De(n),o]))].sort(),h={annotation:n,group:r,order:s,tags:u,tokens:g,unicode:d,version:f};if(o&&(h.emoticon=o),c&&(h.shortcodes=c),m){h.skinTones=[],h.skinUnicodes=[],h.skinVersions=[];for(const{tone:_,emoji:v,version:w}of m)h.skinTones.push(_),h.skinUnicodes.push(v),h.skinVersions.push(w)}return h})}function Ht(t,e,n,o){t[e](n).onsuccess=r=>o&&o(r.target.result)}function de(t,e,n){Ht(t,"get",e,n)}function Xt(t,e,n){Ht(t,"getAll",e,n)}function mt(t){t.commit&&t.commit()}function Dn(t,e){let n=t[0];for(let o=1;o<t.length;o++){const r=t[o];e(n)>e(r)&&(n=r)}return n}function Yt(t,e){const n=Dn(t,r=>r.length),o=[];for(const r of n)t.some(s=>s.findIndex(c=>e(c)===e(r))===-1)||o.push(r);return o}async function In(t){return!await qt(t,Ge,st)}async function On(t,e){return ie(t,fe,Ae,(o,r,s)=>{let c;const m=()=>{o.getAll(c&&IDBKeyRange.lowerBound(c,!0),50).onsuccess=u=>{const d=u.target.result;for(const f of d)if(c=f.unicode,e(f))return s(f);if(d.length<50)return s();m()}};m()})}async function An(t,e,n,o){try{const r=Ln(e);await ie(t,[fe,Ge],ft,([s,c],m)=>{let u,d,f=0;function g(){++f===2&&h()}function h(){if(!(u===o&&d===n)){s.clear();for(const _ of r)s.put(_);c.put(o,_t),c.put(n,st),mt(m)}}de(c,_t,_=>{u=_,g()}),de(c,st,_=>{d=_,g()})})}finally{}}async function Rn(t,e){return ie(t,fe,Ae,(n,o,r)=>{const s=IDBKeyRange.bound([e,0],[e+1,0],!1,!0);Xt(n.index(Kt),s,r)})}async function Zt(t,e){const n=Vt(De(e));return n.length?ie(t,fe,Ae,(o,r,s)=>{const c=[],m=()=>{c.length===n.length&&u()},u=()=>{const d=Yt(c,f=>f.unicode);s(d.sort((f,g)=>f.order<g.order?-1:1))};for(let d=0;d<n.length;d++){const f=n[d],g=d===n.length-1?IDBKeyRange.bound(f,f+"",!1,!0):IDBKeyRange.only(f);Xt(o.index(Ut),g,h=>{c.push(h),m()})}}):[]}async function Bn(t,e){const n=await Zt(t,e);return n.length?n.filter(o=>(o.shortcodes||[]).map(s=>s.toLowerCase()).includes(e.toLowerCase()))[0]||null:await On(t,r=>(r.shortcodes||[]).includes(e.toLowerCase()))||null}async function zn(t,e){return ie(t,fe,Ae,(n,o,r)=>de(n,e,s=>{if(s)return r(s);de(n.index(Gt),e,c=>r(c||null))}))}function qt(t,e,n){return ie(t,e,Ae,(o,r,s)=>de(o,n,s))}function Mn(t,e,n,o){return ie(t,e,ft,(r,s)=>{r.put(o,n),mt(s)})}function Nn(t,e){return ie(t,dt,ft,(n,o)=>de(n,e,r=>{n.put((r||0)+1,e),mt(o)}))}function Fn(t,e,n){return n===0?[]:ie(t,[dt,fe],Ae,([o,r],s,c)=>{const m=[];o.index(Pt).openCursor(void 0,"prev").onsuccess=u=>{const d=u.target.result;if(!d)return c(m);function f(_){if(m.push(_),m.length===n)return c(m);d.continue()}const g=d.primaryKey,h=e.byName(g);if(h)return f(h);de(r,g,_=>{if(_)return f(_);d.continue()})}})}const Ye="";function Un(t,e){const n=new Map;for(const r of t){const s=e(r);for(const c of s){let m=n;for(let d=0;d<c.length;d++){const f=c.charAt(d);let g=m.get(f);g||(g=new Map,m.set(f,g)),m=g}let u=m.get(Ye);u||(u=[],m.set(Ye,u)),u.push(r)}}return(r,s)=>{let c=n;for(let d=0;d<r.length;d++){const f=r.charAt(d),g=c.get(f);if(g)c=g;else return[]}if(s)return c.get(Ye)||[];const m=[],u=[c];for(;u.length;){const f=[...u.shift().entries()].sort((g,h)=>g[0]<h[0]?-1:1);for(const[g,h]of f)g===Ye?m.push(...h):u.push(h)}return m}}const Pn=["name","url"];function Kn(t){const e=t&&Array.isArray(t),n=e&&t.length&&(!t[0]||Pn.some(o=>!(o in t[0])));if(!e||n)throw new Error("Custom emojis are in the wrong format")}function kt(t){Kn(t);const e=(h,_)=>h.name.toLowerCase()<_.name.toLowerCase()?-1:1,n=t.sort(e),r=Un(t,h=>[...new Set((h.shortcodes||[]).map(_=>De(_)).flat())]),s=h=>r(h,!0),c=h=>r(h,!1),m=h=>{const _=De(h),v=_.map((w,k)=>(k<_.length-1?s:c)(w));return Yt(v,w=>w.name).sort(e)},u=new Map,d=new Map;for(const h of t){d.set(h.name.toLowerCase(),h);for(const _ of h.shortcodes||[])u.set(_.toLowerCase(),h)}return{all:n,search:m,byShortcode:h=>u.get(h.toLowerCase()),byName:h=>d.get(h.toLowerCase())}}const Gn=typeof wrappedJSObject<"u";function Ne(t){if(!t)return t;if(Gn&&(t=structuredClone(t)),delete t.tokens,t.skinTones){const e=t.skinTones.length;t.skins=Array(e);for(let n=0;n<e;n++)t.skins[n]={tone:t.skinTones[n],unicode:t.skinUnicodes[n],version:t.skinVersions[n]};delete t.skinTones,delete t.skinUnicodes,delete t.skinVersions}return t}function Wn(t){t||console.warn("emoji-picker-element is more efficient if the dataSource server exposes an ETag header.")}const Vn=["annotation","emoji","group","order","tags","version"];function Hn(t){if(!t||!Array.isArray(t)||!t[0]||typeof t[0]!="object"||Vn.some(e=>!(e in t[0])))throw new Error("Emoji data is in the wrong format")}function Xn(t,e){if(Math.floor(t.status/100)!==2)throw new Error("Failed to fetch: "+e+": "+t.status)}async function Yn(t){const e=await fetch(t);Xn(e,t);const n=e.headers.get("etag");Wn(n);const o=await e.json();return Hn(o),[n,o]}function Zn(t){for(var e="",n=new Uint8Array(t),o=n.byteLength,r=-1;++r<o;)e+=String.fromCharCode(n[r]);return e}function qn(t){for(var e=t.length,n=new ArrayBuffer(e),o=new Uint8Array(n),r=-1;++r<e;)o[r]=t.charCodeAt(r);return n}async function Jn(t){const e=JSON.stringify(t),n=qn(e),o=await crypto.subtle.digest("SHA-1",n),r=Zn(o);return btoa(r)}async function Qn(t,e){let[n,o]=await Yn(e);n||(n=await Jn(o)),await An(t,o,e,n)}class xn{constructor({dataSource:e=bn,locale:n=yn,customEmoji:o=[]}={}){this.dataSource=e,this.locale=n,this._dbName=`emoji-picker-element-${this.locale}`,this._db=void 0,this._lazyUpdate=void 0,this._custom=kt(o),this._clear=this._clear.bind(this),this._ready=this._init()}async _init(){const e=this._db=await En(this._dbName);Tn(this._dbName,this._clear);const n=this.dataSource;await In(e)&&await Qn(e,n)}async ready(){const e=async()=>(this._ready||(this._ready=this._init()),this._ready);await e(),this._db||await e()}async getEmojiByGroup(e){return tt(e),await this.ready(),yt(await Rn(this._db,e)).map(Ne)}async getEmojiBySearchQuery(e){Xe(e),await this.ready();const n=this._custom.search(e),o=yt(await Zt(this._db,e)).map(Ne);return[...n,...o]}async getEmojiByShortcode(e){Xe(e),await this.ready();const n=this._custom.byShortcode(e);return n||Ne(await Bn(this._db,e))}async getEmojiByUnicodeOrName(e){Xe(e),await this.ready();const n=this._custom.byName(e);return n||Ne(await zn(this._db,e))}async getPreferredSkinTone(){return await this.ready(),await qt(this._db,Ge,bt)||0}async setPreferredSkinTone(e){return tt(e),await this.ready(),Mn(this._db,Ge,bt,e)}async incrementFavoriteEmojiCount(e){return Xe(e),await this.ready(),Nn(this._db,e)}async getTopFavoriteEmoji(e){return tt(e),await this.ready(),(await Fn(this._db,this._custom,e)).map(Ne)}set customEmoji(e){this._custom=kt(e)}get customEmoji(){return this._custom.all}async _shutdown(){await this.ready();try{await this._lazyUpdate}catch{}}_clear(){this._db=this._ready=this._lazyUpdate=void 0}async close(){await this._shutdown(),await ht(this._dbName)}async delete(){await this._shutdown(),await jn(this._dbName)}}function Oe(){}function Jt(t){return t()}function vt(){return Object.create(null)}function Re(t){t.forEach(Jt)}function pt(t){return typeof t=="function"}function $n(t,e){return t!=t?e==e:t!==e||t&&typeof t=="object"||typeof t=="function"}let Ze;function $e(t,e){return t===e?!0:(Ze||(Ze=document.createElement("a")),Ze.href=e,t===Ze.href)}function eo(t){return Object.keys(t).length===0}function to(t){return t&&pt(t.destroy)?t.destroy:Oe}const no=typeof window<"u"?window:typeof globalThis<"u"?globalThis:global;function C(t,e){t.appendChild(e)}function J(t,e,n){t.insertBefore(e,n||null)}function Q(t){t.parentNode&&t.parentNode.removeChild(t)}function S(t){return document.createElement(t)}function ee(t){return document.createTextNode(t)}function q(t,e,n,o){return t.addEventListener(e,n,o),()=>t.removeEventListener(e,n,o)}function i(t,e,n){n==null?t.removeAttribute(e):t.getAttribute(e)!==n&&t.setAttribute(e,n)}function te(t,e){e=""+e,t.data!==e&&(t.data=e)}function wt(t,e){t.value=e??""}function se(t,e,n,o){n==null?t.style.removeProperty(e):t.style.setProperty(e,n,o?"important":"")}let gt;function Ke(t){gt=t}const Ce=[],Le=[];let Ie=[];const Et=[],oo=Promise.resolve();let lt=!1;function io(){lt||(lt=!0,oo.then(Qt))}function ct(t){Ie.push(t)}const nt=new Set;let Se=0;function Qt(){if(Se!==0)return;const t=gt;do{try{for(;Se<Ce.length;){const e=Ce[Se];Se++,Ke(e),ro(e.$$)}}catch(e){throw Ce.length=0,Se=0,e}for(Ke(null),Ce.length=0,Se=0;Le.length;)Le.pop()();for(let e=0;e<Ie.length;e+=1){const n=Ie[e];nt.has(n)||(nt.add(n),n())}Ie.length=0}while(Ce.length);for(;Et.length;)Et.pop()();lt=!1,nt.clear(),Ke(t)}function ro(t){if(t.fragment!==null){t.update(),Re(t.before_update);const e=t.dirty;t.dirty=[-1],t.fragment&&t.fragment.p(t.ctx,e),t.after_update.forEach(ct)}}function so(t){const e=[],n=[];Ie.forEach(o=>t.indexOf(o)===-1?e.push(o):n.push(o)),n.forEach(o=>o()),Ie=e}const ao=new Set;function lo(t,e){t&&t.i&&(ao.delete(t),t.i(e))}function $(t){return(t==null?void 0:t.length)!==void 0?t:Array.from(t)}function Fe(t,e){t.d(1),e.delete(t.key)}function Ue(t,e,n,o,r,s,c,m,u,d,f,g){let h=t.length,_=s.length,v=h;const w={};for(;v--;)w[t[v].key]=v;const k=[],D=new Map,I=new Map,K=[];for(v=_;v--;){const y=g(r,s,v),T=n(y);let R=c.get(T);R?o&&K.push(()=>R.p(y,e)):(R=d(T,y),R.c()),D.set(T,k[v]=R),T in w&&I.set(T,Math.abs(v-w[T]))}const O=new Set,H=new Set;function G(y){lo(y,1),y.m(m,f),c.set(y.key,y),f=y.first,_--}for(;h&&_;){const y=k[_-1],T=t[h-1],R=y.key,W=T.key;y===T?(f=y.first,h--,_--):D.has(W)?!c.has(R)||O.has(R)?G(y):H.has(W)?h--:I.get(R)>I.get(W)?(H.add(R),G(y)):(O.add(W),h--):(u(T,c),h--)}for(;h--;){const y=t[h];D.has(y.key)||u(y,c)}for(;_;)G(k[_-1]);return Re(K),k}function co(t,e,n){const{fragment:o,after_update:r}=t.$$;o&&o.m(e,n),ct(()=>{const s=t.$$.on_mount.map(Jt).filter(pt);t.$$.on_destroy?t.$$.on_destroy.push(...s):Re(s),t.$$.on_mount=[]}),r.forEach(ct)}function uo(t,e){const n=t.$$;n.fragment!==null&&(so(n.after_update),Re(n.on_destroy),n.fragment&&n.fragment.d(e),n.on_destroy=n.fragment=null,n.ctx=[])}function fo(t,e){t.$$.dirty[0]===-1&&(Ce.push(t),io(),t.$$.dirty.fill(0)),t.$$.dirty[e/31|0]|=1<<e%31}function ho(t,e,n,o,r,s,c=null,m=[-1]){const u=gt;Ke(t);const d=t.$$={fragment:null,ctx:[],props:s,update:Oe,not_equal:r,bound:vt(),on_mount:[],on_destroy:[],on_disconnect:[],before_update:[],after_update:[],context:new Map(u?u.$$.context:[]),callbacks:vt(),dirty:m,skip_bound:!1,root:e.target||u.$$.root};c&&c(d.root);let f=!1;d.ctx=n?n(t,e.props||{},(g,h,..._)=>{const v=_.length?_[0]:h;return d.ctx&&r(d.ctx[g],d.ctx[g]=v)&&(!d.skip_bound&&d.bound[g]&&d.bound[g](v),f&&fo(t,g)),h}):[],d.update(),f=!0,Re(d.before_update),d.fragment=o?o(d.ctx):!1,e.target&&(d.fragment&&d.fragment.c(),co(t,e.target,void 0),Qt()),Ke(u)}class mo{constructor(){et(this,"$$");et(this,"$$set")}$destroy(){uo(this,1),this.$destroy=Oe}$on(e,n){if(!pt(n))return Oe;const o=this.$$.callbacks[e]||(this.$$.callbacks[e]=[]);return o.push(n),()=>{const r=o.indexOf(n);r!==-1&&o.splice(r,1)}}$set(e){this.$$set&&!eo(e)&&(this.$$.skip_bound=!0,this.$$set(e),this.$$.skip_bound=!1)}}const xt=[[-1,"✨","custom"],[0,"😀","smileys-emotion"],[1,"👋","people-body"],[3,"🐱","animals-nature"],[4,"🍎","food-drink"],[5,"🏠️","travel-places"],[6,"⚽","activities"],[7,"📝","objects"],[8,"⛔️","symbols"],[9,"🏁","flags"]].map(([t,e,n])=>({id:t,emoji:e,name:n})),qe=xt.slice(1),po=xt[0],go=2,jt=6,$t=typeof requestIdleCallback=="function"?requestIdleCallback:setTimeout;function Tt(t){return t.unicode.includes("")}const _o={"🫨":15,"🫠":14,"🥲":13.1,"🥻":12.1,"🥰":11,"🤩":5,"👱♀️":4,"🤣":3,"👁️🗨️":2,"😀":1,"😐️":.7,"😃":.6},bo=1e3,yo="🖐️",ko=8,vo=["😊","😒","♥️","👍️","😍","😂","😭","☺️","😔","😩","😏","💕","🙌","😘"],en='"Twemoji Mozilla","Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji","EmojiOne Color","Android Emoji",sans-serif',wo=(t,e)=>t<e?-1:t>e?1:0,St=(t,e)=>{const n=document.createElement("canvas");n.width=n.height=1;const o=n.getContext("2d");return o.textBaseline="top",o.font=`100px ${en}`,o.fillStyle=e,o.scale(.01,.01),o.fillText(t,0,0),o.getImageData(0,0,1,1).data},Eo=(t,e)=>{const n=[...t].join(","),o=[...e].join(",");return n===o&&!n.startsWith("0,0,0,")};function jo(t){const e=St(t,"#000"),n=St(t,"#fff");return e&&n&&Eo(e,n)}function To(){const t=Object.entries(_o);try{for(const[e,n]of t)if(jo(e))return n}catch{}finally{}return t[0][1]}let ot;const Ct=()=>(ot||(ot=new Promise(t=>$t(()=>t(To())))),ot),ut=new Map,So="️",Co="\uD83C",Lo="",Do=127995,Io=57339;function Oo(t,e){if(e===0)return t;const n=t.indexOf(Lo);return n!==-1?t.substring(0,n)+String.fromCodePoint(Do+e-1)+t.substring(n):(t.endsWith(So)&&(t=t.substring(0,t.length-1)),t+Co+String.fromCodePoint(Io+e-1))}function x(t){t.preventDefault(),t.stopPropagation()}function it(t,e,n){return e+=t?-1:1,e<0?e=n.length-1:e>=n.length&&(e=0),e}function tn(t,e){const n=new Set,o=[];for(const r of t){const s=e(r);n.has(s)||(n.add(s),o.push(r))}return o}function Ao(t,e){const n=o=>{const r={};for(const s of o)typeof s.tone=="number"&&s.version<=e&&(r[s.tone]=s.unicode);return r};return t.map(({unicode:o,skins:r,shortcodes:s,url:c,name:m,category:u,annotation:d})=>({unicode:o,name:m,shortcodes:s,url:c,category:u,annotation:d,id:o||m,skins:r&&n(r)}))}const Qe=requestAnimationFrame;let Ro=typeof ResizeObserver=="function";function Bo(t,e){let n;return Ro?(n=new ResizeObserver(o=>e(o[0].contentRect.width)),n.observe(t)):Qe(()=>e(t.getBoundingClientRect().width)),{destroy(){n&&n.disconnect()}}}function Lt(t){{const e=document.createRange();return e.selectNode(t.firstChild),e.getBoundingClientRect().width}}let rt;function zo(t,e,n){for(const o of t){const r=n(o),s=Lt(r);typeof rt>"u"&&(rt=Lt(e));const c=s/1.8<rt;ut.set(o.unicode,c)}}function Mo(t){return tn(t,e=>e)}function No(t){t&&(t.scrollTop=0)}const{Map:Pe}=no;function Dt(t,e,n){const o=t.slice();return o[66]=e[n],o[68]=n,o}function It(t,e,n){const o=t.slice();return o[69]=e[n],o[68]=n,o}function Ot(t,e,n){const o=t.slice();return o[66]=e[n],o[68]=n,o}function At(t,e,n){const o=t.slice();return o[72]=e[n],o}function Rt(t,e,n){const o=t.slice();return o[75]=e[n],o[68]=n,o}function Bt(t,e){let n,o=e[75]+"",r,s,c,m,u,d;return{key:t,first:null,c(){n=S("div"),r=ee(o),i(n,"id",s="skintone-"+e[68]),i(n,"class",c="emoji "+(e[68]===e[20]?"active":"")),i(n,"aria-selected",m=e[68]===e[20]),i(n,"role","option"),i(n,"title",u=e[0].skinTones[e[68]]),i(n,"aria-label",d=e[0].skinTones[e[68]]),this.first=n},m(f,g){J(f,n,g),C(n,r)},p(f,g){e=f,g[0]&512&&o!==(o=e[75]+"")&&te(r,o),g[0]&512&&s!==(s="skintone-"+e[68])&&i(n,"id",s),g[0]&1049088&&c!==(c="emoji "+(e[68]===e[20]?"active":""))&&i(n,"class",c),g[0]&1049088&&m!==(m=e[68]===e[20])&&i(n,"aria-selected",m),g[0]&513&&u!==(u=e[0].skinTones[e[68]])&&i(n,"title",u),g[0]&513&&d!==(d=e[0].skinTones[e[68]])&&i(n,"aria-label",d)},d(f){f&&Q(n)}}}function zt(t,e){let n,o,r=e[72].emoji+"",s,c,m,u,d,f,g;function h(){return e[51](e[72])}return{key:t,first:null,c(){n=S("button"),o=S("div"),s=ee(r),i(o,"class","nav-emoji emoji"),i(n,"role","tab"),i(n,"class","nav-button"),i(n,"aria-controls",c="tab-"+e[72].id),i(n,"aria-label",m=e[0].categories[e[72].name]),i(n,"aria-selected",u=!e[4]&&e[13].id===e[72].id),i(n,"title",d=e[0].categories[e[72].name]),this.first=n},m(_,v){J(_,n,v),C(n,o),C(o,s),f||(g=q(n,"click",h),f=!0)},p(_,v){e=_,v[0]&4096&&r!==(r=e[72].emoji+"")&&te(s,r),v[0]&4096&&c!==(c="tab-"+e[72].id)&&i(n,"aria-controls",c),v[0]&4097&&m!==(m=e[0].categories[e[72].name])&&i(n,"aria-label",m),v[0]&12304&&u!==(u=!e[4]&&e[13].id===e[72].id)&&i(n,"aria-selected",u),v[0]&4097&&d!==(d=e[0].categories[e[72].name])&&i(n,"title",d)},d(_){_&&Q(n),f=!1,g()}}}function Fo(t){let e,n;return{c(){e=S("img"),i(e,"class","custom-emoji"),$e(e.src,n=t[66].url)||i(e,"src",n),i(e,"alt",""),i(e,"loading","lazy")},m(o,r){J(o,e,r)},p(o,r){r[0]&32768&&!$e(e.src,n=o[66].url)&&i(e,"src",n)},d(o){o&&Q(e)}}}function Uo(t){let e=t[27](t[66],t[8])+"",n;return{c(){n=ee(e)},m(o,r){J(o,n,r)},p(o,r){r[0]&33024&&e!==(e=o[27](o[66],o[8])+"")&&te(n,e)},d(o){o&&Q(n)}}}function Mt(t,e){let n,o,r,s,c,m,u;function d(h,_){return h[66].unicode?Uo:Fo}let f=d(e),g=f(e);return{key:t,first:null,c(){n=S("button"),g.c(),i(n,"role",o=e[4]?"option":"menuitem"),i(n,"aria-selected",r=e[4]?e[68]==e[5]:""),i(n,"aria-label",s=e[28](e[66],e[8])),i(n,"title",c=e[29](e[66])),i(n,"class",m="emoji "+(e[4]&&e[68]===e[5]?"active":"")),i(n,"id",u="emo-"+e[66].id),this.first=n},m(h,_){J(h,n,_),g.m(n,null)},p(h,_){e=h,f===(f=d(e))&&g?g.p(e,_):(g.d(1),g=f(e),g&&(g.c(),g.m(n,null))),_[0]&16&&o!==(o=e[4]?"option":"menuitem")&&i(n,"role",o),_[0]&32816&&r!==(r=e[4]?e[68]==e[5]:"")&&i(n,"aria-selected",r),_[0]&33024&&s!==(s=e[28](e[66],e[8]))&&i(n,"aria-label",s),_[0]&32768&&c!==(c=e[29](e[66]))&&i(n,"title",c),_[0]&32816&&m!==(m="emoji "+(e[4]&&e[68]===e[5]?"active":""))&&i(n,"class",m),_[0]&32768&&u!==(u="emo-"+e[66].id)&&i(n,"id",u)},d(h){h&&Q(n),g.d()}}}function Nt(t,e){let n,o=(e[4]?e[0].searchResultsLabel:e[69].category?e[69].category:e[15].length>1?e[0].categories.custom:e[0].categories[e[13].name])+"",r,s,c,m,u=[],d=new Pe,f,g,h,_=$(e[69].emojis);const v=w=>w[66].id;for(let w=0;w<_.length;w+=1){let k=Ot(e,_,w),D=v(k);d.set(D,u[w]=Mt(D,k))}return{key:t,first:null,c(){n=S("div"),r=ee(o),m=S("div");for(let w=0;w<u.length;w+=1)u[w].c();i(n,"id",s="menu-label-"+e[68]),i(n,"class",c="category "+(e[15].length===1&&e[15][0].category===""?"gone":"")),i(n,"aria-hidden","true"),i(m,"class","emoji-menu"),i(m,"role",f=e[4]?"listbox":"menu"),i(m,"aria-labelledby",g="menu-label-"+e[68]),i(m,"id",h=e[4]?"search-results":""),this.first=n},m(w,k){J(w,n,k),C(n,r),J(w,m,k);for(let D=0;D<u.length;D+=1)u[D]&&u[D].m(m,null)},p(w,k){e=w,k[0]&40977&&o!==(o=(e[4]?e[0].searchResultsLabel:e[69].category?e[69].category:e[15].length>1?e[0].categories.custom:e[0].categories[e[13].name])+"")&&te(r,o),k[0]&32768&&s!==(s="menu-label-"+e[68])&&i(n,"id",s),k[0]&32768&&c!==(c="category "+(e[15].length===1&&e[15][0].category===""?"gone":""))&&i(n,"class",c),k[0]&939557168&&(_=$(e[69].emojis),u=Ue(u,k,v,1,e,_,d,m,Fe,Mt,null,Ot)),k[0]&16&&f!==(f=e[4]?"listbox":"menu")&&i(m,"role",f),k[0]&32768&&g!==(g="menu-label-"+e[68])&&i(m,"aria-labelledby",g),k[0]&16&&h!==(h=e[4]?"search-results":"")&&i(m,"id",h)},d(w){w&&(Q(n),Q(m));for(let k=0;k<u.length;k+=1)u[k].d()}}}function Po(t){let e,n;return{c(){e=S("img"),i(e,"class","custom-emoji"),$e(e.src,n=t[66].url)||i(e,"src",n),i(e,"alt",""),i(e,"loading","lazy")},m(o,r){J(o,e,r)},p(o,r){r[0]&1024&&!$e(e.src,n=o[66].url)&&i(e,"src",n)},d(o){o&&Q(e)}}}function Ko(t){let e=t[27](t[66],t[8])+"",n;return{c(){n=ee(e)},m(o,r){J(o,n,r)},p(o,r){r[0]&1280&&e!==(e=o[27](o[66],o[8])+"")&&te(n,e)},d(o){o&&Q(n)}}}function Ft(t,e){let n,o,r,s;function c(d,f){return d[66].unicode?Ko:Po}let m=c(e),u=m(e);return{key:t,first:null,c(){n=S("button"),u.c(),i(n,"role","menuitem"),i(n,"aria-label",o=e[28](e[66],e[8])),i(n,"title",r=e[29](e[66])),i(n,"class","emoji"),i(n,"id",s="fav-"+e[66].id),this.first=n},m(d,f){J(d,n,f),u.m(n,null)},p(d,f){e=d,m===(m=c(e))&&u?u.p(e,f):(u.d(1),u=m(e),u&&(u.c(),u.m(n,null))),f[0]&1280&&o!==(o=e[28](e[66],e[8]))&&i(n,"aria-label",o),f[0]&1024&&r!==(r=e[29](e[66]))&&i(n,"title",r),f[0]&1024&&s!==(s="fav-"+e[66].id)&&i(n,"id",s)},d(d){d&&Q(n),u.d()}}}function Go(t){let e,n,o,r,s,c,m,u,d,f=t[0].searchLabel+"",g,h,_=t[0].searchDescription+"",v,w,k,D,I,K,O,H=t[0].skinToneDescription+"",G,y,T=[],R=new Pe,W,ae,X,re,B,z=[],Be=new Pe,le,V,M,N,Y,ce,A,ne,U=[],he=new Pe,me,pe,ge,_e,F,P=[],be=new Pe,ye,ke,oe,ue,ze,Me,ve=$(t[9]);const we=l=>l[75];for(let l=0;l<ve.length;l+=1){let p=Rt(t,ve,l),j=we(p);R.set(j,T[l]=Bt(j,p))}let Ee=$(t[12]);const We=l=>l[72].id;for(let l=0;l<Ee.length;l+=1){let p=At(t,Ee,l),j=We(p);Be.set(j,z[l]=zt(j,p))}let je=$(t[15]);const Ve=l=>l[69].category;for(let l=0;l<je.length;l+=1){let p=It(t,je,l),j=Ve(p);he.set(j,U[l]=Nt(j,p))}let Te=$(t[10]);const He=l=>l[66].id;for(let l=0;l<Te.length;l+=1){let p=Dt(t,Te,l),j=He(p);be.set(j,P[l]=Ft(j,p))}return{c(){e=S("section"),n=S("div"),o=S("div"),r=S("div"),s=S("input"),d=S("label"),g=ee(f),h=S("span"),v=ee(_),w=S("div"),k=S("button"),D=ee(t[21]),O=S("span"),G=ee(H),y=S("div");for(let l=0;l<T.length;l+=1)T[l].c();B=S("div");for(let l=0;l<z.length;l+=1)z[l].c();V=S("div"),M=S("div"),N=S("div"),Y=ee(t[18]),A=S("div"),ne=S("div");for(let l=0;l<U.length;l+=1)U[l].c();F=S("div");for(let l=0;l<P.length;l+=1)P[l].c();oe=S("button"),oe.textContent="😀",i(n,"class","pad-top"),i(s,"id","search"),i(s,"class","search"),i(s,"type","search"),i(s,"role","combobox"),i(s,"enterkeyhint","search"),i(s,"placeholder",c=t[0].searchLabel),i(s,"autocapitalize","none"),i(s,"autocomplete","off"),i(s,"spellcheck","true"),i(s,"aria-expanded",m=!!(t[4]&&t[1].length)),i(s,"aria-controls","search-results"),i(s,"aria-describedby","search-description"),i(s,"aria-autocomplete","list"),i(s,"aria-activedescendant",u=t[26]?`emo-${t[26]}`:""),i(d,"class","sr-only"),i(d,"for","search"),i(h,"id","search-description"),i(h,"class","sr-only"),i(r,"class","search-wrapper"),i(k,"id","skintone-button"),i(k,"class",I="emoji "+(t[6]?"hide-focus":"")),i(k,"aria-label",t[23]),i(k,"title",t[23]),i(k,"aria-describedby","skintone-description"),i(k,"aria-haspopup","listbox"),i(k,"aria-expanded",t[6]),i(k,"aria-controls","skintone-list"),i(w,"class",K="skintone-button-wrapper "+(t[19]?"expanded":"")),i(O,"id","skintone-description"),i(O,"class","sr-only"),i(y,"id","skintone-list"),i(y,"class",W="skintone-list hide-focus "+(t[6]?"":"hidden no-animate")),se(y,"transform","translateY("+(t[6]?0:"calc(-1 * var(--num-skintones) * var(--total-emoji-size))")+")"),i(y,"role","listbox"),i(y,"aria-label",ae=t[0].skinTonesLabel),i(y,"aria-activedescendant",X="skintone-"+t[20]),i(y,"aria-hidden",re=!t[6]),i(y,"tabindex","-1"),i(o,"class","search-row"),i(B,"class","nav"),i(B,"role","tablist"),se(B,"grid-template-columns","repeat("+t[12].length+", 1fr)"),i(B,"aria-label",le=t[0].categoriesLabel),i(M,"class","indicator"),se(M,"transform","translateX("+(t[24]?-1:1)*t[11]*100+"%)"),i(V,"class","indicator-wrapper"),i(N,"class",ce="message "+(t[18]?"":"gone")),i(N,"role","alert"),i(N,"aria-live","polite"),i(A,"class",me="tabpanel "+(!t[14]||t[18]?"gone":"")),i(A,"role",pe=t[4]?"region":"tabpanel"),i(A,"aria-label",ge=t[4]?t[0].searchResultsLabel:t[0].categories[t[13].name]),i(A,"id",_e=t[4]?"":`tab-${t[13].id}`),i(A,"tabindex","0"),i(F,"class",ye="favorites emoji-menu "+(t[18]?"gone":"")),i(F,"role","menu"),i(F,"aria-label",ke=t[0].favoritesLabel),se(F,"padding-inline-end",t[25]+"px"),i(oe,"aria-hidden","true"),i(oe,"tabindex","-1"),i(oe,"class","abs-pos hidden emoji"),i(e,"class","picker"),i(e,"aria-label",ue=t[0].regionLabel),i(e,"style",t[22])},m(l,p){J(l,e,p),C(e,n),C(e,o),C(o,r),C(r,s),wt(s,t[2]),C(r,d),C(d,g),C(r,h),C(h,v),C(o,w),C(w,k),C(k,D),C(o,O),C(O,G),C(o,y);for(let j=0;j<T.length;j+=1)T[j]&&T[j].m(y,null);t[50](y),C(e,B);for(let j=0;j<z.length;j+=1)z[j]&&z[j].m(B,null);C(e,V),C(V,M),C(e,N),C(N,Y),C(e,A),C(A,ne);for(let j=0;j<U.length;j+=1)U[j]&&U[j].m(ne,null);t[52](A),C(e,F);for(let j=0;j<P.length;j+=1)P[j]&&P[j].m(F,null);C(e,oe),t[53](oe),t[54](e),ze||(Me=[q(s,"input",t[49]),q(s,"keydown",t[31]),q(k,"click",t[36]),q(y,"focusout",t[39]),q(y,"click",t[35]),q(y,"keydown",t[37]),q(y,"keyup",t[38]),q(B,"keydown",t[33]),to(t[30].call(null,ne)),q(A,"click",t[34]),q(F,"click",t[34])],ze=!0)},p(l,p){p[0]&1&&c!==(c=l[0].searchLabel)&&i(s,"placeholder",c),p[0]&18&&m!==(m=!!(l[4]&&l[1].length))&&i(s,"aria-expanded",m),p[0]&67108864&&u!==(u=l[26]?`emo-${l[26]}`:"")&&i(s,"aria-activedescendant",u),p[0]&4&&s.value!==l[2]&&wt(s,l[2]),p[0]&1&&f!==(f=l[0].searchLabel+"")&&te(g,f),p[0]&1&&_!==(_=l[0].searchDescription+"")&&te(v,_),p[0]&2097152&&te(D,l[21]),p[0]&64&&I!==(I="emoji "+(l[6]?"hide-focus":""))&&i(k,"class",I),p[0]&8388608&&i(k,"aria-label",l[23]),p[0]&8388608&&i(k,"title",l[23]),p[0]&64&&i(k,"aria-expanded",l[6]),p[0]&524288&&K!==(K="skintone-button-wrapper "+(l[19]?"expanded":""))&&i(w,"class",K),p[0]&1&&H!==(H=l[0].skinToneDescription+"")&&te(G,H),p[0]&1049089&&(ve=$(l[9]),T=Ue(T,p,we,1,l,ve,R,y,Fe,Bt,null,Rt)),p[0]&64&&W!==(W="skintone-list hide-focus "+(l[6]?"":"hidden no-animate"))&&i(y,"class",W),p[0]&64&&se(y,"transform","translateY("+(l[6]?0:"calc(-1 * var(--num-skintones) * var(--total-emoji-size))")+")"),p[0]&1&&ae!==(ae=l[0].skinTonesLabel)&&i(y,"aria-label",ae),p[0]&1048576&&X!==(X="skintone-"+l[20])&&i(y,"aria-activedescendant",X),p[0]&64&&re!==(re=!l[6])&&i(y,"aria-hidden",re),p[0]&12305|p[1]&2&&(Ee=$(l[12]),z=Ue(z,p,We,1,l,Ee,Be,B,Fe,zt,null,At)),p[0]&4096&&se(B,"grid-template-columns","repeat("+l[12].length+", 1fr)"),p[0]&1&&le!==(le=l[0].categoriesLabel)&&i(B,"aria-label",le),p[0]&16779264&&se(M,"transform","translateX("+(l[24]?-1:1)*l[11]*100+"%)"),p[0]&262144&&te(Y,l[18]),p[0]&262144&&ce!==(ce="message "+(l[18]?"":"gone"))&&i(N,"class",ce),p[0]&939565361&&(je=$(l[15]),U=Ue(U,p,Ve,1,l,je,he,ne,Fe,Nt,null,It)),p[0]&278528&&me!==(me="tabpanel "+(!l[14]||l[18]?"gone":""))&&i(A,"class",me),p[0]&16&&pe!==(pe=l[4]?"region":"tabpanel")&&i(A,"role",pe),p[0]&8209&&ge!==(ge=l[4]?l[0].searchResultsLabel:l[0].categories[l[13].name])&&i(A,"aria-label",ge),p[0]&8208&&_e!==(_e=l[4]?"":`tab-${l[13].id}`)&&i(A,"id",_e),p[0]&939525376&&(Te=$(l[10]),P=Ue(P,p,He,1,l,Te,be,F,Fe,Ft,null,Dt)),p[0]&262144&&ye!==(ye="favorites emoji-menu "+(l[18]?"gone":""))&&i(F,"class",ye),p[0]&1&&ke!==(ke=l[0].favoritesLabel)&&i(F,"aria-label",ke),p[0]&33554432&&se(F,"padding-inline-end",l[25]+"px"),p[0]&1&&ue!==(ue=l[0].regionLabel)&&i(e,"aria-label",ue),p[0]&4194304&&i(e,"style",l[22])},i:Oe,o:Oe,d(l){l&&Q(e);for(let p=0;p<T.length;p+=1)T[p].d();t[50](null);for(let p=0;p<z.length;p+=1)z[p].d();for(let p=0;p<U.length;p+=1)U[p].d();t[52](null);for(let p=0;p<P.length;p+=1)P[p].d();t[53](null),t[54](null),ze=!1,Re(Me)}}}function Wo(t,e,n){let{skinToneEmoji:o}=e,{i18n:r}=e,{database:s}=e,{customEmoji:c}=e,{customCategorySorting:m}=e,{emojiVersion:u}=e,d=!0,f=[],g=[],h="",_="",v,w,k,D=!1,I=-1,K,O=!1,H=!1,G,y=0,T=0,R,W,ae="",X=[],re=[],B,z=ko,Be=!1,le=0,V=0,M=qe,N,Y=!1,ce;const A=[],ne=a=>{v.getRootNode().getElementById(a).focus()},U=(a,b)=>{v.dispatchEvent(new CustomEvent(a,{detail:b,bubbles:!0,composed:!0}))},he=(a,b)=>b&&a.skins&&a.skins[b]||a.unicode,me=(a,b)=>Mo([a.name||he(a,b),a.annotation,...a.shortcodes||A].filter(Boolean)).join(", "),pe=a=>a.annotation||(a.shortcodes||A).join(", ");function ge(a){return Bo(a,b=>{{const E=getComputedStyle(v),L=parseInt(E.getPropertyValue("--num-columns"),10),Z=E.getPropertyValue("direction")==="rtl",ln=a.parentElement.getBoundingClientRect().width-b;n(48,z=L),n(25,le=ln),n(24,Be=Z)}})}function _e(a){const b=v.getRootNode();zo(a,w,L=>b.getElementById(`emo-${L.id}`)),n(1,f),n(14,Y),n(46,_),n(13,N),n(44,u),n(3,k),n(0,r),n(40,s),n(2,h),n(12,M),n(11,V),n(42,c)}function F(a){return!a.unicode||!Tt(a)||ut.get(a.unicode)}async function P(a){const b=u||await Ct();return a.filter(({version:E})=>!E||E<=b)}async function be(a){return Ao(a,u||await Ct())}async function ye(a){const b=a===-1?c:await s.getEmojiByGroup(a);return be(await P(b))}async function ke(a){return be(await P(await s.getEmojiBySearchQuery(a)))}function oe(a){if(!D||!f.length)return;const b=E=>{x(a),n(5,I=it(E,I,f))};switch(a.key){case"ArrowDown":return b(!1);case"ArrowUp":return b(!0);case"Enter":if(I!==-1)return x(a),Me(f[I].id);f.length&&n(5,I=0)}}function ue(a){n(2,h=""),n(46,_=""),n(5,I=-1),n(11,V=M.findIndex(b=>b.id===a.id))}function ze(a){const{target:b,key:E}=a,L=Z=>{Z&&(x(a),Z.focus())};switch(E){case"ArrowLeft":return L(b.previousSibling);case"ArrowRight":return L(b.nextSibling);case"Home":return L(b.parentElement.firstChild);case"End":return L(b.parentElement.lastChild)}}async function Me(a){const b=await s.getEmojiByUnicodeOrName(a),E=[...f,...re].find(Z=>Z.id===a),L=E.unicode&&he(E,y);await s.incrementFavoriteEmojiCount(a),U("emoji-click",{emoji:b,skinTone:y,...L&&{unicode:L},...E.name&&{name:E.name}})}async function ve(a){const{target:b}=a;if(!b.classList.contains("emoji"))return;x(a);const E=b.id.substring(4);Me(E)}function we(a){n(8,y=a),n(6,O=!1),ne("skintone-button"),U("skin-tone-change",{skinTone:a}),s.setPreferredSkinTone(a)}function Ee(a){const{target:{id:b}}=a,E=b&&b.match(/^skintone-(\d)/);if(!E)return;x(a);const L=parseInt(E[1],10);we(L)}function We(a){n(6,O=!O),n(20,T=y),O&&(x(a),Qe(()=>ne("skintone-list")))}function je(a){if(!O)return;const b=async E=>{x(a),n(20,T=E)};switch(a.key){case"ArrowUp":return b(it(!0,T,X));case"ArrowDown":return b(it(!1,T,X));case"Home":return b(0);case"End":return b(X.length-1);case"Enter":return x(a),we(T);case"Escape":return x(a),n(6,O=!1),ne("skintone-button")}}function Ve(a){if(O)switch(a.key){case" ":return x(a),we(T)}}async function Te(a){const{relatedTarget:b}=a;(!b||b.id!=="skintone-list")&&n(6,O=!1)}function He(){h=this.value,n(2,h)}function l(a){Le[a?"unshift":"push"](()=>{G=a,n(7,G)})}const p=a=>ue(a);function j(a){Le[a?"unshift":"push"](()=>{k=a,n(3,k)})}function sn(a){Le[a?"unshift":"push"](()=>{w=a,n(17,w)})}function an(a){Le[a?"unshift":"push"](()=>{v=a,n(16,v)})}return t.$$set=a=>{"skinToneEmoji"in a&&n(41,o=a.skinToneEmoji),"i18n"in a&&n(0,r=a.i18n),"database"in a&&n(40,s=a.database),"customEmoji"in a&&n(42,c=a.customEmoji),"customCategorySorting"in a&&n(43,m=a.customCategorySorting),"emojiVersion"in a&&n(44,u=a.emojiVersion)},t.$$.update=()=>{if(t.$$.dirty[1]&2560&&c&&s&&n(40,s.customEmoji=c,s),t.$$.dirty[0]&1|t.$$.dirty[1]&512){async function a(){let b=!1;const E=setTimeout(()=>{b=!0,n(18,K=r.loadingMessage)},bo);try{await s.ready(),n(14,Y=!0)}catch(L){console.error(L),n(18,K=r.networkErrorMessage)}finally{clearTimeout(E),b&&(b=!1,n(18,K=""))}}s&&a()}if(t.$$.dirty[0]&6144|t.$$.dirty[1]&2048&&(c&&c.length?n(12,M=[po,...qe]):M!==qe&&(V&&n(11,V--,V),n(12,M=qe))),t.$$.dirty[0]&4&&$t(()=>{n(46,_=(h||"").trim()),n(5,I=-1)}),t.$$.dirty[0]&6144&&n(13,N=M[V]),t.$$.dirty[0]&24576|t.$$.dirty[1]&32768){async function a(){if(!Y)n(1,f=[]),n(4,D=!1);else if(_.length>=go){const b=_,E=await ke(b);b===_&&(n(1,f=E),n(4,D=!0))}else if(N){const b=N.id,E=await ye(b);b===N.id&&(n(1,f=E),n(4,D=!1))}}a()}if(t.$$.dirty[0]&4112&&n(22,W=`
- --num-groups: ${M.length};
- --indicator-opacity: ${D?0:1};
- --num-skintones: ${jt};`),t.$$.dirty[0]&16384|t.$$.dirty[1]&512){async function a(){Y&&n(8,y=await s.getPreferredSkinTone())}a()}if(t.$$.dirty[1]&1024&&n(9,X=Array(jt).fill().map((a,b)=>Oo(o,b))),t.$$.dirty[0]&768&&n(21,R=X[y]),t.$$.dirty[0]&257&&n(23,ae=r.skinToneLabel.replace("{skinTone}",r.skinTones[y])),t.$$.dirty[0]&16384|t.$$.dirty[1]&512){async function a(){n(47,B=(await Promise.all(vo.map(b=>s.getEmojiByUnicodeOrName(b)))).filter(Boolean))}Y&&a()}if(t.$$.dirty[0]&16384|t.$$.dirty[1]&197120){async function a(){const b=await s.getTopFavoriteEmoji(z),E=await be(tn([...b,...B],L=>L.unicode||L.name).slice(0,z));n(10,re=E)}Y&&B&&a()}if(t.$$.dirty[0]&10|t.$$.dirty[1]&8192){const a=f.filter(b=>b.unicode).filter(b=>Tt(b)&&!ut.has(b.unicode));!u&&a.length?Qe(()=>_e(a)):(n(1,f=u?f:f.filter(F)),Qe(()=>No(k)))}t.$$.dirty[0]&1026|t.$$.dirty[1]&16384,t.$$.dirty[0]&18|t.$$.dirty[1]&4096&&n(15,g=function(){if(D)return[{category:"",emojis:f}];const b=new Map;for(const E of f){const L=E.category||"";let Z=b.get(L);Z||(Z=[],b.set(L,Z)),Z.push(E)}return[...b.entries()].map(([E,L])=>({category:E,emojis:L})).sort((E,L)=>m(E.category,L.category))}()),t.$$.dirty[0]&34&&n(26,ce=I!==-1&&f[I].id),t.$$.dirty[0]&192&&(O?G.addEventListener("transitionend",()=>{n(19,H=!0)},{once:!0}):n(19,H=!1))},[r,f,h,k,D,I,O,G,y,X,re,V,M,N,Y,g,v,w,K,H,T,R,W,ae,Be,le,ce,he,me,pe,ge,oe,ue,ze,ve,Ee,We,je,Ve,Te,s,o,c,m,u,d,_,B,z,He,l,p,j,sn,an]}class Vo extends mo{constructor(e){super(),ho(this,e,Wo,Go,$n,{skinToneEmoji:41,i18n:0,database:40,customEmoji:42,customCategorySorting:43,emojiVersion:44},null,[-1,-1,-1])}}const Ho="https://cdn.jsdelivr.net/npm/emoji-picker-element-data@^1/en/emojibase/data.json",Xo="en";var Yo={categoriesLabel:"Categories",emojiUnsupportedMessage:"Your browser does not support color emoji.",favoritesLabel:"Favorites",loadingMessage:"Loading…",networkErrorMessage:"Could not load emoji.",regionLabel:"Emoji picker",searchDescription:"When search results are available, press up or down to select and enter to choose.",searchLabel:"Search",searchResultsLabel:"Search results",skinToneDescription:"When expanded, press up or down to select and enter to choose.",skinToneLabel:"Choose a skin tone (currently {skinTone})",skinTonesLabel:"Skin tones",skinTones:["Default","Light","Medium-Light","Medium","Medium-Dark","Dark"],categories:{custom:"Custom","smileys-emotion":"Smileys and emoticons","people-body":"People and body","animals-nature":"Animals and nature","food-drink":"Food and drink","travel-places":"Travel and places",activities:"Activities",objects:"Objects",symbols:"Symbols",flags:"Flags"}};const nn=["customEmoji","customCategorySorting","database","dataSource","i18n","locale","skinToneEmoji","emojiVersion"],Zo=`:host{--emoji-font-family:${en}}`;class on extends HTMLElement{constructor(e){super(),this.attachShadow({mode:"open"});const n=document.createElement("style");n.textContent=":host{--emoji-size:1.375rem;--emoji-padding:0.5rem;--category-emoji-size:var(--emoji-size);--category-emoji-padding:var(--emoji-padding);--indicator-height:3px;--input-border-radius:0.5rem;--input-border-size:1px;--input-font-size:1rem;--input-line-height:1.5;--input-padding:0.25rem;--num-columns:8;--outline-size:2px;--border-size:1px;--skintone-border-radius:1rem;--category-font-size:1rem;display:flex;width:min-content;height:400px}:host,:host(.light){color-scheme:light;--background:#fff;--border-color:#e0e0e0;--indicator-color:#385ac1;--input-border-color:#999;--input-font-color:#111;--input-placeholder-color:#999;--outline-color:#999;--category-font-color:#111;--button-active-background:#e6e6e6;--button-hover-background:#d9d9d9}:host(.dark){color-scheme:dark;--background:#222;--border-color:#444;--indicator-color:#5373ec;--input-border-color:#ccc;--input-font-color:#efefef;--input-placeholder-color:#ccc;--outline-color:#fff;--category-font-color:#efefef;--button-active-background:#555555;--button-hover-background:#484848}@media (prefers-color-scheme:dark){:host{color-scheme:dark;--background:#222;--border-color:#444;--indicator-color:#5373ec;--input-border-color:#ccc;--input-font-color:#efefef;--input-placeholder-color:#ccc;--outline-color:#fff;--category-font-color:#efefef;--button-active-background:#555555;--button-hover-background:#484848}}:host([hidden]){display:none}button{margin:0;padding:0;border:0;background:0 0;box-shadow:none;-webkit-tap-highlight-color:transparent}button::-moz-focus-inner{border:0}input{padding:0;margin:0;line-height:1.15;font-family:inherit}input[type=search]{-webkit-appearance:none}:focus{outline:var(--outline-color) solid var(--outline-size);outline-offset:calc(-1*var(--outline-size))}:host([data-js-focus-visible]) :focus:not([data-focus-visible-added]){outline:0}:focus:not(:focus-visible){outline:0}.hide-focus{outline:0}*{box-sizing:border-box}.picker{contain:content;display:flex;flex-direction:column;background:var(--background);border:var(--border-size) solid var(--border-color);width:100%;height:100%;overflow:hidden;--total-emoji-size:calc(var(--emoji-size) + (2 * var(--emoji-padding)));--total-category-emoji-size:calc(var(--category-emoji-size) + (2 * var(--category-emoji-padding)))}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.hidden{opacity:0;pointer-events:none}.abs-pos{position:absolute;left:0;top:0}.gone{display:none!important}.skintone-button-wrapper,.skintone-list{background:var(--background);z-index:3}.skintone-button-wrapper.expanded{z-index:1}.skintone-list{position:absolute;inset-inline-end:0;top:0;z-index:2;overflow:visible;border-bottom:var(--border-size) solid var(--border-color);border-radius:0 0 var(--skintone-border-radius) var(--skintone-border-radius);will-change:transform;transition:transform .2s ease-in-out;transform-origin:center 0}@media (prefers-reduced-motion:reduce){.skintone-list{transition-duration:.001s}}@supports not (inset-inline-end:0){.skintone-list{right:0}}.skintone-list.no-animate{transition:none}.tabpanel{overflow-y:auto;-webkit-overflow-scrolling:touch;will-change:transform;min-height:0;flex:1;contain:content}.emoji-menu{display:grid;grid-template-columns:repeat(var(--num-columns),var(--total-emoji-size));justify-content:space-around;align-items:flex-start;width:100%}.category{padding:var(--emoji-padding);font-size:var(--category-font-size);color:var(--category-font-color)}.custom-emoji,.emoji,button.emoji{height:var(--total-emoji-size);width:var(--total-emoji-size)}.emoji,button.emoji{font-size:var(--emoji-size);display:flex;align-items:center;justify-content:center;border-radius:100%;line-height:1;overflow:hidden;font-family:var(--emoji-font-family);cursor:pointer}@media (hover:hover) and (pointer:fine){.emoji:hover,button.emoji:hover{background:var(--button-hover-background)}}.emoji.active,.emoji:active,button.emoji.active,button.emoji:active{background:var(--button-active-background)}.custom-emoji{padding:var(--emoji-padding);object-fit:contain;pointer-events:none;background-repeat:no-repeat;background-position:center center;background-size:var(--emoji-size) var(--emoji-size)}.nav,.nav-button{align-items:center}.nav{display:grid;justify-content:space-between;contain:content}.nav-button{display:flex;justify-content:center}.nav-emoji{font-size:var(--category-emoji-size);width:var(--total-category-emoji-size);height:var(--total-category-emoji-size)}.indicator-wrapper{display:flex;border-bottom:1px solid var(--border-color)}.indicator{width:calc(100%/var(--num-groups));height:var(--indicator-height);opacity:var(--indicator-opacity);background-color:var(--indicator-color);will-change:transform,opacity;transition:opacity .1s linear,transform .25s ease-in-out}@media (prefers-reduced-motion:reduce){.indicator{will-change:opacity;transition:opacity .1s linear}}.pad-top,input.search{background:var(--background);width:100%}.pad-top{height:var(--emoji-padding);z-index:3}.search-row{display:flex;align-items:center;position:relative;padding-inline-start:var(--emoji-padding);padding-bottom:var(--emoji-padding)}.search-wrapper{flex:1;min-width:0}input.search{padding:var(--input-padding);border-radius:var(--input-border-radius);border:var(--input-border-size) solid var(--input-border-color);color:var(--input-font-color);font-size:var(--input-font-size);line-height:var(--input-line-height)}input.search::placeholder{color:var(--input-placeholder-color)}.favorites{display:flex;flex-direction:row;border-top:var(--border-size) solid var(--border-color);contain:content}.message{padding:var(--emoji-padding)}"+Zo,this.shadowRoot.appendChild(n),this._ctx={locale:Xo,dataSource:Ho,skinToneEmoji:yo,customCategorySorting:wo,customEmoji:null,i18n:Yo,emojiVersion:null,...e};for(const o of nn)o!=="database"&&Object.prototype.hasOwnProperty.call(this,o)&&(this._ctx[o]=this[o],delete this[o]);this._dbFlush()}connectedCallback(){this._cmp||(this._cmp=new Vo({target:this.shadowRoot,props:this._ctx}))}disconnectedCallback(){Promise.resolve().then(()=>{if(!this.isConnected&&this._cmp){this._cmp.$destroy(),this._cmp=void 0;const{database:e}=this._ctx;e.close().catch(n=>console.error(n))}})}static get observedAttributes(){return["locale","data-source","skin-tone-emoji","emoji-version"]}attributeChangedCallback(e,n,o){this._set(e.replace(/-([a-z])/g,(r,s)=>s.toUpperCase()),e==="emoji-version"?parseFloat(o):o)}_set(e,n){this._ctx[e]=n,this._cmp&&this._cmp.$set({[e]:n}),["locale","dataSource"].includes(e)&&this._dbFlush()}_dbCreate(){const{locale:e,dataSource:n,database:o}=this._ctx;(!o||o.locale!==e||o.dataSource!==n)&&this._set("database",new xn({locale:e,dataSource:n}))}_dbFlush(){Promise.resolve().then(()=>this._dbCreate())}}const rn={};for(const t of nn)rn[t]={get(){return t==="database"&&this._dbCreate(),this._ctx[t]},set(e){if(t==="database")throw new Error("database is read-only");this._set(t,e)}};Object.defineProperties(on.prototype,rn);customElements.get("emoji-picker")||customElements.define("emoji-picker",on);export{on as P};
|