@ahzoo/sus 1.7.3 → 2.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/t/index.d.ts +111 -0
- package/dist/t/index.js +19987 -0
- package/dist/t/index.umd.cjs +106 -0
- package/dist/t/style.css +1 -0
- package/dist/t/types/comment.d.ts +96 -0
- package/dist/t/types/list.d.ts +32 -0
- package/dist/t/types/top.d.ts +18 -0
- package/dist/v/index.js +8524 -0
- package/dist/v/index.umd.cjs +259 -0
- package/dist/v/style.css +26 -0
- package/dist/v/types/comment.d.ts +66 -0
- package/dist/v/types/index.d.ts +87 -0
- package/dist/v/types/list.d.ts +27 -0
- package/dist/v/types/top.d.ts +17 -0
- package/package.json +10 -2
- package/error.webp +0 -0
- package/index.js +0 -20401
- package/index.umd.cjs +0 -121
- package/main.ts +0 -5
- package/style.css +0 -1
package/index.umd.cjs
DELETED
|
@@ -1,121 +0,0 @@
|
|
|
1
|
-
(function(Se,f){typeof exports=="object"&&typeof module<"u"?f(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],f):(Se=typeof globalThis<"u"?globalThis:Se||self,f(Se.SuSComment={},Se.vue))})(this,function(Se,f){"use strict";var A_=Object.defineProperty;var T_=(Se,f,fe)=>f in Se?A_(Se,f,{enumerable:!0,configurable:!0,writable:!0,value:fe}):Se[f]=fe;var gt=(Se,f,fe)=>T_(Se,typeof f!="symbol"?f+"":f,fe);function fe(o){this.content=o}fe.prototype={constructor:fe,find:function(o){for(var e=0;e<this.content.length;e+=2)if(this.content[e]===o)return e;return-1},get:function(o){var e=this.find(o);return e==-1?void 0:this.content[e+1]},update:function(o,e,t){var n=t&&t!=o?this.remove(t):this,a=n.find(o),s=n.content.slice();return a==-1?s.push(t||o,e):(s[a+1]=e,t&&(s[a]=t)),new fe(s)},remove:function(o){var e=this.find(o);if(e==-1)return this;var t=this.content.slice();return t.splice(e,2),new fe(t)},addToStart:function(o,e){return new fe([o,e].concat(this.remove(o).content))},addToEnd:function(o,e){var t=this.remove(o).content.slice();return t.push(o,e),new fe(t)},addBefore:function(o,e,t){var n=this.remove(e),a=n.content.slice(),s=n.find(o);return a.splice(s==-1?a.length:s,0,e,t),new fe(a)},forEach:function(o){for(var e=0;e<this.content.length;e+=2)o(this.content[e],this.content[e+1])},prepend:function(o){return o=fe.from(o),o.size?new fe(o.content.concat(this.subtract(o).content)):this},append:function(o){return o=fe.from(o),o.size?new fe(this.subtract(o).content.concat(o.content)):this},subtract:function(o){var e=this;o=fe.from(o);for(var t=0;t<o.content.length;t+=2)e=e.remove(o.content[t]);return e},toObject:function(){var o={};return this.forEach(function(e,t){o[e]=t}),o},get size(){return this.content.length>>1}},fe.from=function(o){if(o instanceof fe)return o;var e=[];if(o)for(var t in o)e.push(t,o[t]);return new fe(e)};function al(o,e,t){for(let n=0;;n++){if(n==o.childCount||n==e.childCount)return o.childCount==e.childCount?null:t;let a=o.child(n),s=e.child(n);if(a==s){t+=a.nodeSize;continue}if(!a.sameMarkup(s))return t;if(a.isText&&a.text!=s.text){for(let i=0;a.text[i]==s.text[i];i++)t++;return t}if(a.content.size||s.content.size){let i=al(a.content,s.content,t+1);if(i!=null)return i}t+=a.nodeSize}}function sl(o,e,t,n){for(let a=o.childCount,s=e.childCount;;){if(a==0||s==0)return a==s?null:{a:t,b:n};let i=o.child(--a),r=e.child(--s),l=i.nodeSize;if(i==r){t-=l,n-=l;continue}if(!i.sameMarkup(r))return{a:t,b:n};if(i.isText&&i.text!=r.text){let p=0,c=Math.min(i.text.length,r.text.length);for(;p<c&&i.text[i.text.length-p-1]==r.text[r.text.length-p-1];)p++,t--,n--;return{a:t,b:n}}if(i.content.size||r.content.size){let p=sl(i.content,r.content,t-1,n-1);if(p)return p}t-=l,n-=l}}class x{constructor(e,t){if(this.content=e,this.size=t||0,t==null)for(let n=0;n<e.length;n++)this.size+=e[n].nodeSize}nodesBetween(e,t,n,a=0,s){for(let i=0,r=0;r<t;i++){let l=this.content[i],p=r+l.nodeSize;if(p>e&&n(l,a+r,s||null,i)!==!1&&l.content.size){let c=r+1;l.nodesBetween(Math.max(0,e-c),Math.min(l.content.size,t-c),n,a+c)}r=p}}descendants(e){this.nodesBetween(0,this.size,e)}textBetween(e,t,n,a){let s="",i=!0;return this.nodesBetween(e,t,(r,l)=>{let p=r.isText?r.text.slice(Math.max(e,l)-l,t-l):r.isLeaf?a?typeof a=="function"?a(r):a:r.type.spec.leafText?r.type.spec.leafText(r):"":"";r.isBlock&&(r.isLeaf&&p||r.isTextblock)&&n&&(i?i=!1:s+=n),s+=p},0),s}append(e){if(!e.size)return this;if(!this.size)return e;let t=this.lastChild,n=e.firstChild,a=this.content.slice(),s=0;for(t.isText&&t.sameMarkup(n)&&(a[a.length-1]=t.withText(t.text+n.text),s=1);s<e.content.length;s++)a.push(e.content[s]);return new x(a,this.size+e.size)}cut(e,t=this.size){if(e==0&&t==this.size)return this;let n=[],a=0;if(t>e)for(let s=0,i=0;i<t;s++){let r=this.content[s],l=i+r.nodeSize;l>e&&((i<e||l>t)&&(r.isText?r=r.cut(Math.max(0,e-i),Math.min(r.text.length,t-i)):r=r.cut(Math.max(0,e-i-1),Math.min(r.content.size,t-i-1))),n.push(r),a+=r.nodeSize),i=l}return new x(n,a)}cutByIndex(e,t){return e==t?x.empty:e==0&&t==this.content.length?this:new x(this.content.slice(e,t))}replaceChild(e,t){let n=this.content[e];if(n==t)return this;let a=this.content.slice(),s=this.size+t.nodeSize-n.nodeSize;return a[e]=t,new x(a,s)}addToStart(e){return new x([e].concat(this.content),this.size+e.nodeSize)}addToEnd(e){return new x(this.content.concat(e),this.size+e.nodeSize)}eq(e){if(this.content.length!=e.content.length)return!1;for(let t=0;t<this.content.length;t++)if(!this.content[t].eq(e.content[t]))return!1;return!0}get firstChild(){return this.content.length?this.content[0]:null}get lastChild(){return this.content.length?this.content[this.content.length-1]:null}get childCount(){return this.content.length}child(e){let t=this.content[e];if(!t)throw new RangeError("Index "+e+" out of range for "+this);return t}maybeChild(e){return this.content[e]||null}forEach(e){for(let t=0,n=0;t<this.content.length;t++){let a=this.content[t];e(a,n,t),n+=a.nodeSize}}findDiffStart(e,t=0){return al(this,e,t)}findDiffEnd(e,t=this.size,n=e.size){return sl(this,e,t,n)}findIndex(e,t=-1){if(e==0)return ta(0,e);if(e==this.size)return ta(this.content.length,e);if(e>this.size||e<0)throw new RangeError(`Position ${e} outside of fragment (${this})`);for(let n=0,a=0;;n++){let s=this.child(n),i=a+s.nodeSize;if(i>=e)return i==e||t>0?ta(n+1,i):ta(n,a);a=i}}toString(){return"<"+this.toStringInner()+">"}toStringInner(){return this.content.join(", ")}toJSON(){return this.content.length?this.content.map(e=>e.toJSON()):null}static fromJSON(e,t){if(!t)return x.empty;if(!Array.isArray(t))throw new RangeError("Invalid input for Fragment.fromJSON");return new x(t.map(e.nodeFromJSON))}static fromArray(e){if(!e.length)return x.empty;let t,n=0;for(let a=0;a<e.length;a++){let s=e[a];n+=s.nodeSize,a&&s.isText&&e[a-1].sameMarkup(s)?(t||(t=e.slice(0,a)),t[t.length-1]=s.withText(t[t.length-1].text+s.text)):t&&t.push(s)}return new x(t||e,n)}static from(e){if(!e)return x.empty;if(e instanceof x)return e;if(Array.isArray(e))return this.fromArray(e);if(e.attrs)return new x([e],e.nodeSize);throw new RangeError("Can not convert "+e+" to a Fragment"+(e.nodesBetween?" (looks like multiple versions of prosemirror-model were loaded)":""))}}x.empty=new x([],0);const Hs={index:0,offset:0};function ta(o,e){return Hs.index=o,Hs.offset=e,Hs}function oa(o,e){if(o===e)return!0;if(!(o&&typeof o=="object")||!(e&&typeof e=="object"))return!1;let t=Array.isArray(o);if(Array.isArray(e)!=t)return!1;if(t){if(o.length!=e.length)return!1;for(let n=0;n<o.length;n++)if(!oa(o[n],e[n]))return!1}else{for(let n in o)if(!(n in e)||!oa(o[n],e[n]))return!1;for(let n in e)if(!(n in o))return!1}return!0}let pe=class ol{constructor(e,t){this.type=e,this.attrs=t}addToSet(e){let t,n=!1;for(let a=0;a<e.length;a++){let s=e[a];if(this.eq(s))return e;if(this.type.excludes(s.type))t||(t=e.slice(0,a));else{if(s.type.excludes(this.type))return e;!n&&s.type.rank>this.type.rank&&(t||(t=e.slice(0,a)),t.push(this),n=!0),t&&t.push(s)}}return t||(t=e.slice()),n||t.push(this),t}removeFromSet(e){for(let t=0;t<e.length;t++)if(this.eq(e[t]))return e.slice(0,t).concat(e.slice(t+1));return e}isInSet(e){for(let t=0;t<e.length;t++)if(this.eq(e[t]))return!0;return!1}eq(e){return this==e||this.type==e.type&&oa(this.attrs,e.attrs)}toJSON(){let e={type:this.type.name};for(let t in this.attrs){e.attrs=this.attrs;break}return e}static fromJSON(e,t){if(!t)throw new RangeError("Invalid input for Mark.fromJSON");let n=e.marks[t.type];if(!n)throw new RangeError(`There is no mark type ${t.type} in this schema`);let a=n.create(t.attrs);return n.checkAttrs(a.attrs),a}static sameSet(e,t){if(e==t)return!0;if(e.length!=t.length)return!1;for(let n=0;n<e.length;n++)if(!e[n].eq(t[n]))return!1;return!0}static setFrom(e){if(!e||Array.isArray(e)&&e.length==0)return ol.none;if(e instanceof ol)return[e];let t=e.slice();return t.sort((n,a)=>n.type.rank-a.type.rank),t}};pe.none=[];class na extends Error{}class N{constructor(e,t,n){this.content=e,this.openStart=t,this.openEnd=n}get size(){return this.content.size-this.openStart-this.openEnd}insertAt(e,t){let n=rl(this.content,e+this.openStart,t);return n&&new N(n,this.openStart,this.openEnd)}removeBetween(e,t){return new N(il(this.content,e+this.openStart,t+this.openStart),this.openStart,this.openEnd)}eq(e){return this.content.eq(e.content)&&this.openStart==e.openStart&&this.openEnd==e.openEnd}toString(){return this.content+"("+this.openStart+","+this.openEnd+")"}toJSON(){if(!this.content.size)return null;let e={content:this.content.toJSON()};return this.openStart>0&&(e.openStart=this.openStart),this.openEnd>0&&(e.openEnd=this.openEnd),e}static fromJSON(e,t){if(!t)return N.empty;let n=t.openStart||0,a=t.openEnd||0;if(typeof n!="number"||typeof a!="number")throw new RangeError("Invalid input for Slice.fromJSON");return new N(x.fromJSON(e,t.content),n,a)}static maxOpen(e,t=!0){let n=0,a=0;for(let s=e.firstChild;s&&!s.isLeaf&&(t||!s.type.spec.isolating);s=s.firstChild)n++;for(let s=e.lastChild;s&&!s.isLeaf&&(t||!s.type.spec.isolating);s=s.lastChild)a++;return new N(e,n,a)}}N.empty=new N(x.empty,0,0);function il(o,e,t){let{index:n,offset:a}=o.findIndex(e),s=o.maybeChild(n),{index:i,offset:r}=o.findIndex(t);if(a==e||s.isText){if(r!=t&&!o.child(i).isText)throw new RangeError("Removing non-flat range");return o.cut(0,e).append(o.cut(t))}if(n!=i)throw new RangeError("Removing non-flat range");return o.replaceChild(n,s.copy(il(s.content,e-a-1,t-a-1)))}function rl(o,e,t,n){let{index:a,offset:s}=o.findIndex(e),i=o.maybeChild(a);if(s==e||i.isText)return o.cut(0,e).append(t).append(o.cut(e));let r=rl(i.content,e-s-1,t);return r&&o.replaceChild(a,i.copy(r))}function mu(o,e,t){if(t.openStart>o.depth)throw new na("Inserted content deeper than insertion position");if(o.depth-t.openStart!=e.depth-t.openEnd)throw new na("Inconsistent open depths");return ll(o,e,t,0)}function ll(o,e,t,n){let a=o.index(n),s=o.node(n);if(a==e.index(n)&&n<o.depth-t.openStart){let i=ll(o,e,t,n+1);return s.copy(s.content.replaceChild(a,i))}else if(t.content.size)if(!t.openStart&&!t.openEnd&&o.depth==n&&e.depth==n){let i=o.parent,r=i.content;return fo(i,r.cut(0,o.parentOffset).append(t.content).append(r.cut(e.parentOffset)))}else{let{start:i,end:r}=du(t,o);return fo(s,cl(o,i,r,e,n))}else return fo(s,aa(o,e,n))}function pl(o,e){if(!e.type.compatibleContent(o.type))throw new na("Cannot join "+e.type.name+" onto "+o.type.name)}function Vs(o,e,t){let n=o.node(t);return pl(n,e.node(t)),n}function go(o,e){let t=e.length-1;t>=0&&o.isText&&o.sameMarkup(e[t])?e[t]=o.withText(e[t].text+o.text):e.push(o)}function fn(o,e,t,n){let a=(e||o).node(t),s=0,i=e?e.index(t):a.childCount;o&&(s=o.index(t),o.depth>t?s++:o.textOffset&&(go(o.nodeAfter,n),s++));for(let r=s;r<i;r++)go(a.child(r),n);e&&e.depth==t&&e.textOffset&&go(e.nodeBefore,n)}function fo(o,e){return o.type.checkContent(e),o.copy(e)}function cl(o,e,t,n,a){let s=o.depth>a&&Vs(o,e,a+1),i=n.depth>a&&Vs(t,n,a+1),r=[];return fn(null,o,a,r),s&&i&&e.index(a)==t.index(a)?(pl(s,i),go(fo(s,cl(o,e,t,n,a+1)),r)):(s&&go(fo(s,aa(o,e,a+1)),r),fn(e,t,a,r),i&&go(fo(i,aa(t,n,a+1)),r)),fn(n,null,a,r),new x(r)}function aa(o,e,t){let n=[];if(fn(null,o,t,n),o.depth>t){let a=Vs(o,e,t+1);go(fo(a,aa(o,e,t+1)),n)}return fn(e,null,t,n),new x(n)}function du(o,e){let t=e.depth-o.openStart,a=e.node(t).copy(o.content);for(let s=t-1;s>=0;s--)a=e.node(s).copy(x.from(a));return{start:a.resolveNoCache(o.openStart+t),end:a.resolveNoCache(a.content.size-o.openEnd-t)}}class hn{constructor(e,t,n){this.pos=e,this.path=t,this.parentOffset=n,this.depth=t.length/3-1}resolveDepth(e){return e==null?this.depth:e<0?this.depth+e:e}get parent(){return this.node(this.depth)}get doc(){return this.node(0)}node(e){return this.path[this.resolveDepth(e)*3]}index(e){return this.path[this.resolveDepth(e)*3+1]}indexAfter(e){return e=this.resolveDepth(e),this.index(e)+(e==this.depth&&!this.textOffset?0:1)}start(e){return e=this.resolveDepth(e),e==0?0:this.path[e*3-1]+1}end(e){return e=this.resolveDepth(e),this.start(e)+this.node(e).content.size}before(e){if(e=this.resolveDepth(e),!e)throw new RangeError("There is no position before the top-level node");return e==this.depth+1?this.pos:this.path[e*3-1]}after(e){if(e=this.resolveDepth(e),!e)throw new RangeError("There is no position after the top-level node");return e==this.depth+1?this.pos:this.path[e*3-1]+this.path[e*3].nodeSize}get textOffset(){return this.pos-this.path[this.path.length-1]}get nodeAfter(){let e=this.parent,t=this.index(this.depth);if(t==e.childCount)return null;let n=this.pos-this.path[this.path.length-1],a=e.child(t);return n?e.child(t).cut(n):a}get nodeBefore(){let e=this.index(this.depth),t=this.pos-this.path[this.path.length-1];return t?this.parent.child(e).cut(0,t):e==0?null:this.parent.child(e-1)}posAtIndex(e,t){t=this.resolveDepth(t);let n=this.path[t*3],a=t==0?0:this.path[t*3-1]+1;for(let s=0;s<e;s++)a+=n.child(s).nodeSize;return a}marks(){let e=this.parent,t=this.index();if(e.content.size==0)return pe.none;if(this.textOffset)return e.child(t).marks;let n=e.maybeChild(t-1),a=e.maybeChild(t);if(!n){let r=n;n=a,a=r}let s=n.marks;for(var i=0;i<s.length;i++)s[i].type.spec.inclusive===!1&&(!a||!s[i].isInSet(a.marks))&&(s=s[i--].removeFromSet(s));return s}marksAcross(e){let t=this.parent.maybeChild(this.index());if(!t||!t.isInline)return null;let n=t.marks,a=e.parent.maybeChild(e.index());for(var s=0;s<n.length;s++)n[s].type.spec.inclusive===!1&&(!a||!n[s].isInSet(a.marks))&&(n=n[s--].removeFromSet(n));return n}sharedDepth(e){for(let t=this.depth;t>0;t--)if(this.start(t)<=e&&this.end(t)>=e)return t;return 0}blockRange(e=this,t){if(e.pos<this.pos)return e.blockRange(this);for(let n=this.depth-(this.parent.inlineContent||this.pos==e.pos?1:0);n>=0;n--)if(e.pos<=this.end(n)&&(!t||t(this.node(n))))return new sa(this,e,n);return null}sameParent(e){return this.pos-this.parentOffset==e.pos-e.parentOffset}max(e){return e.pos>this.pos?e:this}min(e){return e.pos<this.pos?e:this}toString(){let e="";for(let t=1;t<=this.depth;t++)e+=(e?"/":"")+this.node(t).type.name+"_"+this.index(t-1);return e+":"+this.parentOffset}static resolve(e,t){if(!(t>=0&&t<=e.content.size))throw new RangeError("Position "+t+" out of range");let n=[],a=0,s=t;for(let i=e;;){let{index:r,offset:l}=i.content.findIndex(s),p=s-l;if(n.push(i,r,a+l),!p||(i=i.child(r),i.isText))break;s=p-1,a+=l+1}return new hn(t,n,s)}static resolveCached(e,t){let n=ml.get(e);if(n)for(let s=0;s<n.elts.length;s++){let i=n.elts[s];if(i.pos==t)return i}else ml.set(e,n=new uu);let a=n.elts[n.i]=hn.resolve(e,t);return n.i=(n.i+1)%gu,a}}class uu{constructor(){this.elts=[],this.i=0}}const gu=12,ml=new WeakMap;class sa{constructor(e,t,n){this.$from=e,this.$to=t,this.depth=n}get start(){return this.$from.before(this.depth+1)}get end(){return this.$to.after(this.depth+1)}get parent(){return this.$from.node(this.depth)}get startIndex(){return this.$from.index(this.depth)}get endIndex(){return this.$to.indexAfter(this.depth)}}const fu=Object.create(null);let qt=class nl{constructor(e,t,n,a=pe.none){this.type=e,this.attrs=t,this.marks=a,this.content=n||x.empty}get nodeSize(){return this.isLeaf?1:2+this.content.size}get childCount(){return this.content.childCount}child(e){return this.content.child(e)}maybeChild(e){return this.content.maybeChild(e)}forEach(e){this.content.forEach(e)}nodesBetween(e,t,n,a=0){this.content.nodesBetween(e,t,n,a,this)}descendants(e){this.nodesBetween(0,this.content.size,e)}get textContent(){return this.isLeaf&&this.type.spec.leafText?this.type.spec.leafText(this):this.textBetween(0,this.content.size,"")}textBetween(e,t,n,a){return this.content.textBetween(e,t,n,a)}get firstChild(){return this.content.firstChild}get lastChild(){return this.content.lastChild}eq(e){return this==e||this.sameMarkup(e)&&this.content.eq(e.content)}sameMarkup(e){return this.hasMarkup(e.type,e.attrs,e.marks)}hasMarkup(e,t,n){return this.type==e&&oa(this.attrs,t||e.defaultAttrs||fu)&&pe.sameSet(this.marks,n||pe.none)}copy(e=null){return e==this.content?this:new nl(this.type,this.attrs,e,this.marks)}mark(e){return e==this.marks?this:new nl(this.type,this.attrs,this.content,e)}cut(e,t=this.content.size){return e==0&&t==this.content.size?this:this.copy(this.content.cut(e,t))}slice(e,t=this.content.size,n=!1){if(e==t)return N.empty;let a=this.resolve(e),s=this.resolve(t),i=n?0:a.sharedDepth(t),r=a.start(i),p=a.node(i).content.cut(a.pos-r,s.pos-r);return new N(p,a.depth-i,s.depth-i)}replace(e,t,n){return mu(this.resolve(e),this.resolve(t),n)}nodeAt(e){for(let t=this;;){let{index:n,offset:a}=t.content.findIndex(e);if(t=t.maybeChild(n),!t)return null;if(a==e||t.isText)return t;e-=a+1}}childAfter(e){let{index:t,offset:n}=this.content.findIndex(e);return{node:this.content.maybeChild(t),index:t,offset:n}}childBefore(e){if(e==0)return{node:null,index:0,offset:0};let{index:t,offset:n}=this.content.findIndex(e);if(n<e)return{node:this.content.child(t),index:t,offset:n};let a=this.content.child(t-1);return{node:a,index:t-1,offset:n-a.nodeSize}}resolve(e){return hn.resolveCached(this,e)}resolveNoCache(e){return hn.resolve(this,e)}rangeHasMark(e,t,n){let a=!1;return t>e&&this.nodesBetween(e,t,s=>(n.isInSet(s.marks)&&(a=!0),!a)),a}get isBlock(){return this.type.isBlock}get isTextblock(){return this.type.isTextblock}get inlineContent(){return this.type.inlineContent}get isInline(){return this.type.isInline}get isText(){return this.type.isText}get isLeaf(){return this.type.isLeaf}get isAtom(){return this.type.isAtom}toString(){if(this.type.spec.toDebugString)return this.type.spec.toDebugString(this);let e=this.type.name;return this.content.size&&(e+="("+this.content.toStringInner()+")"),dl(this.marks,e)}contentMatchAt(e){let t=this.type.contentMatch.matchFragment(this.content,0,e);if(!t)throw new Error("Called contentMatchAt on a node with invalid content");return t}canReplace(e,t,n=x.empty,a=0,s=n.childCount){let i=this.contentMatchAt(e).matchFragment(n,a,s),r=i&&i.matchFragment(this.content,t);if(!r||!r.validEnd)return!1;for(let l=a;l<s;l++)if(!this.type.allowsMarks(n.child(l).marks))return!1;return!0}canReplaceWith(e,t,n,a){if(a&&!this.type.allowsMarks(a))return!1;let s=this.contentMatchAt(e).matchType(n),i=s&&s.matchFragment(this.content,t);return i?i.validEnd:!1}canAppend(e){return e.content.size?this.canReplace(this.childCount,this.childCount,e.content):this.type.compatibleContent(e.type)}check(){this.type.checkContent(this.content),this.type.checkAttrs(this.attrs);let e=pe.none;for(let t=0;t<this.marks.length;t++){let n=this.marks[t];n.type.checkAttrs(n.attrs),e=n.addToSet(e)}if(!pe.sameSet(e,this.marks))throw new RangeError(`Invalid collection of marks for node ${this.type.name}: ${this.marks.map(t=>t.type.name)}`);this.content.forEach(t=>t.check())}toJSON(){let e={type:this.type.name};for(let t in this.attrs){e.attrs=this.attrs;break}return this.content.size&&(e.content=this.content.toJSON()),this.marks.length&&(e.marks=this.marks.map(t=>t.toJSON())),e}static fromJSON(e,t){if(!t)throw new RangeError("Invalid input for Node.fromJSON");let n;if(t.marks){if(!Array.isArray(t.marks))throw new RangeError("Invalid mark data for Node.fromJSON");n=t.marks.map(e.markFromJSON)}if(t.type=="text"){if(typeof t.text!="string")throw new RangeError("Invalid text node in JSON");return e.text(t.text,n)}let a=x.fromJSON(e,t.content),s=e.nodeType(t.type).create(t.attrs,a,n);return s.type.checkAttrs(s.attrs),s}};qt.prototype.text=void 0;class ia extends qt{constructor(e,t,n,a){if(super(e,t,null,a),!n)throw new RangeError("Empty text nodes are not allowed");this.text=n}toString(){return this.type.spec.toDebugString?this.type.spec.toDebugString(this):dl(this.marks,JSON.stringify(this.text))}get textContent(){return this.text}textBetween(e,t){return this.text.slice(e,t)}get nodeSize(){return this.text.length}mark(e){return e==this.marks?this:new ia(this.type,this.attrs,this.text,e)}withText(e){return e==this.text?this:new ia(this.type,this.attrs,e,this.marks)}cut(e=0,t=this.text.length){return e==0&&t==this.text.length?this:this.withText(this.text.slice(e,t))}eq(e){return this.sameMarkup(e)&&this.text==e.text}toJSON(){let e=super.toJSON();return e.text=this.text,e}}function dl(o,e){for(let t=o.length-1;t>=0;t--)e=o[t].type.name+"("+e+")";return e}class ho{constructor(e){this.validEnd=e,this.next=[],this.wrapCache=[]}static parse(e,t){let n=new hu(e,t);if(n.next==null)return ho.empty;let a=ul(n);n.next&&n.err("Unexpected trailing text");let s=Du(_u(a));return wu(s,n),s}matchType(e){for(let t=0;t<this.next.length;t++)if(this.next[t].type==e)return this.next[t].next;return null}matchFragment(e,t=0,n=e.childCount){let a=this;for(let s=t;a&&s<n;s++)a=a.matchType(e.child(s).type);return a}get inlineContent(){return this.next.length!=0&&this.next[0].type.isInline}get defaultType(){for(let e=0;e<this.next.length;e++){let{type:t}=this.next[e];if(!(t.isText||t.hasRequiredAttrs()))return t}return null}compatible(e){for(let t=0;t<this.next.length;t++)for(let n=0;n<e.next.length;n++)if(this.next[t].type==e.next[n].type)return!0;return!1}fillBefore(e,t=!1,n=0){let a=[this];function s(i,r){let l=i.matchFragment(e,n);if(l&&(!t||l.validEnd))return x.from(r.map(p=>p.createAndFill()));for(let p=0;p<i.next.length;p++){let{type:c,next:m}=i.next[p];if(!(c.isText||c.hasRequiredAttrs())&&a.indexOf(m)==-1){a.push(m);let d=s(m,r.concat(c));if(d)return d}}return null}return s(this,[])}findWrapping(e){for(let n=0;n<this.wrapCache.length;n+=2)if(this.wrapCache[n]==e)return this.wrapCache[n+1];let t=this.computeWrapping(e);return this.wrapCache.push(e,t),t}computeWrapping(e){let t=Object.create(null),n=[{match:this,type:null,via:null}];for(;n.length;){let a=n.shift(),s=a.match;if(s.matchType(e)){let i=[];for(let r=a;r.type;r=r.via)i.push(r.type);return i.reverse()}for(let i=0;i<s.next.length;i++){let{type:r,next:l}=s.next[i];!r.isLeaf&&!r.hasRequiredAttrs()&&!(r.name in t)&&(!a.type||l.validEnd)&&(n.push({match:r.contentMatch,type:r,via:a}),t[r.name]=!0)}}return null}get edgeCount(){return this.next.length}edge(e){if(e>=this.next.length)throw new RangeError(`There's no ${e}th edge in this content match`);return this.next[e]}toString(){let e=[];function t(n){e.push(n);for(let a=0;a<n.next.length;a++)e.indexOf(n.next[a].next)==-1&&t(n.next[a].next)}return t(this),e.map((n,a)=>{let s=a+(n.validEnd?"*":" ")+" ";for(let i=0;i<n.next.length;i++)s+=(i?", ":"")+n.next[i].type.name+"->"+e.indexOf(n.next[i].next);return s}).join(`
|
|
2
|
-
`)}}ho.empty=new ho(!0);class hu{constructor(e,t){this.string=e,this.nodeTypes=t,this.inline=null,this.pos=0,this.tokens=e.split(/\s*(?=\b|\W|$)/),this.tokens[this.tokens.length-1]==""&&this.tokens.pop(),this.tokens[0]==""&&this.tokens.shift()}get next(){return this.tokens[this.pos]}eat(e){return this.next==e&&(this.pos++||!0)}err(e){throw new SyntaxError(e+" (in content expression '"+this.string+"')")}}function ul(o){let e=[];do e.push(bu(o));while(o.eat("|"));return e.length==1?e[0]:{type:"choice",exprs:e}}function bu(o){let e=[];do e.push(ju(o));while(o.next&&o.next!=")"&&o.next!="|");return e.length==1?e[0]:{type:"seq",exprs:e}}function ju(o){let e=yu(o);for(;;)if(o.eat("+"))e={type:"plus",expr:e};else if(o.eat("*"))e={type:"star",expr:e};else if(o.eat("?"))e={type:"opt",expr:e};else if(o.eat("{"))e=vu(o,e);else break;return e}function gl(o){/\D/.test(o.next)&&o.err("Expected number, got '"+o.next+"'");let e=Number(o.next);return o.pos++,e}function vu(o,e){let t=gl(o),n=t;return o.eat(",")&&(o.next!="}"?n=gl(o):n=-1),o.eat("}")||o.err("Unclosed braced range"),{type:"range",min:t,max:n,expr:e}}function ku(o,e){let t=o.nodeTypes,n=t[e];if(n)return[n];let a=[];for(let s in t){let i=t[s];i.groups.indexOf(e)>-1&&a.push(i)}return a.length==0&&o.err("No node type or group '"+e+"' found"),a}function yu(o){if(o.eat("(")){let e=ul(o);return o.eat(")")||o.err("Missing closing paren"),e}else if(/\W/.test(o.next))o.err("Unexpected token '"+o.next+"'");else{let e=ku(o,o.next).map(t=>(o.inline==null?o.inline=t.isInline:o.inline!=t.isInline&&o.err("Mixing inline and block content"),{type:"name",value:t}));return o.pos++,e.length==1?e[0]:{type:"choice",exprs:e}}}function _u(o){let e=[[]];return a(s(o,0),t()),e;function t(){return e.push([])-1}function n(i,r,l){let p={term:l,to:r};return e[i].push(p),p}function a(i,r){i.forEach(l=>l.to=r)}function s(i,r){if(i.type=="choice")return i.exprs.reduce((l,p)=>l.concat(s(p,r)),[]);if(i.type=="seq")for(let l=0;;l++){let p=s(i.exprs[l],r);if(l==i.exprs.length-1)return p;a(p,r=t())}else if(i.type=="star"){let l=t();return n(r,l),a(s(i.expr,l),l),[n(l)]}else if(i.type=="plus"){let l=t();return a(s(i.expr,r),l),a(s(i.expr,l),l),[n(l)]}else{if(i.type=="opt")return[n(r)].concat(s(i.expr,r));if(i.type=="range"){let l=r;for(let p=0;p<i.min;p++){let c=t();a(s(i.expr,l),c),l=c}if(i.max==-1)a(s(i.expr,l),l);else for(let p=i.min;p<i.max;p++){let c=t();n(l,c),a(s(i.expr,l),c),l=c}return[n(l)]}else{if(i.type=="name")return[n(r,void 0,i.value)];throw new Error("Unknown expr type")}}}}function fl(o,e){return e-o}function hl(o,e){let t=[];return n(e),t.sort(fl);function n(a){let s=o[a];if(s.length==1&&!s[0].term)return n(s[0].to);t.push(a);for(let i=0;i<s.length;i++){let{term:r,to:l}=s[i];!r&&t.indexOf(l)==-1&&n(l)}}}function Du(o){let e=Object.create(null);return t(hl(o,0));function t(n){let a=[];n.forEach(i=>{o[i].forEach(({term:r,to:l})=>{if(!r)return;let p;for(let c=0;c<a.length;c++)a[c][0]==r&&(p=a[c][1]);hl(o,l).forEach(c=>{p||a.push([r,p=[]]),p.indexOf(c)==-1&&p.push(c)})})});let s=e[n.join(",")]=new ho(n.indexOf(o.length-1)>-1);for(let i=0;i<a.length;i++){let r=a[i][1].sort(fl);s.next.push({type:a[i][0],next:e[r.join(",")]||t(r)})}return s}}function wu(o,e){for(let t=0,n=[o];t<n.length;t++){let a=n[t],s=!a.validEnd,i=[];for(let r=0;r<a.next.length;r++){let{type:l,next:p}=a.next[r];i.push(l.name),s&&!(l.isText||l.hasRequiredAttrs())&&(s=!1),n.indexOf(p)==-1&&n.push(p)}s&&e.err("Only non-generatable nodes ("+i.join(", ")+") in a required position (see https://prosemirror.net/docs/guide/#generatable)")}}function bl(o){let e=Object.create(null);for(let t in o){let n=o[t];if(!n.hasDefault)return null;e[t]=n.default}return e}function jl(o,e){let t=Object.create(null);for(let n in o){let a=e&&e[n];if(a===void 0){let s=o[n];if(s.hasDefault)a=s.default;else throw new RangeError("No value supplied for attribute "+n)}t[n]=a}return t}function vl(o,e,t,n){for(let a in e)if(!(a in o))throw new RangeError(`Unsupported attribute ${a} for ${t} of type ${a}`);for(let a in o){let s=o[a];s.validate&&s.validate(e[a])}}function kl(o,e){let t=Object.create(null);if(e)for(let n in e)t[n]=new Eu(o,n,e[n]);return t}let yl=class pu{constructor(e,t,n){this.name=e,this.schema=t,this.spec=n,this.markSet=null,this.groups=n.group?n.group.split(" "):[],this.attrs=kl(e,n.attrs),this.defaultAttrs=bl(this.attrs),this.contentMatch=null,this.inlineContent=null,this.isBlock=!(n.inline||e=="text"),this.isText=e=="text"}get isInline(){return!this.isBlock}get isTextblock(){return this.isBlock&&this.inlineContent}get isLeaf(){return this.contentMatch==ho.empty}get isAtom(){return this.isLeaf||!!this.spec.atom}get whitespace(){return this.spec.whitespace||(this.spec.code?"pre":"normal")}hasRequiredAttrs(){for(let e in this.attrs)if(this.attrs[e].isRequired)return!0;return!1}compatibleContent(e){return this==e||this.contentMatch.compatible(e.contentMatch)}computeAttrs(e){return!e&&this.defaultAttrs?this.defaultAttrs:jl(this.attrs,e)}create(e=null,t,n){if(this.isText)throw new Error("NodeType.create can't construct text nodes");return new qt(this,this.computeAttrs(e),x.from(t),pe.setFrom(n))}createChecked(e=null,t,n){return t=x.from(t),this.checkContent(t),new qt(this,this.computeAttrs(e),t,pe.setFrom(n))}createAndFill(e=null,t,n){if(e=this.computeAttrs(e),t=x.from(t),t.size){let i=this.contentMatch.fillBefore(t);if(!i)return null;t=i.append(t)}let a=this.contentMatch.matchFragment(t),s=a&&a.fillBefore(x.empty,!0);return s?new qt(this,e,t.append(s),pe.setFrom(n)):null}validContent(e){let t=this.contentMatch.matchFragment(e);if(!t||!t.validEnd)return!1;for(let n=0;n<e.childCount;n++)if(!this.allowsMarks(e.child(n).marks))return!1;return!0}checkContent(e){if(!this.validContent(e))throw new RangeError(`Invalid content for node ${this.name}: ${e.toString().slice(0,50)}`)}checkAttrs(e){vl(this.attrs,e,"node",this.name)}allowsMarkType(e){return this.markSet==null||this.markSet.indexOf(e)>-1}allowsMarks(e){if(this.markSet==null)return!0;for(let t=0;t<e.length;t++)if(!this.allowsMarkType(e[t].type))return!1;return!0}allowedMarks(e){if(this.markSet==null)return e;let t;for(let n=0;n<e.length;n++)this.allowsMarkType(e[n].type)?t&&t.push(e[n]):t||(t=e.slice(0,n));return t?t.length?t:pe.none:e}static compile(e,t){let n=Object.create(null);e.forEach((s,i)=>n[s]=new pu(s,t,i));let a=t.spec.topNode||"doc";if(!n[a])throw new RangeError("Schema is missing its top node type ('"+a+"')");if(!n.text)throw new RangeError("Every schema needs a 'text' type");for(let s in n.text.attrs)throw new RangeError("The text node type should not have attributes");return n}};function Iu(o,e,t){let n=t.split("|");return a=>{let s=a===null?"null":typeof a;if(n.indexOf(s)<0)throw new RangeError(`Expected value of type ${n} for attribute ${e} on type ${o}, got ${s}`)}}class Eu{constructor(e,t,n){this.hasDefault=Object.prototype.hasOwnProperty.call(n,"default"),this.default=n.default,this.validate=typeof n.validate=="string"?Iu(e,t,n.validate):n.validate}get isRequired(){return!this.hasDefault}}class ra{constructor(e,t,n,a){this.name=e,this.rank=t,this.schema=n,this.spec=a,this.attrs=kl(e,a.attrs),this.excluded=null;let s=bl(this.attrs);this.instance=s?new pe(this,s):null}create(e=null){return!e&&this.instance?this.instance:new pe(this,jl(this.attrs,e))}static compile(e,t){let n=Object.create(null),a=0;return e.forEach((s,i)=>n[s]=new ra(s,a++,t,i)),n}removeFromSet(e){for(var t=0;t<e.length;t++)e[t].type==this&&(e=e.slice(0,t).concat(e.slice(t+1)),t--);return e}isInSet(e){for(let t=0;t<e.length;t++)if(e[t].type==this)return e[t]}checkAttrs(e){vl(this.attrs,e,"mark",this.name)}excludes(e){return this.excluded.indexOf(e)>-1}}class _l{constructor(e){this.linebreakReplacement=null,this.cached=Object.create(null);let t=this.spec={};for(let a in e)t[a]=e[a];t.nodes=fe.from(e.nodes),t.marks=fe.from(e.marks||{}),this.nodes=yl.compile(this.spec.nodes,this),this.marks=ra.compile(this.spec.marks,this);let n=Object.create(null);for(let a in this.nodes){if(a in this.marks)throw new RangeError(a+" can not be both a node and a mark");let s=this.nodes[a],i=s.spec.content||"",r=s.spec.marks;if(s.contentMatch=n[i]||(n[i]=ho.parse(i,this.nodes)),s.inlineContent=s.contentMatch.inlineContent,s.spec.linebreakReplacement){if(this.linebreakReplacement)throw new RangeError("Multiple linebreak nodes defined");if(!s.isInline||!s.isLeaf)throw new RangeError("Linebreak replacement nodes must be inline leaf nodes");this.linebreakReplacement=s}s.markSet=r=="_"?null:r?Dl(this,r.split(" ")):r==""||!s.inlineContent?[]:null}for(let a in this.marks){let s=this.marks[a],i=s.spec.excludes;s.excluded=i==null?[s]:i==""?[]:Dl(this,i.split(" "))}this.nodeFromJSON=this.nodeFromJSON.bind(this),this.markFromJSON=this.markFromJSON.bind(this),this.topNodeType=this.nodes[this.spec.topNode||"doc"],this.cached.wrappings=Object.create(null)}node(e,t=null,n,a){if(typeof e=="string")e=this.nodeType(e);else if(e instanceof yl){if(e.schema!=this)throw new RangeError("Node type from different schema used ("+e.name+")")}else throw new RangeError("Invalid node type: "+e);return e.createChecked(t,n,a)}text(e,t){let n=this.nodes.text;return new ia(n,n.defaultAttrs,e,pe.setFrom(t))}mark(e,t){return typeof e=="string"&&(e=this.marks[e]),e.create(t)}nodeFromJSON(e){return qt.fromJSON(this,e)}markFromJSON(e){return pe.fromJSON(this,e)}nodeType(e){let t=this.nodes[e];if(!t)throw new RangeError("Unknown node type: "+e);return t}}function Dl(o,e){let t=[];for(let n=0;n<e.length;n++){let a=e[n],s=o.marks[a],i=s;if(s)t.push(s);else for(let r in o.marks){let l=o.marks[r];(a=="_"||l.spec.group&&l.spec.group.split(" ").indexOf(a)>-1)&&t.push(i=l)}if(!i)throw new SyntaxError("Unknown mark type: '"+e[n]+"'")}return t}function Cu(o){return o.tag!=null}function xu(o){return o.style!=null}class Wt{constructor(e,t){this.schema=e,this.rules=t,this.tags=[],this.styles=[];let n=this.matchedStyles=[];t.forEach(a=>{if(Cu(a))this.tags.push(a);else if(xu(a)){let s=/[^=]*/.exec(a.style)[0];n.indexOf(s)<0&&n.push(s),this.styles.push(a)}}),this.normalizeLists=!this.tags.some(a=>{if(!/^(ul|ol)\b/.test(a.tag)||!a.node)return!1;let s=e.nodes[a.node];return s.contentMatch.matchType(s)})}parse(e,t={}){let n=new Cl(this,t,!1);return n.addAll(e,pe.none,t.from,t.to),n.finish()}parseSlice(e,t={}){let n=new Cl(this,t,!0);return n.addAll(e,pe.none,t.from,t.to),N.maxOpen(n.finish())}matchTag(e,t,n){for(let a=n?this.tags.indexOf(n)+1:0;a<this.tags.length;a++){let s=this.tags[a];if(Fu(e,s.tag)&&(s.namespace===void 0||e.namespaceURI==s.namespace)&&(!s.context||t.matchesContext(s.context))){if(s.getAttrs){let i=s.getAttrs(e);if(i===!1)continue;s.attrs=i||void 0}return s}}}matchStyle(e,t,n,a){for(let s=a?this.styles.indexOf(a)+1:0;s<this.styles.length;s++){let i=this.styles[s],r=i.style;if(!(r.indexOf(e)!=0||i.context&&!n.matchesContext(i.context)||r.length>e.length&&(r.charCodeAt(e.length)!=61||r.slice(e.length+1)!=t))){if(i.getAttrs){let l=i.getAttrs(t);if(l===!1)continue;i.attrs=l||void 0}return i}}}static schemaRules(e){let t=[];function n(a){let s=a.priority==null?50:a.priority,i=0;for(;i<t.length;i++){let r=t[i];if((r.priority==null?50:r.priority)<s)break}t.splice(i,0,a)}for(let a in e.marks){let s=e.marks[a].spec.parseDOM;s&&s.forEach(i=>{n(i=xl(i)),i.mark||i.ignore||i.clearMark||(i.mark=a)})}for(let a in e.nodes){let s=e.nodes[a].spec.parseDOM;s&&s.forEach(i=>{n(i=xl(i)),i.node||i.ignore||i.mark||(i.node=a)})}return t}static fromSchema(e){return e.cached.domParser||(e.cached.domParser=new Wt(e,Wt.schemaRules(e)))}}const wl={address:!0,article:!0,aside:!0,blockquote:!0,canvas:!0,dd:!0,div:!0,dl:!0,fieldset:!0,figcaption:!0,figure:!0,footer:!0,form:!0,h1:!0,h2:!0,h3:!0,h4:!0,h5:!0,h6:!0,header:!0,hgroup:!0,hr:!0,li:!0,noscript:!0,ol:!0,output:!0,p:!0,pre:!0,section:!0,table:!0,tfoot:!0,ul:!0},Su={head:!0,noscript:!0,object:!0,script:!0,style:!0,title:!0},Il={ol:!0,ul:!0},la=1,pa=2,ca=4;function El(o,e,t){return e!=null?(e?la:0)|(e==="full"?pa:0):o&&o.whitespace=="pre"?la|pa:t&-5}class ma{constructor(e,t,n,a,s,i){this.type=e,this.attrs=t,this.marks=n,this.solid=a,this.options=i,this.content=[],this.activeMarks=pe.none,this.match=s||(i&ca?null:e.contentMatch)}findWrapping(e){if(!this.match){if(!this.type)return[];let t=this.type.contentMatch.fillBefore(x.from(e));if(t)this.match=this.type.contentMatch.matchFragment(t);else{let n=this.type.contentMatch,a;return(a=n.findWrapping(e.type))?(this.match=n,a):null}}return this.match.findWrapping(e.type)}finish(e){if(!(this.options&la)){let n=this.content[this.content.length-1],a;if(n&&n.isText&&(a=/[ \t\r\n\u000c]+$/.exec(n.text))){let s=n;n.text.length==a[0].length?this.content.pop():this.content[this.content.length-1]=s.withText(s.text.slice(0,s.text.length-a[0].length))}}let t=x.from(this.content);return!e&&this.match&&(t=t.append(this.match.fillBefore(x.empty,!0))),this.type?this.type.create(this.attrs,t,this.marks):t}inlineContext(e){return this.type?this.type.inlineContent:this.content.length?this.content[0].isInline:e.parentNode&&!wl.hasOwnProperty(e.parentNode.nodeName.toLowerCase())}}class Cl{constructor(e,t,n){this.parser=e,this.options=t,this.isOpen=n,this.open=0;let a=t.topNode,s,i=El(null,t.preserveWhitespace,0)|(n?ca:0);a?s=new ma(a.type,a.attrs,pe.none,!0,t.topMatch||a.type.contentMatch,i):n?s=new ma(null,null,pe.none,!0,null,i):s=new ma(e.schema.topNodeType,null,pe.none,!0,null,i),this.nodes=[s],this.find=t.findPositions,this.needsBlock=!1}get top(){return this.nodes[this.open]}addDOM(e,t){e.nodeType==3?this.addTextNode(e,t):e.nodeType==1&&this.addElement(e,t)}addTextNode(e,t){let n=e.nodeValue,a=this.top;if(a.options&pa||a.inlineContext(e)||/[^ \t\r\n\u000c]/.test(n)){if(a.options&la)a.options&pa?n=n.replace(/\r\n?/g,`
|
|
3
|
-
`):n=n.replace(/\r?\n|\r/g," ");else if(n=n.replace(/[ \t\r\n\u000c]+/g," "),/^[ \t\r\n\u000c]/.test(n)&&this.open==this.nodes.length-1){let s=a.content[a.content.length-1],i=e.previousSibling;(!s||i&&i.nodeName=="BR"||s.isText&&/[ \t\r\n\u000c]$/.test(s.text))&&(n=n.slice(1))}n&&this.insertNode(this.parser.schema.text(n),t),this.findInText(e)}else this.findInside(e)}addElement(e,t,n){let a=e.nodeName.toLowerCase(),s;Il.hasOwnProperty(a)&&this.parser.normalizeLists&&Mu(e);let i=this.options.ruleFromNode&&this.options.ruleFromNode(e)||(s=this.parser.matchTag(e,this,n));if(i?i.ignore:Su.hasOwnProperty(a))this.findInside(e),this.ignoreFallback(e,t);else if(!i||i.skip||i.closeParent){i&&i.closeParent?this.open=Math.max(0,this.open-1):i&&i.skip.nodeType&&(e=i.skip);let r,l=this.top,p=this.needsBlock;if(wl.hasOwnProperty(a))l.content.length&&l.content[0].isInline&&this.open&&(this.open--,l=this.top),r=!0,l.type||(this.needsBlock=!0);else if(!e.firstChild){this.leafFallback(e,t);return}let c=i&&i.skip?t:this.readStyles(e,t);c&&this.addAll(e,c),r&&this.sync(l),this.needsBlock=p}else{let r=this.readStyles(e,t);r&&this.addElementByRule(e,i,r,i.consuming===!1?s:void 0)}}leafFallback(e,t){e.nodeName=="BR"&&this.top.type&&this.top.type.inlineContent&&this.addTextNode(e.ownerDocument.createTextNode(`
|
|
4
|
-
`),t)}ignoreFallback(e,t){e.nodeName=="BR"&&(!this.top.type||!this.top.type.inlineContent)&&this.findPlace(this.parser.schema.text("-"),t)}readStyles(e,t){let n=e.style;if(n&&n.length)for(let a=0;a<this.parser.matchedStyles.length;a++){let s=this.parser.matchedStyles[a],i=n.getPropertyValue(s);if(i)for(let r=void 0;;){let l=this.parser.matchStyle(s,i,this,r);if(!l)break;if(l.ignore)return null;if(l.clearMark?t=t.filter(p=>!l.clearMark(p)):t=t.concat(this.parser.schema.marks[l.mark].create(l.attrs)),l.consuming===!1)r=l;else break}}return t}addElementByRule(e,t,n,a){let s,i;if(t.node)if(i=this.parser.schema.nodes[t.node],i.isLeaf)this.insertNode(i.create(t.attrs),n)||this.leafFallback(e,n);else{let l=this.enter(i,t.attrs||null,n,t.preserveWhitespace);l&&(s=!0,n=l)}else{let l=this.parser.schema.marks[t.mark];n=n.concat(l.create(t.attrs))}let r=this.top;if(i&&i.isLeaf)this.findInside(e);else if(a)this.addElement(e,n,a);else if(t.getContent)this.findInside(e),t.getContent(e,this.parser.schema).forEach(l=>this.insertNode(l,n));else{let l=e;typeof t.contentElement=="string"?l=e.querySelector(t.contentElement):typeof t.contentElement=="function"?l=t.contentElement(e):t.contentElement&&(l=t.contentElement),this.findAround(e,l,!0),this.addAll(l,n)}s&&this.sync(r)&&this.open--}addAll(e,t,n,a){let s=n||0;for(let i=n?e.childNodes[n]:e.firstChild,r=a==null?null:e.childNodes[a];i!=r;i=i.nextSibling,++s)this.findAtPoint(e,s),this.addDOM(i,t);this.findAtPoint(e,s)}findPlace(e,t){let n,a;for(let s=this.open;s>=0;s--){let i=this.nodes[s],r=i.findWrapping(e);if(r&&(!n||n.length>r.length)&&(n=r,a=i,!r.length)||i.solid)break}if(!n)return null;this.sync(a);for(let s=0;s<n.length;s++)t=this.enterInner(n[s],null,t,!1);return t}insertNode(e,t){if(e.isInline&&this.needsBlock&&!this.top.type){let a=this.textblockFromContext();a&&(t=this.enterInner(a,null,t))}let n=this.findPlace(e,t);if(n){this.closeExtra();let a=this.top;a.match&&(a.match=a.match.matchType(e.type));let s=pe.none;for(let i of n.concat(e.marks))(a.type?a.type.allowsMarkType(i.type):Sl(i.type,e.type))&&(s=i.addToSet(s));return a.content.push(e.mark(s)),!0}return!1}enter(e,t,n,a){let s=this.findPlace(e.create(t),n);return s&&(s=this.enterInner(e,t,n,!0,a)),s}enterInner(e,t,n,a=!1,s){this.closeExtra();let i=this.top;i.match=i.match&&i.match.matchType(e);let r=El(e,s,i.options);i.options&ca&&i.content.length==0&&(r|=ca);let l=pe.none;return n=n.filter(p=>(i.type?i.type.allowsMarkType(p.type):Sl(p.type,e))?(l=p.addToSet(l),!1):!0),this.nodes.push(new ma(e,t,l,a,null,r)),this.open++,n}closeExtra(e=!1){let t=this.nodes.length-1;if(t>this.open){for(;t>this.open;t--)this.nodes[t-1].content.push(this.nodes[t].finish(e));this.nodes.length=this.open+1}}finish(){return this.open=0,this.closeExtra(this.isOpen),this.nodes[0].finish(this.isOpen||this.options.topOpen)}sync(e){for(let t=this.open;t>=0;t--)if(this.nodes[t]==e)return this.open=t,!0;return!1}get currentPos(){this.closeExtra();let e=0;for(let t=this.open;t>=0;t--){let n=this.nodes[t].content;for(let a=n.length-1;a>=0;a--)e+=n[a].nodeSize;t&&e++}return e}findAtPoint(e,t){if(this.find)for(let n=0;n<this.find.length;n++)this.find[n].node==e&&this.find[n].offset==t&&(this.find[n].pos=this.currentPos)}findInside(e){if(this.find)for(let t=0;t<this.find.length;t++)this.find[t].pos==null&&e.nodeType==1&&e.contains(this.find[t].node)&&(this.find[t].pos=this.currentPos)}findAround(e,t,n){if(e!=t&&this.find)for(let a=0;a<this.find.length;a++)this.find[a].pos==null&&e.nodeType==1&&e.contains(this.find[a].node)&&t.compareDocumentPosition(this.find[a].node)&(n?2:4)&&(this.find[a].pos=this.currentPos)}findInText(e){if(this.find)for(let t=0;t<this.find.length;t++)this.find[t].node==e&&(this.find[t].pos=this.currentPos-(e.nodeValue.length-this.find[t].offset))}matchesContext(e){if(e.indexOf("|")>-1)return e.split(/\s*\|\s*/).some(this.matchesContext,this);let t=e.split("/"),n=this.options.context,a=!this.isOpen&&(!n||n.parent.type==this.nodes[0].type),s=-(n?n.depth+1:0)+(a?0:1),i=(r,l)=>{for(;r>=0;r--){let p=t[r];if(p==""){if(r==t.length-1||r==0)continue;for(;l>=s;l--)if(i(r-1,l))return!0;return!1}else{let c=l>0||l==0&&a?this.nodes[l].type:n&&l>=s?n.node(l-s).type:null;if(!c||c.name!=p&&c.groups.indexOf(p)==-1)return!1;l--}}return!0};return i(t.length-1,this.open)}textblockFromContext(){let e=this.options.context;if(e)for(let t=e.depth;t>=0;t--){let n=e.node(t).contentMatchAt(e.indexAfter(t)).defaultType;if(n&&n.isTextblock&&n.defaultAttrs)return n}for(let t in this.parser.schema.nodes){let n=this.parser.schema.nodes[t];if(n.isTextblock&&n.defaultAttrs)return n}}}function Mu(o){for(let e=o.firstChild,t=null;e;e=e.nextSibling){let n=e.nodeType==1?e.nodeName.toLowerCase():null;n&&Il.hasOwnProperty(n)&&t?(t.appendChild(e),e=t):n=="li"?t=e:n&&(t=null)}}function Fu(o,e){return(o.matches||o.msMatchesSelector||o.webkitMatchesSelector||o.mozMatchesSelector).call(o,e)}function xl(o){let e={};for(let t in o)e[t]=o[t];return e}function Sl(o,e){let t=e.schema.nodes;for(let n in t){let a=t[n];if(!a.allowsMarkType(o))continue;let s=[],i=r=>{s.push(r);for(let l=0;l<r.edgeCount;l++){let{type:p,next:c}=r.edge(l);if(p==e||s.indexOf(c)<0&&i(c))return!0}};if(i(a.contentMatch))return!0}}class bo{constructor(e,t){this.nodes=e,this.marks=t}serializeFragment(e,t={},n){n||(n=qs(t).createDocumentFragment());let a=n,s=[];return e.forEach(i=>{if(s.length||i.marks.length){let r=0,l=0;for(;r<s.length&&l<i.marks.length;){let p=i.marks[l];if(!this.marks[p.type.name]){l++;continue}if(!p.eq(s[r][0])||p.type.spec.spanning===!1)break;r++,l++}for(;r<s.length;)a=s.pop()[1];for(;l<i.marks.length;){let p=i.marks[l++],c=this.serializeMark(p,i.isInline,t);c&&(s.push([p,a]),a.appendChild(c.dom),a=c.contentDOM||c.dom)}}a.appendChild(this.serializeNodeInner(i,t))}),n}serializeNodeInner(e,t){let{dom:n,contentDOM:a}=da(qs(t),this.nodes[e.type.name](e),null,e.attrs);if(a){if(e.isLeaf)throw new RangeError("Content hole not allowed in a leaf node spec");this.serializeFragment(e.content,t,a)}return n}serializeNode(e,t={}){let n=this.serializeNodeInner(e,t);for(let a=e.marks.length-1;a>=0;a--){let s=this.serializeMark(e.marks[a],e.isInline,t);s&&((s.contentDOM||s.dom).appendChild(n),n=s.dom)}return n}serializeMark(e,t,n={}){let a=this.marks[e.type.name];return a&&da(qs(n),a(e,t),null,e.attrs)}static renderSpec(e,t,n=null,a){return da(e,t,n,a)}static fromSchema(e){return e.cached.domSerializer||(e.cached.domSerializer=new bo(this.nodesFromSchema(e),this.marksFromSchema(e)))}static nodesFromSchema(e){let t=Ml(e.nodes);return t.text||(t.text=n=>n.text),t}static marksFromSchema(e){return Ml(e.marks)}}function Ml(o){let e={};for(let t in o){let n=o[t].spec.toDOM;n&&(e[t]=n)}return e}function qs(o){return o.document||window.document}const Fl=new WeakMap;function Ou(o){let e=Fl.get(o);return e===void 0&&Fl.set(o,e=Au(o)),e}function Au(o){let e=null;function t(n){if(n&&typeof n=="object")if(Array.isArray(n))if(typeof n[0]=="string")e||(e=[]),e.push(n);else for(let a=0;a<n.length;a++)t(n[a]);else for(let a in n)t(n[a])}return t(o),e}function da(o,e,t,n){if(typeof e=="string")return{dom:o.createTextNode(e)};if(e.nodeType!=null)return{dom:e};if(e.dom&&e.dom.nodeType!=null)return e;let a=e[0],s;if(typeof a!="string")throw new RangeError("Invalid array passed to renderSpec");if(n&&(s=Ou(n))&&s.indexOf(e)>-1)throw new RangeError("Using an array from an attribute object as a DOM spec. This may be an attempted cross site scripting attack.");let i=a.indexOf(" ");i>0&&(t=a.slice(0,i),a=a.slice(i+1));let r,l=t?o.createElementNS(t,a):o.createElement(a),p=e[1],c=1;if(p&&typeof p=="object"&&p.nodeType==null&&!Array.isArray(p)){c=2;for(let m in p)if(p[m]!=null){let d=m.indexOf(" ");d>0?l.setAttributeNS(m.slice(0,d),m.slice(d+1),p[m]):l.setAttribute(m,p[m])}}for(let m=c;m<e.length;m++){let d=e[m];if(d===0){if(m<e.length-1||m>c)throw new RangeError("Content hole must be the only child of its parent node");return{dom:l,contentDOM:l}}else{let{dom:u,contentDOM:g}=da(o,d,t,n);if(l.appendChild(u),g){if(r)throw new RangeError("Multiple content holes");r=g}}}return{dom:l,contentDOM:r}}const Ol=65535,Al=Math.pow(2,16);function Tu(o,e){return o+e*Al}function Tl(o){return o&Ol}function Nu(o){return(o-(o&Ol))/Al}const Nl=1,Bl=2,ua=4,Rl=8;class Ws{constructor(e,t,n){this.pos=e,this.delInfo=t,this.recover=n}get deleted(){return(this.delInfo&Rl)>0}get deletedBefore(){return(this.delInfo&(Nl|ua))>0}get deletedAfter(){return(this.delInfo&(Bl|ua))>0}get deletedAcross(){return(this.delInfo&ua)>0}}class Je{constructor(e,t=!1){if(this.ranges=e,this.inverted=t,!e.length&&Je.empty)return Je.empty}recover(e){let t=0,n=Tl(e);if(!this.inverted)for(let a=0;a<n;a++)t+=this.ranges[a*3+2]-this.ranges[a*3+1];return this.ranges[n*3]+t+Nu(e)}mapResult(e,t=1){return this._map(e,t,!1)}map(e,t=1){return this._map(e,t,!0)}_map(e,t,n){let a=0,s=this.inverted?2:1,i=this.inverted?1:2;for(let r=0;r<this.ranges.length;r+=3){let l=this.ranges[r]-(this.inverted?a:0);if(l>e)break;let p=this.ranges[r+s],c=this.ranges[r+i],m=l+p;if(e<=m){let d=p?e==l?-1:e==m?1:t:t,u=l+a+(d<0?0:c);if(n)return u;let g=e==(t<0?l:m)?null:Tu(r/3,e-l),h=e==l?Bl:e==m?Nl:ua;return(t<0?e!=l:e!=m)&&(h|=Rl),new Ws(u,h,g)}a+=c-p}return n?e+a:new Ws(e+a,0,null)}touches(e,t){let n=0,a=Tl(t),s=this.inverted?2:1,i=this.inverted?1:2;for(let r=0;r<this.ranges.length;r+=3){let l=this.ranges[r]-(this.inverted?n:0);if(l>e)break;let p=this.ranges[r+s],c=l+p;if(e<=c&&r==a*3)return!0;n+=this.ranges[r+i]-p}return!1}forEach(e){let t=this.inverted?2:1,n=this.inverted?1:2;for(let a=0,s=0;a<this.ranges.length;a+=3){let i=this.ranges[a],r=i-(this.inverted?s:0),l=i+(this.inverted?0:s),p=this.ranges[a+t],c=this.ranges[a+n];e(r,r+p,l,l+c),s+=c-p}}invert(){return new Je(this.ranges,!this.inverted)}toString(){return(this.inverted?"-":"")+JSON.stringify(this.ranges)}static offset(e){return e==0?Je.empty:new Je(e<0?[0,-e,0]:[0,0,e])}}Je.empty=new Je([]);class Ro{constructor(e=[],t,n=0,a=e.length){this.maps=e,this.mirror=t,this.from=n,this.to=a}slice(e=0,t=this.maps.length){return new Ro(this.maps,this.mirror,e,t)}copy(){return new Ro(this.maps.slice(),this.mirror&&this.mirror.slice(),this.from,this.to)}appendMap(e,t){this.to=this.maps.push(e),t!=null&&this.setMirror(this.maps.length-1,t)}appendMapping(e){for(let t=0,n=this.maps.length;t<e.maps.length;t++){let a=e.getMirror(t);this.appendMap(e.maps[t],a!=null&&a<t?n+a:void 0)}}getMirror(e){if(this.mirror){for(let t=0;t<this.mirror.length;t++)if(this.mirror[t]==e)return this.mirror[t+(t%2?-1:1)]}}setMirror(e,t){this.mirror||(this.mirror=[]),this.mirror.push(e,t)}appendMappingInverted(e){for(let t=e.maps.length-1,n=this.maps.length+e.maps.length;t>=0;t--){let a=e.getMirror(t);this.appendMap(e.maps[t].invert(),a!=null&&a>t?n-a-1:void 0)}}invert(){let e=new Ro;return e.appendMappingInverted(this),e}map(e,t=1){if(this.mirror)return this._map(e,t,!0);for(let n=this.from;n<this.to;n++)e=this.maps[n].map(e,t);return e}mapResult(e,t=1){return this._map(e,t,!1)}_map(e,t,n){let a=0;for(let s=this.from;s<this.to;s++){let i=this.maps[s],r=i.mapResult(e,t);if(r.recover!=null){let l=this.getMirror(s);if(l!=null&&l>s&&l<this.to){s=l,e=this.maps[l].recover(r.recover);continue}}a|=r.delInfo,e=r.pos}return n?e:new Ws(e,a,null)}}const Us=Object.create(null);class Ae{getMap(){return Je.empty}merge(e){return null}static fromJSON(e,t){if(!t||!t.stepType)throw new RangeError("Invalid input for Step.fromJSON");let n=Us[t.stepType];if(!n)throw new RangeError(`No step type ${t.stepType} defined`);return n.fromJSON(e,t)}static jsonID(e,t){if(e in Us)throw new RangeError("Duplicate use of step JSON ID "+e);return Us[e]=t,t.prototype.jsonID=e,t}}class ke{constructor(e,t){this.doc=e,this.failed=t}static ok(e){return new ke(e,null)}static fail(e){return new ke(null,e)}static fromReplace(e,t,n,a){try{return ke.ok(e.replace(t,n,a))}catch(s){if(s instanceof na)return ke.fail(s.message);throw s}}}function Ks(o,e,t){let n=[];for(let a=0;a<o.childCount;a++){let s=o.child(a);s.content.size&&(s=s.copy(Ks(s.content,e,s))),s.isInline&&(s=e(s,t,a)),n.push(s)}return x.fromArray(n)}class Ut extends Ae{constructor(e,t,n){super(),this.from=e,this.to=t,this.mark=n}apply(e){let t=e.slice(this.from,this.to),n=e.resolve(this.from),a=n.node(n.sharedDepth(this.to)),s=new N(Ks(t.content,(i,r)=>!i.isAtom||!r.type.allowsMarkType(this.mark.type)?i:i.mark(this.mark.addToSet(i.marks)),a),t.openStart,t.openEnd);return ke.fromReplace(e,this.from,this.to,s)}invert(){return new jt(this.from,this.to,this.mark)}map(e){let t=e.mapResult(this.from,1),n=e.mapResult(this.to,-1);return t.deleted&&n.deleted||t.pos>=n.pos?null:new Ut(t.pos,n.pos,this.mark)}merge(e){return e instanceof Ut&&e.mark.eq(this.mark)&&this.from<=e.to&&this.to>=e.from?new Ut(Math.min(this.from,e.from),Math.max(this.to,e.to),this.mark):null}toJSON(){return{stepType:"addMark",mark:this.mark.toJSON(),from:this.from,to:this.to}}static fromJSON(e,t){if(typeof t.from!="number"||typeof t.to!="number")throw new RangeError("Invalid input for AddMarkStep.fromJSON");return new Ut(t.from,t.to,e.markFromJSON(t.mark))}}Ae.jsonID("addMark",Ut);class jt extends Ae{constructor(e,t,n){super(),this.from=e,this.to=t,this.mark=n}apply(e){let t=e.slice(this.from,this.to),n=new N(Ks(t.content,a=>a.mark(this.mark.removeFromSet(a.marks)),e),t.openStart,t.openEnd);return ke.fromReplace(e,this.from,this.to,n)}invert(){return new Ut(this.from,this.to,this.mark)}map(e){let t=e.mapResult(this.from,1),n=e.mapResult(this.to,-1);return t.deleted&&n.deleted||t.pos>=n.pos?null:new jt(t.pos,n.pos,this.mark)}merge(e){return e instanceof jt&&e.mark.eq(this.mark)&&this.from<=e.to&&this.to>=e.from?new jt(Math.min(this.from,e.from),Math.max(this.to,e.to),this.mark):null}toJSON(){return{stepType:"removeMark",mark:this.mark.toJSON(),from:this.from,to:this.to}}static fromJSON(e,t){if(typeof t.from!="number"||typeof t.to!="number")throw new RangeError("Invalid input for RemoveMarkStep.fromJSON");return new jt(t.from,t.to,e.markFromJSON(t.mark))}}Ae.jsonID("removeMark",jt);class Kt extends Ae{constructor(e,t){super(),this.pos=e,this.mark=t}apply(e){let t=e.nodeAt(this.pos);if(!t)return ke.fail("No node at mark step's position");let n=t.type.create(t.attrs,null,this.mark.addToSet(t.marks));return ke.fromReplace(e,this.pos,this.pos+1,new N(x.from(n),0,t.isLeaf?0:1))}invert(e){let t=e.nodeAt(this.pos);if(t){let n=this.mark.addToSet(t.marks);if(n.length==t.marks.length){for(let a=0;a<t.marks.length;a++)if(!t.marks[a].isInSet(n))return new Kt(this.pos,t.marks[a]);return new Kt(this.pos,this.mark)}}return new Lo(this.pos,this.mark)}map(e){let t=e.mapResult(this.pos,1);return t.deletedAfter?null:new Kt(t.pos,this.mark)}toJSON(){return{stepType:"addNodeMark",pos:this.pos,mark:this.mark.toJSON()}}static fromJSON(e,t){if(typeof t.pos!="number")throw new RangeError("Invalid input for AddNodeMarkStep.fromJSON");return new Kt(t.pos,e.markFromJSON(t.mark))}}Ae.jsonID("addNodeMark",Kt);class Lo extends Ae{constructor(e,t){super(),this.pos=e,this.mark=t}apply(e){let t=e.nodeAt(this.pos);if(!t)return ke.fail("No node at mark step's position");let n=t.type.create(t.attrs,null,this.mark.removeFromSet(t.marks));return ke.fromReplace(e,this.pos,this.pos+1,new N(x.from(n),0,t.isLeaf?0:1))}invert(e){let t=e.nodeAt(this.pos);return!t||!this.mark.isInSet(t.marks)?this:new Kt(this.pos,this.mark)}map(e){let t=e.mapResult(this.pos,1);return t.deletedAfter?null:new Lo(t.pos,this.mark)}toJSON(){return{stepType:"removeNodeMark",pos:this.pos,mark:this.mark.toJSON()}}static fromJSON(e,t){if(typeof t.pos!="number")throw new RangeError("Invalid input for RemoveNodeMarkStep.fromJSON");return new Lo(t.pos,e.markFromJSON(t.mark))}}Ae.jsonID("removeNodeMark",Lo);class we extends Ae{constructor(e,t,n,a=!1){super(),this.from=e,this.to=t,this.slice=n,this.structure=a}apply(e){return this.structure&&Gs(e,this.from,this.to)?ke.fail("Structure replace would overwrite content"):ke.fromReplace(e,this.from,this.to,this.slice)}getMap(){return new Je([this.from,this.to-this.from,this.slice.size])}invert(e){return new we(this.from,this.from+this.slice.size,e.slice(this.from,this.to))}map(e){let t=e.mapResult(this.from,1),n=e.mapResult(this.to,-1);return t.deletedAcross&&n.deletedAcross?null:new we(t.pos,Math.max(t.pos,n.pos),this.slice)}merge(e){if(!(e instanceof we)||e.structure||this.structure)return null;if(this.from+this.slice.size==e.from&&!this.slice.openEnd&&!e.slice.openStart){let t=this.slice.size+e.slice.size==0?N.empty:new N(this.slice.content.append(e.slice.content),this.slice.openStart,e.slice.openEnd);return new we(this.from,this.to+(e.to-e.from),t,this.structure)}else if(e.to==this.from&&!this.slice.openStart&&!e.slice.openEnd){let t=this.slice.size+e.slice.size==0?N.empty:new N(e.slice.content.append(this.slice.content),e.slice.openStart,this.slice.openEnd);return new we(e.from,this.to,t,this.structure)}else return null}toJSON(){let e={stepType:"replace",from:this.from,to:this.to};return this.slice.size&&(e.slice=this.slice.toJSON()),this.structure&&(e.structure=!0),e}static fromJSON(e,t){if(typeof t.from!="number"||typeof t.to!="number")throw new RangeError("Invalid input for ReplaceStep.fromJSON");return new we(t.from,t.to,N.fromJSON(e,t.slice),!!t.structure)}}Ae.jsonID("replace",we);class Ie extends Ae{constructor(e,t,n,a,s,i,r=!1){super(),this.from=e,this.to=t,this.gapFrom=n,this.gapTo=a,this.slice=s,this.insert=i,this.structure=r}apply(e){if(this.structure&&(Gs(e,this.from,this.gapFrom)||Gs(e,this.gapTo,this.to)))return ke.fail("Structure gap-replace would overwrite content");let t=e.slice(this.gapFrom,this.gapTo);if(t.openStart||t.openEnd)return ke.fail("Gap is not a flat range");let n=this.slice.insertAt(this.insert,t.content);return n?ke.fromReplace(e,this.from,this.to,n):ke.fail("Content does not fit in gap")}getMap(){return new Je([this.from,this.gapFrom-this.from,this.insert,this.gapTo,this.to-this.gapTo,this.slice.size-this.insert])}invert(e){let t=this.gapTo-this.gapFrom;return new Ie(this.from,this.from+this.slice.size+t,this.from+this.insert,this.from+this.insert+t,e.slice(this.from,this.to).removeBetween(this.gapFrom-this.from,this.gapTo-this.from),this.gapFrom-this.from,this.structure)}map(e){let t=e.mapResult(this.from,1),n=e.mapResult(this.to,-1),a=this.from==this.gapFrom?t.pos:e.map(this.gapFrom,-1),s=this.to==this.gapTo?n.pos:e.map(this.gapTo,1);return t.deletedAcross&&n.deletedAcross||a<t.pos||s>n.pos?null:new Ie(t.pos,n.pos,a,s,this.slice,this.insert,this.structure)}toJSON(){let e={stepType:"replaceAround",from:this.from,to:this.to,gapFrom:this.gapFrom,gapTo:this.gapTo,insert:this.insert};return this.slice.size&&(e.slice=this.slice.toJSON()),this.structure&&(e.structure=!0),e}static fromJSON(e,t){if(typeof t.from!="number"||typeof t.to!="number"||typeof t.gapFrom!="number"||typeof t.gapTo!="number"||typeof t.insert!="number")throw new RangeError("Invalid input for ReplaceAroundStep.fromJSON");return new Ie(t.from,t.to,t.gapFrom,t.gapTo,N.fromJSON(e,t.slice),t.insert,!!t.structure)}}Ae.jsonID("replaceAround",Ie);function Gs(o,e,t){let n=o.resolve(e),a=t-e,s=n.depth;for(;a>0&&s>0&&n.indexAfter(s)==n.node(s).childCount;)s--,a--;if(a>0){let i=n.node(s).maybeChild(n.indexAfter(s));for(;a>0;){if(!i||i.isLeaf)return!0;i=i.firstChild,a--}}return!1}function Bu(o,e,t,n){let a=[],s=[],i,r;o.doc.nodesBetween(e,t,(l,p,c)=>{if(!l.isInline)return;let m=l.marks;if(!n.isInSet(m)&&c.type.allowsMarkType(n.type)){let d=Math.max(p,e),u=Math.min(p+l.nodeSize,t),g=n.addToSet(m);for(let h=0;h<m.length;h++)m[h].isInSet(g)||(i&&i.to==d&&i.mark.eq(m[h])?i.to=u:a.push(i=new jt(d,u,m[h])));r&&r.to==d?r.to=u:s.push(r=new Ut(d,u,n))}}),a.forEach(l=>o.step(l)),s.forEach(l=>o.step(l))}function Ru(o,e,t,n){let a=[],s=0;o.doc.nodesBetween(e,t,(i,r)=>{if(!i.isInline)return;s++;let l=null;if(n instanceof ra){let p=i.marks,c;for(;c=n.isInSet(p);)(l||(l=[])).push(c),p=c.removeFromSet(p)}else n?n.isInSet(i.marks)&&(l=[n]):l=i.marks;if(l&&l.length){let p=Math.min(r+i.nodeSize,t);for(let c=0;c<l.length;c++){let m=l[c],d;for(let u=0;u<a.length;u++){let g=a[u];g.step==s-1&&m.eq(a[u].style)&&(d=g)}d?(d.to=p,d.step=s):a.push({style:m,from:Math.max(r,e),to:p,step:s})}}}),a.forEach(i=>o.step(new jt(i.from,i.to,i.style)))}function Ll(o,e,t,n=t.contentMatch,a=!0){let s=o.doc.nodeAt(e),i=[],r=e+1;for(let l=0;l<s.childCount;l++){let p=s.child(l),c=r+p.nodeSize,m=n.matchType(p.type);if(!m)i.push(new we(r,c,N.empty));else{n=m;for(let d=0;d<p.marks.length;d++)t.allowsMarkType(p.marks[d].type)||o.step(new jt(r,c,p.marks[d]));if(a&&p.isText&&t.whitespace!="pre"){let d,u=/\r?\n|\r/g,g;for(;d=u.exec(p.text);)g||(g=new N(x.from(t.schema.text(" ",t.allowedMarks(p.marks))),0,0)),i.push(new we(r+d.index,r+d.index+d[0].length,g))}}r=c}if(!n.validEnd){let l=n.fillBefore(x.empty,!0);o.replace(r,r,new N(l,0,0))}for(let l=i.length-1;l>=0;l--)o.step(i[l])}function Lu(o,e,t){return(e==0||o.canReplace(e,o.childCount))&&(t==o.childCount||o.canReplace(0,t))}function Po(o){let t=o.parent.content.cutByIndex(o.startIndex,o.endIndex);for(let n=o.depth;;--n){let a=o.$from.node(n),s=o.$from.index(n),i=o.$to.indexAfter(n);if(n<o.depth&&a.canReplace(s,i,t))return n;if(n==0||a.type.spec.isolating||!Lu(a,s,i))break}return null}function Pu(o,e,t){let{$from:n,$to:a,depth:s}=e,i=n.before(s+1),r=a.after(s+1),l=i,p=r,c=x.empty,m=0;for(let g=s,h=!1;g>t;g--)h||n.index(g)>0?(h=!0,c=x.from(n.node(g).copy(c)),m++):l--;let d=x.empty,u=0;for(let g=s,h=!1;g>t;g--)h||a.after(g+1)<a.end(g)?(h=!0,d=x.from(a.node(g).copy(d)),u++):p++;o.step(new Ie(l,p,i,r,new N(c.append(d),m,u),c.size-m,!0))}function Js(o,e,t=null,n=o){let a=zu(o,e),s=a&&$u(n,e);return s?a.map(Pl).concat({type:e,attrs:t}).concat(s.map(Pl)):null}function Pl(o){return{type:o,attrs:null}}function zu(o,e){let{parent:t,startIndex:n,endIndex:a}=o,s=t.contentMatchAt(n).findWrapping(e);if(!s)return null;let i=s.length?s[0]:e;return t.canReplaceWith(n,a,i)?s:null}function $u(o,e){let{parent:t,startIndex:n,endIndex:a}=o,s=t.child(n),i=e.contentMatch.findWrapping(s.type);if(!i)return null;let l=(i.length?i[i.length-1]:e).contentMatch;for(let p=n;l&&p<a;p++)l=l.matchType(t.child(p).type);return!l||!l.validEnd?null:i}function Hu(o,e,t){let n=x.empty;for(let i=t.length-1;i>=0;i--){if(n.size){let r=t[i].type.contentMatch.matchFragment(n);if(!r||!r.validEnd)throw new RangeError("Wrapper type given to Transform.wrap does not form valid content of its parent wrapper")}n=x.from(t[i].type.create(t[i].attrs,n))}let a=e.start,s=e.end;o.step(new Ie(a,s,a,s,new N(n,0,0),t.length,!0))}function Vu(o,e,t,n,a){if(!n.isTextblock)throw new RangeError("Type given to setBlockType should be a textblock");let s=o.steps.length;o.doc.nodesBetween(e,t,(i,r)=>{let l=typeof a=="function"?a(i):a;if(i.isTextblock&&!i.hasMarkup(n,l)&&Uu(o.doc,o.mapping.slice(s).map(r),n)){let p=null;if(n.schema.linebreakReplacement){let u=n.whitespace=="pre",g=!!n.contentMatch.matchType(n.schema.linebreakReplacement);u&&!g?p=!1:!u&&g&&(p=!0)}p===!1&&Wu(o,i,r,s),Ll(o,o.mapping.slice(s).map(r,1),n,void 0,p===null);let c=o.mapping.slice(s),m=c.map(r,1),d=c.map(r+i.nodeSize,1);return o.step(new Ie(m,d,m+1,d-1,new N(x.from(n.create(l,null,i.marks)),0,0),1,!0)),p===!0&&qu(o,i,r,s),!1}})}function qu(o,e,t,n){e.forEach((a,s)=>{if(a.isText){let i,r=/\r?\n|\r/g;for(;i=r.exec(a.text);){let l=o.mapping.slice(n).map(t+1+s+i.index);o.replaceWith(l,l+1,e.type.schema.linebreakReplacement.create())}}})}function Wu(o,e,t,n){e.forEach((a,s)=>{if(a.type==a.type.schema.linebreakReplacement){let i=o.mapping.slice(n).map(t+1+s);o.replaceWith(i,i+1,e.type.schema.text(`
|
|
5
|
-
`))}})}function Uu(o,e,t){let n=o.resolve(e),a=n.index();return n.parent.canReplaceWith(a,a+1,t)}function Ku(o,e,t,n,a){let s=o.doc.nodeAt(e);if(!s)throw new RangeError("No node at given position");t||(t=s.type);let i=t.create(n,null,a||s.marks);if(s.isLeaf)return o.replaceWith(e,e+s.nodeSize,i);if(!t.validContent(s.content))throw new RangeError("Invalid content for node type "+t.name);o.step(new Ie(e,e+s.nodeSize,e+1,e+s.nodeSize-1,new N(x.from(i),0,0),1,!0))}function Ot(o,e,t=1,n){let a=o.resolve(e),s=a.depth-t,i=n&&n[n.length-1]||a.parent;if(s<0||a.parent.type.spec.isolating||!a.parent.canReplace(a.index(),a.parent.childCount)||!i.type.validContent(a.parent.content.cutByIndex(a.index(),a.parent.childCount)))return!1;for(let p=a.depth-1,c=t-2;p>s;p--,c--){let m=a.node(p),d=a.index(p);if(m.type.spec.isolating)return!1;let u=m.content.cutByIndex(d,m.childCount),g=n&&n[c+1];g&&(u=u.replaceChild(0,g.type.create(g.attrs)));let h=n&&n[c]||m;if(!m.canReplace(d+1,m.childCount)||!h.type.validContent(u))return!1}let r=a.indexAfter(s),l=n&&n[0];return a.node(s).canReplaceWith(r,r,l?l.type:a.node(s+1).type)}function Gu(o,e,t=1,n){let a=o.doc.resolve(e),s=x.empty,i=x.empty;for(let r=a.depth,l=a.depth-t,p=t-1;r>l;r--,p--){s=x.from(a.node(r).copy(s));let c=n&&n[p];i=x.from(c?c.type.create(c.attrs,i):a.node(r).copy(i))}o.step(new we(e,e,new N(s.append(i),t,t),!0))}function Gt(o,e){let t=o.resolve(e),n=t.index();return zl(t.nodeBefore,t.nodeAfter)&&t.parent.canReplace(n,n+1)}function zl(o,e){return!!(o&&e&&!o.isLeaf&&o.canAppend(e))}function ga(o,e,t=-1){let n=o.resolve(e);for(let a=n.depth;;a--){let s,i,r=n.index(a);if(a==n.depth?(s=n.nodeBefore,i=n.nodeAfter):t>0?(s=n.node(a+1),r++,i=n.node(a).maybeChild(r)):(s=n.node(a).maybeChild(r-1),i=n.node(a+1)),s&&!s.isTextblock&&zl(s,i)&&n.node(a).canReplace(r,r+1))return e;if(a==0)break;e=t<0?n.before(a):n.after(a)}}function Ju(o,e,t){let n=new we(e-t,e+t,N.empty,!0);o.step(n)}function Yu(o,e,t){let n=o.resolve(e);if(n.parent.canReplaceWith(n.index(),n.index(),t))return e;if(n.parentOffset==0)for(let a=n.depth-1;a>=0;a--){let s=n.index(a);if(n.node(a).canReplaceWith(s,s,t))return n.before(a+1);if(s>0)return null}if(n.parentOffset==n.parent.content.size)for(let a=n.depth-1;a>=0;a--){let s=n.indexAfter(a);if(n.node(a).canReplaceWith(s,s,t))return n.after(a+1);if(s<n.node(a).childCount)return null}return null}function $l(o,e,t){let n=o.resolve(e);if(!t.content.size)return e;let a=t.content;for(let s=0;s<t.openStart;s++)a=a.firstChild.content;for(let s=1;s<=(t.openStart==0&&t.size?2:1);s++)for(let i=n.depth;i>=0;i--){let r=i==n.depth?0:n.pos<=(n.start(i+1)+n.end(i+1))/2?-1:1,l=n.index(i)+(r>0?1:0),p=n.node(i),c=!1;if(s==1)c=p.canReplace(l,l,a);else{let m=p.contentMatchAt(l).findWrapping(a.firstChild.type);c=m&&p.canReplaceWith(l,l,m[0])}if(c)return r==0?n.pos:r<0?n.before(i+1):n.after(i+1)}return null}function fa(o,e,t=e,n=N.empty){if(e==t&&!n.size)return null;let a=o.resolve(e),s=o.resolve(t);return Hl(a,s,n)?new we(e,t,n):new Xu(a,s,n).fit()}function Hl(o,e,t){return!t.openStart&&!t.openEnd&&o.start()==e.start()&&o.parent.canReplace(o.index(),e.index(),t.content)}class Xu{constructor(e,t,n){this.$from=e,this.$to=t,this.unplaced=n,this.frontier=[],this.placed=x.empty;for(let a=0;a<=e.depth;a++){let s=e.node(a);this.frontier.push({type:s.type,match:s.contentMatchAt(e.indexAfter(a))})}for(let a=e.depth;a>0;a--)this.placed=x.from(e.node(a).copy(this.placed))}get depth(){return this.frontier.length-1}fit(){for(;this.unplaced.size;){let p=this.findFittable();p?this.placeNodes(p):this.openMore()||this.dropNode()}let e=this.mustMoveInline(),t=this.placed.size-this.depth-this.$from.depth,n=this.$from,a=this.close(e<0?this.$to:n.doc.resolve(e));if(!a)return null;let s=this.placed,i=n.depth,r=a.depth;for(;i&&r&&s.childCount==1;)s=s.firstChild.content,i--,r--;let l=new N(s,i,r);return e>-1?new Ie(n.pos,e,this.$to.pos,this.$to.end(),l,t):l.size||n.pos!=this.$to.pos?new we(n.pos,a.pos,l):null}findFittable(){let e=this.unplaced.openStart;for(let t=this.unplaced.content,n=0,a=this.unplaced.openEnd;n<e;n++){let s=t.firstChild;if(t.childCount>1&&(a=0),s.type.spec.isolating&&a<=n){e=n;break}t=s.content}for(let t=1;t<=2;t++)for(let n=t==1?e:this.unplaced.openStart;n>=0;n--){let a,s=null;n?(s=Ys(this.unplaced.content,n-1).firstChild,a=s.content):a=this.unplaced.content;let i=a.firstChild;for(let r=this.depth;r>=0;r--){let{type:l,match:p}=this.frontier[r],c,m=null;if(t==1&&(i?p.matchType(i.type)||(m=p.fillBefore(x.from(i),!1)):s&&l.compatibleContent(s.type)))return{sliceDepth:n,frontierDepth:r,parent:s,inject:m};if(t==2&&i&&(c=p.findWrapping(i.type)))return{sliceDepth:n,frontierDepth:r,parent:s,wrap:c};if(s&&p.matchType(s.type))break}}}openMore(){let{content:e,openStart:t,openEnd:n}=this.unplaced,a=Ys(e,t);return!a.childCount||a.firstChild.isLeaf?!1:(this.unplaced=new N(e,t+1,Math.max(n,a.size+t>=e.size-n?t+1:0)),!0)}dropNode(){let{content:e,openStart:t,openEnd:n}=this.unplaced,a=Ys(e,t);if(a.childCount<=1&&t>0){let s=e.size-t<=t+a.size;this.unplaced=new N(bn(e,t-1,1),t-1,s?t-1:n)}else this.unplaced=new N(bn(e,t,1),t,n)}placeNodes({sliceDepth:e,frontierDepth:t,parent:n,inject:a,wrap:s}){for(;this.depth>t;)this.closeFrontierNode();if(s)for(let h=0;h<s.length;h++)this.openFrontierNode(s[h]);let i=this.unplaced,r=n?n.content:i.content,l=i.openStart-e,p=0,c=[],{match:m,type:d}=this.frontier[t];if(a){for(let h=0;h<a.childCount;h++)c.push(a.child(h));m=m.matchFragment(a)}let u=r.size+e-(i.content.size-i.openEnd);for(;p<r.childCount;){let h=r.child(p),b=m.matchType(h.type);if(!b)break;p++,(p>1||l==0||h.content.size)&&(m=b,c.push(Vl(h.mark(d.allowedMarks(h.marks)),p==1?l:0,p==r.childCount?u:-1)))}let g=p==r.childCount;g||(u=-1),this.placed=jn(this.placed,t,x.from(c)),this.frontier[t].match=m,g&&u<0&&n&&n.type==this.frontier[this.depth].type&&this.frontier.length>1&&this.closeFrontierNode();for(let h=0,b=r;h<u;h++){let k=b.lastChild;this.frontier.push({type:k.type,match:k.contentMatchAt(k.childCount)}),b=k.content}this.unplaced=g?e==0?N.empty:new N(bn(i.content,e-1,1),e-1,u<0?i.openEnd:e-1):new N(bn(i.content,e,p),i.openStart,i.openEnd)}mustMoveInline(){if(!this.$to.parent.isTextblock)return-1;let e=this.frontier[this.depth],t;if(!e.type.isTextblock||!Xs(this.$to,this.$to.depth,e.type,e.match,!1)||this.$to.depth==this.depth&&(t=this.findCloseLevel(this.$to))&&t.depth==this.depth)return-1;let{depth:n}=this.$to,a=this.$to.after(n);for(;n>1&&a==this.$to.end(--n);)++a;return a}findCloseLevel(e){e:for(let t=Math.min(this.depth,e.depth);t>=0;t--){let{match:n,type:a}=this.frontier[t],s=t<e.depth&&e.end(t+1)==e.pos+(e.depth-(t+1)),i=Xs(e,t,a,n,s);if(i){for(let r=t-1;r>=0;r--){let{match:l,type:p}=this.frontier[r],c=Xs(e,r,p,l,!0);if(!c||c.childCount)continue e}return{depth:t,fit:i,move:s?e.doc.resolve(e.after(t+1)):e}}}}close(e){let t=this.findCloseLevel(e);if(!t)return null;for(;this.depth>t.depth;)this.closeFrontierNode();t.fit.childCount&&(this.placed=jn(this.placed,t.depth,t.fit)),e=t.move;for(let n=t.depth+1;n<=e.depth;n++){let a=e.node(n),s=a.type.contentMatch.fillBefore(a.content,!0,e.index(n));this.openFrontierNode(a.type,a.attrs,s)}return e}openFrontierNode(e,t=null,n){let a=this.frontier[this.depth];a.match=a.match.matchType(e),this.placed=jn(this.placed,this.depth,x.from(e.create(t,n))),this.frontier.push({type:e,match:e.contentMatch})}closeFrontierNode(){let t=this.frontier.pop().match.fillBefore(x.empty,!0);t.childCount&&(this.placed=jn(this.placed,this.frontier.length,t))}}function bn(o,e,t){return e==0?o.cutByIndex(t,o.childCount):o.replaceChild(0,o.firstChild.copy(bn(o.firstChild.content,e-1,t)))}function jn(o,e,t){return e==0?o.append(t):o.replaceChild(o.childCount-1,o.lastChild.copy(jn(o.lastChild.content,e-1,t)))}function Ys(o,e){for(let t=0;t<e;t++)o=o.firstChild.content;return o}function Vl(o,e,t){if(e<=0)return o;let n=o.content;return e>1&&(n=n.replaceChild(0,Vl(n.firstChild,e-1,n.childCount==1?t-1:0))),e>0&&(n=o.type.contentMatch.fillBefore(n).append(n),t<=0&&(n=n.append(o.type.contentMatch.matchFragment(n).fillBefore(x.empty,!0)))),o.copy(n)}function Xs(o,e,t,n,a){let s=o.node(e),i=a?o.indexAfter(e):o.index(e);if(i==s.childCount&&!t.compatibleContent(s.type))return null;let r=n.fillBefore(s.content,!0,i);return r&&!Zu(t,s.content,i)?r:null}function Zu(o,e,t){for(let n=t;n<e.childCount;n++)if(!o.allowsMarks(e.child(n).marks))return!0;return!1}function Qu(o){return o.spec.defining||o.spec.definingForContent}function eg(o,e,t,n){if(!n.size)return o.deleteRange(e,t);let a=o.doc.resolve(e),s=o.doc.resolve(t);if(Hl(a,s,n))return o.step(new we(e,t,n));let i=Wl(a,o.doc.resolve(t));i[i.length-1]==0&&i.pop();let r=-(a.depth+1);i.unshift(r);for(let d=a.depth,u=a.pos-1;d>0;d--,u--){let g=a.node(d).type.spec;if(g.defining||g.definingAsContext||g.isolating)break;i.indexOf(d)>-1?r=d:a.before(d)==u&&i.splice(1,0,-d)}let l=i.indexOf(r),p=[],c=n.openStart;for(let d=n.content,u=0;;u++){let g=d.firstChild;if(p.push(g),u==n.openStart)break;d=g.content}for(let d=c-1;d>=0;d--){let u=p[d],g=Qu(u.type);if(g&&!u.sameMarkup(a.node(Math.abs(r)-1)))c=d;else if(g||!u.type.isTextblock)break}for(let d=n.openStart;d>=0;d--){let u=(d+c+1)%(n.openStart+1),g=p[u];if(g)for(let h=0;h<i.length;h++){let b=i[(h+l)%i.length],k=!0;b<0&&(k=!1,b=-b);let I=a.node(b-1),S=a.index(b-1);if(I.canReplaceWith(S,S,g.type,g.marks))return o.replace(a.before(b),k?s.after(b):t,new N(ql(n.content,0,n.openStart,u),u,n.openEnd))}}let m=o.steps.length;for(let d=i.length-1;d>=0&&(o.replace(e,t,n),!(o.steps.length>m));d--){let u=i[d];u<0||(e=a.before(u),t=s.after(u))}}function ql(o,e,t,n,a){if(e<t){let s=o.firstChild;o=o.replaceChild(0,s.copy(ql(s.content,e+1,t,n,s)))}if(e>n){let s=a.contentMatchAt(0),i=s.fillBefore(o).append(o);o=i.append(s.matchFragment(i).fillBefore(x.empty,!0))}return o}function tg(o,e,t,n){if(!n.isInline&&e==t&&o.doc.resolve(e).parent.content.size){let a=Yu(o.doc,e,n.type);a!=null&&(e=t=a)}o.replaceRange(e,t,new N(x.from(n),0,0))}function og(o,e,t){let n=o.doc.resolve(e),a=o.doc.resolve(t),s=Wl(n,a);for(let i=0;i<s.length;i++){let r=s[i],l=i==s.length-1;if(l&&r==0||n.node(r).type.contentMatch.validEnd)return o.delete(n.start(r),a.end(r));if(r>0&&(l||n.node(r-1).canReplace(n.index(r-1),a.indexAfter(r-1))))return o.delete(n.before(r),a.after(r))}for(let i=1;i<=n.depth&&i<=a.depth;i++)if(e-n.start(i)==n.depth-i&&t>n.end(i)&&a.end(i)-t!=a.depth-i)return o.delete(n.before(i),t);o.delete(e,t)}function Wl(o,e){let t=[],n=Math.min(o.depth,e.depth);for(let a=n;a>=0;a--){let s=o.start(a);if(s<o.pos-(o.depth-a)||e.end(a)>e.pos+(e.depth-a)||o.node(a).type.spec.isolating||e.node(a).type.spec.isolating)break;(s==e.start(a)||a==o.depth&&a==e.depth&&o.parent.inlineContent&&e.parent.inlineContent&&a&&e.start(a-1)==s-1)&&t.push(a)}return t}class zo extends Ae{constructor(e,t,n){super(),this.pos=e,this.attr=t,this.value=n}apply(e){let t=e.nodeAt(this.pos);if(!t)return ke.fail("No node at attribute step's position");let n=Object.create(null);for(let s in t.attrs)n[s]=t.attrs[s];n[this.attr]=this.value;let a=t.type.create(n,null,t.marks);return ke.fromReplace(e,this.pos,this.pos+1,new N(x.from(a),0,t.isLeaf?0:1))}getMap(){return Je.empty}invert(e){return new zo(this.pos,this.attr,e.nodeAt(this.pos).attrs[this.attr])}map(e){let t=e.mapResult(this.pos,1);return t.deletedAfter?null:new zo(t.pos,this.attr,this.value)}toJSON(){return{stepType:"attr",pos:this.pos,attr:this.attr,value:this.value}}static fromJSON(e,t){if(typeof t.pos!="number"||typeof t.attr!="string")throw new RangeError("Invalid input for AttrStep.fromJSON");return new zo(t.pos,t.attr,t.value)}}Ae.jsonID("attr",zo);class vn extends Ae{constructor(e,t){super(),this.attr=e,this.value=t}apply(e){let t=Object.create(null);for(let a in e.attrs)t[a]=e.attrs[a];t[this.attr]=this.value;let n=e.type.create(t,e.content,e.marks);return ke.ok(n)}getMap(){return Je.empty}invert(e){return new vn(this.attr,e.attrs[this.attr])}map(e){return this}toJSON(){return{stepType:"docAttr",attr:this.attr,value:this.value}}static fromJSON(e,t){if(typeof t.attr!="string")throw new RangeError("Invalid input for DocAttrStep.fromJSON");return new vn(t.attr,t.value)}}Ae.jsonID("docAttr",vn);let $o=class extends Error{};$o=function o(e){let t=Error.call(this,e);return t.__proto__=o.prototype,t},$o.prototype=Object.create(Error.prototype),$o.prototype.constructor=$o,$o.prototype.name="TransformError";class Ul{constructor(e){this.doc=e,this.steps=[],this.docs=[],this.mapping=new Ro}get before(){return this.docs.length?this.docs[0]:this.doc}step(e){let t=this.maybeStep(e);if(t.failed)throw new $o(t.failed);return this}maybeStep(e){let t=e.apply(this.doc);return t.failed||this.addStep(e,t.doc),t}get docChanged(){return this.steps.length>0}addStep(e,t){this.docs.push(this.doc),this.steps.push(e),this.mapping.appendMap(e.getMap()),this.doc=t}replace(e,t=e,n=N.empty){let a=fa(this.doc,e,t,n);return a&&this.step(a),this}replaceWith(e,t,n){return this.replace(e,t,new N(x.from(n),0,0))}delete(e,t){return this.replace(e,t,N.empty)}insert(e,t){return this.replaceWith(e,e,t)}replaceRange(e,t,n){return eg(this,e,t,n),this}replaceRangeWith(e,t,n){return tg(this,e,t,n),this}deleteRange(e,t){return og(this,e,t),this}lift(e,t){return Pu(this,e,t),this}join(e,t=1){return Ju(this,e,t),this}wrap(e,t){return Hu(this,e,t),this}setBlockType(e,t=e,n,a=null){return Vu(this,e,t,n,a),this}setNodeMarkup(e,t,n=null,a){return Ku(this,e,t,n,a),this}setNodeAttribute(e,t,n){return this.step(new zo(e,t,n)),this}setDocAttribute(e,t){return this.step(new vn(e,t)),this}addNodeMark(e,t){return this.step(new Kt(e,t)),this}removeNodeMark(e,t){if(!(t instanceof pe)){let n=this.doc.nodeAt(e);if(!n)throw new RangeError("No node at position "+e);if(t=t.isInSet(n.marks),!t)return this}return this.step(new Lo(e,t)),this}split(e,t=1,n){return Gu(this,e,t,n),this}addMark(e,t,n){return Bu(this,e,t,n),this}removeMark(e,t,n){return Ru(this,e,t,n),this}clearIncompatible(e,t,n){return Ll(this,e,t,n),this}}const Zs=Object.create(null);class Z{constructor(e,t,n){this.$anchor=e,this.$head=t,this.ranges=n||[new ng(e.min(t),e.max(t))]}get anchor(){return this.$anchor.pos}get head(){return this.$head.pos}get from(){return this.$from.pos}get to(){return this.$to.pos}get $from(){return this.ranges[0].$from}get $to(){return this.ranges[0].$to}get empty(){let e=this.ranges;for(let t=0;t<e.length;t++)if(e[t].$from.pos!=e[t].$to.pos)return!1;return!0}content(){return this.$from.doc.slice(this.from,this.to,!0)}replace(e,t=N.empty){let n=t.content.lastChild,a=null;for(let r=0;r<t.openEnd;r++)a=n,n=n.lastChild;let s=e.steps.length,i=this.ranges;for(let r=0;r<i.length;r++){let{$from:l,$to:p}=i[r],c=e.mapping.slice(s);e.replaceRange(c.map(l.pos),c.map(p.pos),r?N.empty:t),r==0&&Jl(e,s,(n?n.isInline:a&&a.isTextblock)?-1:1)}}replaceWith(e,t){let n=e.steps.length,a=this.ranges;for(let s=0;s<a.length;s++){let{$from:i,$to:r}=a[s],l=e.mapping.slice(n),p=l.map(i.pos),c=l.map(r.pos);s?e.deleteRange(p,c):(e.replaceRangeWith(p,c,t),Jl(e,n,t.isInline?-1:1))}}static findFrom(e,t,n=!1){let a=e.parent.inlineContent?new J(e):Ho(e.node(0),e.parent,e.pos,e.index(),t,n);if(a)return a;for(let s=e.depth-1;s>=0;s--){let i=t<0?Ho(e.node(0),e.node(s),e.before(s+1),e.index(s),t,n):Ho(e.node(0),e.node(s),e.after(s+1),e.index(s)+1,t,n);if(i)return i}return null}static near(e,t=1){return this.findFrom(e,t)||this.findFrom(e,-t)||new Ze(e.node(0))}static atStart(e){return Ho(e,e,0,0,1)||new Ze(e)}static atEnd(e){return Ho(e,e,e.content.size,e.childCount,-1)||new Ze(e)}static fromJSON(e,t){if(!t||!t.type)throw new RangeError("Invalid input for Selection.fromJSON");let n=Zs[t.type];if(!n)throw new RangeError(`No selection type ${t.type} defined`);return n.fromJSON(e,t)}static jsonID(e,t){if(e in Zs)throw new RangeError("Duplicate use of selection JSON ID "+e);return Zs[e]=t,t.prototype.jsonID=e,t}getBookmark(){return J.between(this.$anchor,this.$head).getBookmark()}}Z.prototype.visible=!0;class ng{constructor(e,t){this.$from=e,this.$to=t}}let Kl=!1;function Gl(o){!Kl&&!o.parent.inlineContent&&(Kl=!0,console.warn("TextSelection endpoint not pointing into a node with inline content ("+o.parent.type.name+")"))}class J extends Z{constructor(e,t=e){Gl(e),Gl(t),super(e,t)}get $cursor(){return this.$anchor.pos==this.$head.pos?this.$head:null}map(e,t){let n=e.resolve(t.map(this.head));if(!n.parent.inlineContent)return Z.near(n);let a=e.resolve(t.map(this.anchor));return new J(a.parent.inlineContent?a:n,n)}replace(e,t=N.empty){if(super.replace(e,t),t==N.empty){let n=this.$from.marksAcross(this.$to);n&&e.ensureMarks(n)}}eq(e){return e instanceof J&&e.anchor==this.anchor&&e.head==this.head}getBookmark(){return new ha(this.anchor,this.head)}toJSON(){return{type:"text",anchor:this.anchor,head:this.head}}static fromJSON(e,t){if(typeof t.anchor!="number"||typeof t.head!="number")throw new RangeError("Invalid input for TextSelection.fromJSON");return new J(e.resolve(t.anchor),e.resolve(t.head))}static create(e,t,n=t){let a=e.resolve(t);return new this(a,n==t?a:e.resolve(n))}static between(e,t,n){let a=e.pos-t.pos;if((!n||a)&&(n=a>=0?1:-1),!t.parent.inlineContent){let s=Z.findFrom(t,n,!0)||Z.findFrom(t,-n,!0);if(s)t=s.$head;else return Z.near(t,n)}return e.parent.inlineContent||(a==0?e=t:(e=(Z.findFrom(e,-n,!0)||Z.findFrom(e,n,!0)).$anchor,e.pos<t.pos!=a<0&&(e=t))),new J(e,t)}}Z.jsonID("text",J);class ha{constructor(e,t){this.anchor=e,this.head=t}map(e){return new ha(e.map(this.anchor),e.map(this.head))}resolve(e){return J.between(e.resolve(this.anchor),e.resolve(this.head))}}class W extends Z{constructor(e){let t=e.nodeAfter,n=e.node(0).resolve(e.pos+t.nodeSize);super(e,n),this.node=t}map(e,t){let{deleted:n,pos:a}=t.mapResult(this.anchor),s=e.resolve(a);return n?Z.near(s):new W(s)}content(){return new N(x.from(this.node),0,0)}eq(e){return e instanceof W&&e.anchor==this.anchor}toJSON(){return{type:"node",anchor:this.anchor}}getBookmark(){return new Qs(this.anchor)}static fromJSON(e,t){if(typeof t.anchor!="number")throw new RangeError("Invalid input for NodeSelection.fromJSON");return new W(e.resolve(t.anchor))}static create(e,t){return new W(e.resolve(t))}static isSelectable(e){return!e.isText&&e.type.spec.selectable!==!1}}W.prototype.visible=!1,Z.jsonID("node",W);class Qs{constructor(e){this.anchor=e}map(e){let{deleted:t,pos:n}=e.mapResult(this.anchor);return t?new ha(n,n):new Qs(n)}resolve(e){let t=e.resolve(this.anchor),n=t.nodeAfter;return n&&W.isSelectable(n)?new W(t):Z.near(t)}}class Ze extends Z{constructor(e){super(e.resolve(0),e.resolve(e.content.size))}replace(e,t=N.empty){if(t==N.empty){e.delete(0,e.doc.content.size);let n=Z.atStart(e.doc);n.eq(e.selection)||e.setSelection(n)}else super.replace(e,t)}toJSON(){return{type:"all"}}static fromJSON(e){return new Ze(e)}map(e){return new Ze(e)}eq(e){return e instanceof Ze}getBookmark(){return ag}}Z.jsonID("all",Ze);const ag={map(){return this},resolve(o){return new Ze(o)}};function Ho(o,e,t,n,a,s=!1){if(e.inlineContent)return J.create(o,t);for(let i=n-(a>0?0:1);a>0?i<e.childCount:i>=0;i+=a){let r=e.child(i);if(r.isAtom){if(!s&&W.isSelectable(r))return W.create(o,t-(a<0?r.nodeSize:0))}else{let l=Ho(o,r,t+a,a<0?r.childCount:0,a,s);if(l)return l}t+=r.nodeSize*a}return null}function Jl(o,e,t){let n=o.steps.length-1;if(n<e)return;let a=o.steps[n];if(!(a instanceof we||a instanceof Ie))return;let s=o.mapping.maps[n],i;s.forEach((r,l,p,c)=>{i==null&&(i=c)}),o.setSelection(Z.near(o.doc.resolve(i),t))}const Yl=1,Xl=2,Zl=4;class sg extends Ul{constructor(e){super(e.doc),this.curSelectionFor=0,this.updated=0,this.meta=Object.create(null),this.time=Date.now(),this.curSelection=e.selection,this.storedMarks=e.storedMarks}get selection(){return this.curSelectionFor<this.steps.length&&(this.curSelection=this.curSelection.map(this.doc,this.mapping.slice(this.curSelectionFor)),this.curSelectionFor=this.steps.length),this.curSelection}setSelection(e){if(e.$from.doc!=this.doc)throw new RangeError("Selection passed to setSelection must point at the current document");return this.curSelection=e,this.curSelectionFor=this.steps.length,this.updated=(this.updated|Yl)&-3,this.storedMarks=null,this}get selectionSet(){return(this.updated&Yl)>0}setStoredMarks(e){return this.storedMarks=e,this.updated|=Xl,this}ensureMarks(e){return pe.sameSet(this.storedMarks||this.selection.$from.marks(),e)||this.setStoredMarks(e),this}addStoredMark(e){return this.ensureMarks(e.addToSet(this.storedMarks||this.selection.$head.marks()))}removeStoredMark(e){return this.ensureMarks(e.removeFromSet(this.storedMarks||this.selection.$head.marks()))}get storedMarksSet(){return(this.updated&Xl)>0}addStep(e,t){super.addStep(e,t),this.updated=this.updated&-3,this.storedMarks=null}setTime(e){return this.time=e,this}replaceSelection(e){return this.selection.replace(this,e),this}replaceSelectionWith(e,t=!0){let n=this.selection;return t&&(e=e.mark(this.storedMarks||(n.empty?n.$from.marks():n.$from.marksAcross(n.$to)||pe.none))),n.replaceWith(this,e),this}deleteSelection(){return this.selection.replace(this),this}insertText(e,t,n){let a=this.doc.type.schema;if(t==null)return e?this.replaceSelectionWith(a.text(e),!0):this.deleteSelection();{if(n==null&&(n=t),n=n??t,!e)return this.deleteRange(t,n);let s=this.storedMarks;if(!s){let i=this.doc.resolve(t);s=n==t?i.marks():i.marksAcross(this.doc.resolve(n))}return this.replaceRangeWith(t,n,a.text(e,s)),this.selection.empty||this.setSelection(Z.near(this.selection.$to)),this}}setMeta(e,t){return this.meta[typeof e=="string"?e:e.key]=t,this}getMeta(e){return this.meta[typeof e=="string"?e:e.key]}get isGeneric(){for(let e in this.meta)return!1;return!0}scrollIntoView(){return this.updated|=Zl,this}get scrolledIntoView(){return(this.updated&Zl)>0}}function Ql(o,e){return!e||!o?o:o.bind(e)}class kn{constructor(e,t,n){this.name=e,this.init=Ql(t.init,n),this.apply=Ql(t.apply,n)}}const ig=[new kn("doc",{init(o){return o.doc||o.schema.topNodeType.createAndFill()},apply(o){return o.doc}}),new kn("selection",{init(o,e){return o.selection||Z.atStart(e.doc)},apply(o){return o.selection}}),new kn("storedMarks",{init(o){return o.storedMarks||null},apply(o,e,t,n){return n.selection.$cursor?o.storedMarks:null}}),new kn("scrollToSelection",{init(){return 0},apply(o,e){return o.scrolledIntoView?e+1:e}})];class ei{constructor(e,t){this.schema=e,this.plugins=[],this.pluginsByKey=Object.create(null),this.fields=ig.slice(),t&&t.forEach(n=>{if(this.pluginsByKey[n.key])throw new RangeError("Adding different instances of a keyed plugin ("+n.key+")");this.plugins.push(n),this.pluginsByKey[n.key]=n,n.spec.state&&this.fields.push(new kn(n.key,n.spec.state,n))})}}class Vo{constructor(e){this.config=e}get schema(){return this.config.schema}get plugins(){return this.config.plugins}apply(e){return this.applyTransaction(e).state}filterTransaction(e,t=-1){for(let n=0;n<this.config.plugins.length;n++)if(n!=t){let a=this.config.plugins[n];if(a.spec.filterTransaction&&!a.spec.filterTransaction.call(a,e,this))return!1}return!0}applyTransaction(e){if(!this.filterTransaction(e))return{state:this,transactions:[]};let t=[e],n=this.applyInner(e),a=null;for(;;){let s=!1;for(let i=0;i<this.config.plugins.length;i++){let r=this.config.plugins[i];if(r.spec.appendTransaction){let l=a?a[i].n:0,p=a?a[i].state:this,c=l<t.length&&r.spec.appendTransaction.call(r,l?t.slice(l):t,p,n);if(c&&n.filterTransaction(c,i)){if(c.setMeta("appendedTransaction",e),!a){a=[];for(let m=0;m<this.config.plugins.length;m++)a.push(m<i?{state:n,n:t.length}:{state:this,n:0})}t.push(c),n=n.applyInner(c),s=!0}a&&(a[i]={state:n,n:t.length})}}if(!s)return{state:n,transactions:t}}}applyInner(e){if(!e.before.eq(this.doc))throw new RangeError("Applying a mismatched transaction");let t=new Vo(this.config),n=this.config.fields;for(let a=0;a<n.length;a++){let s=n[a];t[s.name]=s.apply(e,this[s.name],this,t)}return t}get tr(){return new sg(this)}static create(e){let t=new ei(e.doc?e.doc.type.schema:e.schema,e.plugins),n=new Vo(t);for(let a=0;a<t.fields.length;a++)n[t.fields[a].name]=t.fields[a].init(e,n);return n}reconfigure(e){let t=new ei(this.schema,e.plugins),n=t.fields,a=new Vo(t);for(let s=0;s<n.length;s++){let i=n[s].name;a[i]=this.hasOwnProperty(i)?this[i]:n[s].init(e,a)}return a}toJSON(e){let t={doc:this.doc.toJSON(),selection:this.selection.toJSON()};if(this.storedMarks&&(t.storedMarks=this.storedMarks.map(n=>n.toJSON())),e&&typeof e=="object")for(let n in e){if(n=="doc"||n=="selection")throw new RangeError("The JSON fields `doc` and `selection` are reserved");let a=e[n],s=a.spec.state;s&&s.toJSON&&(t[n]=s.toJSON.call(a,this[a.key]))}return t}static fromJSON(e,t,n){if(!t)throw new RangeError("Invalid input for EditorState.fromJSON");if(!e.schema)throw new RangeError("Required config field 'schema' missing");let a=new ei(e.schema,e.plugins),s=new Vo(a);return a.fields.forEach(i=>{if(i.name=="doc")s.doc=qt.fromJSON(e.schema,t.doc);else if(i.name=="selection")s.selection=Z.fromJSON(s.doc,t.selection);else if(i.name=="storedMarks")t.storedMarks&&(s.storedMarks=t.storedMarks.map(e.schema.markFromJSON));else{if(n)for(let r in n){let l=n[r],p=l.spec.state;if(l.key==i.name&&p&&p.fromJSON&&Object.prototype.hasOwnProperty.call(t,r)){s[i.name]=p.fromJSON.call(l,e,t[r],s);return}}s[i.name]=i.init(e,s)}}),s}}function ep(o,e,t){for(let n in o){let a=o[n];a instanceof Function?a=a.bind(e):n=="handleDOMEvents"&&(a=ep(a,e,{})),t[n]=a}return t}class ue{constructor(e){this.spec=e,this.props={},e.props&&ep(e.props,this,this.props),this.key=e.key?e.key.key:tp("plugin")}getState(e){return e[this.key]}}const ti=Object.create(null);function tp(o){return o in ti?o+"$"+ ++ti[o]:(ti[o]=0,o+"$")}class ye{constructor(e="key"){this.key=tp(e)}get(e){return e.config.pluginsByKey[this.key]}getState(e){return e[this.key]}}const Me=function(o){for(var e=0;;e++)if(o=o.previousSibling,!o)return e},yn=function(o){let e=o.assignedSlot||o.parentNode;return e&&e.nodeType==11?e.host:e};let oi=null;const At=function(o,e,t){let n=oi||(oi=document.createRange());return n.setEnd(o,t??o.nodeValue.length),n.setStart(o,e||0),n},rg=function(){oi=null},jo=function(o,e,t,n){return t&&(op(o,e,t,n,-1)||op(o,e,t,n,1))},lg=/^(img|br|input|textarea|hr)$/i;function op(o,e,t,n,a){for(;;){if(o==t&&e==n)return!0;if(e==(a<0?0:Qe(o))){let s=o.parentNode;if(!s||s.nodeType!=1||_n(o)||lg.test(o.nodeName)||o.contentEditable=="false")return!1;e=Me(o)+(a<0?0:1),o=s}else if(o.nodeType==1){if(o=o.childNodes[e+(a<0?-1:0)],o.contentEditable=="false")return!1;e=a<0?Qe(o):0}else return!1}}function Qe(o){return o.nodeType==3?o.nodeValue.length:o.childNodes.length}function pg(o,e){for(;;){if(o.nodeType==3&&e)return o;if(o.nodeType==1&&e>0){if(o.contentEditable=="false")return null;o=o.childNodes[e-1],e=Qe(o)}else if(o.parentNode&&!_n(o))e=Me(o),o=o.parentNode;else return null}}function cg(o,e){for(;;){if(o.nodeType==3&&e<o.nodeValue.length)return o;if(o.nodeType==1&&e<o.childNodes.length){if(o.contentEditable=="false")return null;o=o.childNodes[e],e=0}else if(o.parentNode&&!_n(o))e=Me(o)+1,o=o.parentNode;else return null}}function mg(o,e,t){for(let n=e==0,a=e==Qe(o);n||a;){if(o==t)return!0;let s=Me(o);if(o=o.parentNode,!o)return!1;n=n&&s==0,a=a&&s==Qe(o)}}function _n(o){let e;for(let t=o;t&&!(e=t.pmViewDesc);t=t.parentNode);return e&&e.node&&e.node.isBlock&&(e.dom==o||e.contentDOM==o)}const ba=function(o){return o.focusNode&&jo(o.focusNode,o.focusOffset,o.anchorNode,o.anchorOffset)};function vo(o,e){let t=document.createEvent("Event");return t.initEvent("keydown",!0,!0),t.keyCode=o,t.key=t.code=e,t}function dg(o){let e=o.activeElement;for(;e&&e.shadowRoot;)e=e.shadowRoot.activeElement;return e}function ug(o,e,t){if(o.caretPositionFromPoint)try{let n=o.caretPositionFromPoint(e,t);if(n)return{node:n.offsetNode,offset:Math.min(Qe(n.offsetNode),n.offset)}}catch{}if(o.caretRangeFromPoint){let n=o.caretRangeFromPoint(e,t);if(n)return{node:n.startContainer,offset:Math.min(Qe(n.startContainer),n.startOffset)}}}const vt=typeof navigator<"u"?navigator:null,np=typeof document<"u"?document:null,Jt=vt&&vt.userAgent||"",ni=/Edge\/(\d+)/.exec(Jt),ap=/MSIE \d/.exec(Jt),ai=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(Jt),qe=!!(ap||ai||ni),Yt=ap?document.documentMode:ai?+ai[1]:ni?+ni[1]:0,ft=!qe&&/gecko\/(\d+)/i.test(Jt);ft&&+(/Firefox\/(\d+)/.exec(Jt)||[0,0])[1];const si=!qe&&/Chrome\/(\d+)/.exec(Jt),Te=!!si,sp=si?+si[1]:0,Re=!qe&&!!vt&&/Apple Computer/.test(vt.vendor),qo=Re&&(/Mobile\/\w+/.test(Jt)||!!vt&&vt.maxTouchPoints>2),et=qo||(vt?/Mac/.test(vt.platform):!1),gg=vt?/Win/.test(vt.platform):!1,ht=/Android \d/.test(Jt),Dn=!!np&&"webkitFontSmoothing"in np.documentElement.style,fg=Dn?+(/\bAppleWebKit\/(\d+)/.exec(navigator.userAgent)||[0,0])[1]:0;function hg(o){let e=o.defaultView&&o.defaultView.visualViewport;return e?{left:0,right:e.width,top:0,bottom:e.height}:{left:0,right:o.documentElement.clientWidth,top:0,bottom:o.documentElement.clientHeight}}function Tt(o,e){return typeof o=="number"?o:o[e]}function bg(o){let e=o.getBoundingClientRect(),t=e.width/o.offsetWidth||1,n=e.height/o.offsetHeight||1;return{left:e.left,right:e.left+o.clientWidth*t,top:e.top,bottom:e.top+o.clientHeight*n}}function ip(o,e,t){let n=o.someProp("scrollThreshold")||0,a=o.someProp("scrollMargin")||5,s=o.dom.ownerDocument;for(let i=t||o.dom;i;i=yn(i)){if(i.nodeType!=1)continue;let r=i,l=r==s.body,p=l?hg(s):bg(r),c=0,m=0;if(e.top<p.top+Tt(n,"top")?m=-(p.top-e.top+Tt(a,"top")):e.bottom>p.bottom-Tt(n,"bottom")&&(m=e.bottom-e.top>p.bottom-p.top?e.top+Tt(a,"top")-p.top:e.bottom-p.bottom+Tt(a,"bottom")),e.left<p.left+Tt(n,"left")?c=-(p.left-e.left+Tt(a,"left")):e.right>p.right-Tt(n,"right")&&(c=e.right-p.right+Tt(a,"right")),c||m)if(l)s.defaultView.scrollBy(c,m);else{let d=r.scrollLeft,u=r.scrollTop;m&&(r.scrollTop+=m),c&&(r.scrollLeft+=c);let g=r.scrollLeft-d,h=r.scrollTop-u;e={left:e.left-g,top:e.top-h,right:e.right-g,bottom:e.bottom-h}}if(l||/^(fixed|sticky)$/.test(getComputedStyle(i).position))break}}function jg(o){let e=o.dom.getBoundingClientRect(),t=Math.max(0,e.top),n,a;for(let s=(e.left+e.right)/2,i=t+1;i<Math.min(innerHeight,e.bottom);i+=5){let r=o.root.elementFromPoint(s,i);if(!r||r==o.dom||!o.dom.contains(r))continue;let l=r.getBoundingClientRect();if(l.top>=t-20){n=r,a=l.top;break}}return{refDOM:n,refTop:a,stack:rp(o.dom)}}function rp(o){let e=[],t=o.ownerDocument;for(let n=o;n&&(e.push({dom:n,top:n.scrollTop,left:n.scrollLeft}),o!=t);n=yn(n));return e}function vg({refDOM:o,refTop:e,stack:t}){let n=o?o.getBoundingClientRect().top:0;lp(t,n==0?0:n-e)}function lp(o,e){for(let t=0;t<o.length;t++){let{dom:n,top:a,left:s}=o[t];n.scrollTop!=a+e&&(n.scrollTop=a+e),n.scrollLeft!=s&&(n.scrollLeft=s)}}let Wo=null;function kg(o){if(o.setActive)return o.setActive();if(Wo)return o.focus(Wo);let e=rp(o);o.focus(Wo==null?{get preventScroll(){return Wo={preventScroll:!0},!0}}:void 0),Wo||(Wo=!1,lp(e,0))}function pp(o,e){let t,n=2e8,a,s=0,i=e.top,r=e.top,l,p;for(let c=o.firstChild,m=0;c;c=c.nextSibling,m++){let d;if(c.nodeType==1)d=c.getClientRects();else if(c.nodeType==3)d=At(c).getClientRects();else continue;for(let u=0;u<d.length;u++){let g=d[u];if(g.top<=i&&g.bottom>=r){i=Math.max(g.bottom,i),r=Math.min(g.top,r);let h=g.left>e.left?g.left-e.left:g.right<e.left?e.left-g.right:0;if(h<n){t=c,n=h,a=h&&t.nodeType==3?{left:g.right<e.left?g.right:g.left,top:e.top}:e,c.nodeType==1&&h&&(s=m+(e.left>=(g.left+g.right)/2?1:0));continue}}else g.top>e.top&&!l&&g.left<=e.left&&g.right>=e.left&&(l=c,p={left:Math.max(g.left,Math.min(g.right,e.left)),top:g.top});!t&&(e.left>=g.right&&e.top>=g.top||e.left>=g.left&&e.top>=g.bottom)&&(s=m+1)}}return!t&&l&&(t=l,a=p,n=0),t&&t.nodeType==3?yg(t,a):!t||n&&t.nodeType==1?{node:o,offset:s}:pp(t,a)}function yg(o,e){let t=o.nodeValue.length,n=document.createRange();for(let a=0;a<t;a++){n.setEnd(o,a+1),n.setStart(o,a);let s=Xt(n,1);if(s.top!=s.bottom&&ii(e,s))return{node:o,offset:a+(e.left>=(s.left+s.right)/2?1:0)}}return{node:o,offset:0}}function ii(o,e){return o.left>=e.left-1&&o.left<=e.right+1&&o.top>=e.top-1&&o.top<=e.bottom+1}function _g(o,e){let t=o.parentNode;return t&&/^li$/i.test(t.nodeName)&&e.left<o.getBoundingClientRect().left?t:o}function Dg(o,e,t){let{node:n,offset:a}=pp(e,t),s=-1;if(n.nodeType==1&&!n.firstChild){let i=n.getBoundingClientRect();s=i.left!=i.right&&t.left>(i.left+i.right)/2?1:-1}return o.docView.posFromDOM(n,a,s)}function wg(o,e,t,n){let a=-1;for(let s=e,i=!1;s!=o.dom;){let r=o.docView.nearestDesc(s,!0);if(!r)return null;if(r.dom.nodeType==1&&(r.node.isBlock&&r.parent||!r.contentDOM)){let l=r.dom.getBoundingClientRect();if(r.node.isBlock&&r.parent&&(!i&&l.left>n.left||l.top>n.top?a=r.posBefore:(!i&&l.right<n.left||l.bottom<n.top)&&(a=r.posAfter),i=!0),!r.contentDOM&&a<0&&!r.node.isText)return(r.node.isBlock?n.top<(l.top+l.bottom)/2:n.left<(l.left+l.right)/2)?r.posBefore:r.posAfter}s=r.dom.parentNode}return a>-1?a:o.docView.posFromDOM(e,t,-1)}function cp(o,e,t){let n=o.childNodes.length;if(n&&t.top<t.bottom)for(let a=Math.max(0,Math.min(n-1,Math.floor(n*(e.top-t.top)/(t.bottom-t.top))-2)),s=a;;){let i=o.childNodes[s];if(i.nodeType==1){let r=i.getClientRects();for(let l=0;l<r.length;l++){let p=r[l];if(ii(e,p))return cp(i,e,p)}}if((s=(s+1)%n)==a)break}return o}function Ig(o,e){let t=o.dom.ownerDocument,n,a=0,s=ug(t,e.left,e.top);s&&({node:n,offset:a}=s);let i=(o.root.elementFromPoint?o.root:t).elementFromPoint(e.left,e.top),r;if(!i||!o.dom.contains(i.nodeType!=1?i.parentNode:i)){let p=o.dom.getBoundingClientRect();if(!ii(e,p)||(i=cp(o.dom,e,p),!i))return null}if(Re)for(let p=i;n&&p;p=yn(p))p.draggable&&(n=void 0);if(i=_g(i,e),n){if(ft&&n.nodeType==1&&(a=Math.min(a,n.childNodes.length),a<n.childNodes.length)){let c=n.childNodes[a],m;c.nodeName=="IMG"&&(m=c.getBoundingClientRect()).right<=e.left&&m.bottom>e.top&&a++}let p;Dn&&a&&n.nodeType==1&&(p=n.childNodes[a-1]).nodeType==1&&p.contentEditable=="false"&&p.getBoundingClientRect().top>=e.top&&a--,n==o.dom&&a==n.childNodes.length-1&&n.lastChild.nodeType==1&&e.top>n.lastChild.getBoundingClientRect().bottom?r=o.state.doc.content.size:(a==0||n.nodeType!=1||n.childNodes[a-1].nodeName!="BR")&&(r=wg(o,n,a,e))}r==null&&(r=Dg(o,i,e));let l=o.docView.nearestDesc(i,!0);return{pos:r,inside:l?l.posAtStart-l.border:-1}}function mp(o){return o.top<o.bottom||o.left<o.right}function Xt(o,e){let t=o.getClientRects();if(t.length){let n=t[e<0?0:t.length-1];if(mp(n))return n}return Array.prototype.find.call(t,mp)||o.getBoundingClientRect()}const Eg=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/;function dp(o,e,t){let{node:n,offset:a,atom:s}=o.docView.domFromPos(e,t<0?-1:1),i=Dn||ft;if(n.nodeType==3)if(i&&(Eg.test(n.nodeValue)||(t<0?!a:a==n.nodeValue.length))){let l=Xt(At(n,a,a),t);if(ft&&a&&/\s/.test(n.nodeValue[a-1])&&a<n.nodeValue.length){let p=Xt(At(n,a-1,a-1),-1);if(p.top==l.top){let c=Xt(At(n,a,a+1),-1);if(c.top!=l.top)return wn(c,c.left<p.left)}}return l}else{let l=a,p=a,c=t<0?1:-1;return t<0&&!a?(p++,c=-1):t>=0&&a==n.nodeValue.length?(l--,c=1):t<0?l--:p++,wn(Xt(At(n,l,p),c),c<0)}if(!o.state.doc.resolve(e-(s||0)).parent.inlineContent){if(s==null&&a&&(t<0||a==Qe(n))){let l=n.childNodes[a-1];if(l.nodeType==1)return ri(l.getBoundingClientRect(),!1)}if(s==null&&a<Qe(n)){let l=n.childNodes[a];if(l.nodeType==1)return ri(l.getBoundingClientRect(),!0)}return ri(n.getBoundingClientRect(),t>=0)}if(s==null&&a&&(t<0||a==Qe(n))){let l=n.childNodes[a-1],p=l.nodeType==3?At(l,Qe(l)-(i?0:1)):l.nodeType==1&&(l.nodeName!="BR"||!l.nextSibling)?l:null;if(p)return wn(Xt(p,1),!1)}if(s==null&&a<Qe(n)){let l=n.childNodes[a];for(;l.pmViewDesc&&l.pmViewDesc.ignoreForCoords;)l=l.nextSibling;let p=l?l.nodeType==3?At(l,0,i?0:1):l.nodeType==1?l:null:null;if(p)return wn(Xt(p,-1),!0)}return wn(Xt(n.nodeType==3?At(n):n,-t),t>=0)}function wn(o,e){if(o.width==0)return o;let t=e?o.left:o.right;return{top:o.top,bottom:o.bottom,left:t,right:t}}function ri(o,e){if(o.height==0)return o;let t=e?o.top:o.bottom;return{top:t,bottom:t,left:o.left,right:o.right}}function up(o,e,t){let n=o.state,a=o.root.activeElement;n!=e&&o.updateState(e),a!=o.dom&&o.focus();try{return t()}finally{n!=e&&o.updateState(n),a!=o.dom&&a&&a.focus()}}function Cg(o,e,t){let n=e.selection,a=t=="up"?n.$from:n.$to;return up(o,e,()=>{let{node:s}=o.docView.domFromPos(a.pos,t=="up"?-1:1);for(;;){let r=o.docView.nearestDesc(s,!0);if(!r)break;if(r.node.isBlock){s=r.contentDOM||r.dom;break}s=r.dom.parentNode}let i=dp(o,a.pos,1);for(let r=s.firstChild;r;r=r.nextSibling){let l;if(r.nodeType==1)l=r.getClientRects();else if(r.nodeType==3)l=At(r,0,r.nodeValue.length).getClientRects();else continue;for(let p=0;p<l.length;p++){let c=l[p];if(c.bottom>c.top+1&&(t=="up"?i.top-c.top>(c.bottom-i.top)*2:c.bottom-i.bottom>(i.bottom-c.top)*2))return!1}}return!0})}const xg=/[\u0590-\u08ac]/;function Sg(o,e,t){let{$head:n}=e.selection;if(!n.parent.isTextblock)return!1;let a=n.parentOffset,s=!a,i=a==n.parent.content.size,r=o.domSelection();return r?!xg.test(n.parent.textContent)||!r.modify?t=="left"||t=="backward"?s:i:up(o,e,()=>{let{focusNode:l,focusOffset:p,anchorNode:c,anchorOffset:m}=o.domSelectionRange(),d=r.caretBidiLevel;r.modify("move",t,"character");let u=n.depth?o.docView.domAfterPos(n.before()):o.dom,{focusNode:g,focusOffset:h}=o.domSelectionRange(),b=g&&!u.contains(g.nodeType==1?g:g.parentNode)||l==g&&p==h;try{r.collapse(c,m),l&&(l!=c||p!=m)&&r.extend&&r.extend(l,p)}catch{}return d!=null&&(r.caretBidiLevel=d),b}):n.pos==n.start()||n.pos==n.end()}let gp=null,fp=null,hp=!1;function Mg(o,e,t){return gp==e&&fp==t?hp:(gp=e,fp=t,hp=t=="up"||t=="down"?Cg(o,e,t):Sg(o,e,t))}const tt=0,bp=1,ko=2,kt=3;class In{constructor(e,t,n,a){this.parent=e,this.children=t,this.dom=n,this.contentDOM=a,this.dirty=tt,n.pmViewDesc=this}matchesWidget(e){return!1}matchesMark(e){return!1}matchesNode(e,t,n){return!1}matchesHack(e){return!1}parseRule(){return null}stopEvent(e){return!1}get size(){let e=0;for(let t=0;t<this.children.length;t++)e+=this.children[t].size;return e}get border(){return 0}destroy(){this.parent=void 0,this.dom.pmViewDesc==this&&(this.dom.pmViewDesc=void 0);for(let e=0;e<this.children.length;e++)this.children[e].destroy()}posBeforeChild(e){for(let t=0,n=this.posAtStart;;t++){let a=this.children[t];if(a==e)return n;n+=a.size}}get posBefore(){return this.parent.posBeforeChild(this)}get posAtStart(){return this.parent?this.parent.posBeforeChild(this)+this.border:0}get posAfter(){return this.posBefore+this.size}get posAtEnd(){return this.posAtStart+this.size-2*this.border}localPosFromDOM(e,t,n){if(this.contentDOM&&this.contentDOM.contains(e.nodeType==1?e:e.parentNode))if(n<0){let s,i;if(e==this.contentDOM)s=e.childNodes[t-1];else{for(;e.parentNode!=this.contentDOM;)e=e.parentNode;s=e.previousSibling}for(;s&&!((i=s.pmViewDesc)&&i.parent==this);)s=s.previousSibling;return s?this.posBeforeChild(i)+i.size:this.posAtStart}else{let s,i;if(e==this.contentDOM)s=e.childNodes[t];else{for(;e.parentNode!=this.contentDOM;)e=e.parentNode;s=e.nextSibling}for(;s&&!((i=s.pmViewDesc)&&i.parent==this);)s=s.nextSibling;return s?this.posBeforeChild(i):this.posAtEnd}let a;if(e==this.dom&&this.contentDOM)a=t>Me(this.contentDOM);else if(this.contentDOM&&this.contentDOM!=this.dom&&this.dom.contains(this.contentDOM))a=e.compareDocumentPosition(this.contentDOM)&2;else if(this.dom.firstChild){if(t==0)for(let s=e;;s=s.parentNode){if(s==this.dom){a=!1;break}if(s.previousSibling)break}if(a==null&&t==e.childNodes.length)for(let s=e;;s=s.parentNode){if(s==this.dom){a=!0;break}if(s.nextSibling)break}}return a??n>0?this.posAtEnd:this.posAtStart}nearestDesc(e,t=!1){for(let n=!0,a=e;a;a=a.parentNode){let s=this.getDesc(a),i;if(s&&(!t||s.node))if(n&&(i=s.nodeDOM)&&!(i.nodeType==1?i.contains(e.nodeType==1?e:e.parentNode):i==e))n=!1;else return s}}getDesc(e){let t=e.pmViewDesc;for(let n=t;n;n=n.parent)if(n==this)return t}posFromDOM(e,t,n){for(let a=e;a;a=a.parentNode){let s=this.getDesc(a);if(s)return s.localPosFromDOM(e,t,n)}return-1}descAt(e){for(let t=0,n=0;t<this.children.length;t++){let a=this.children[t],s=n+a.size;if(n==e&&s!=n){for(;!a.border&&a.children.length;)a=a.children[0];return a}if(e<s)return a.descAt(e-n-a.border);n=s}}domFromPos(e,t){if(!this.contentDOM)return{node:this.dom,offset:0,atom:e+1};let n=0,a=0;for(let s=0;n<this.children.length;n++){let i=this.children[n],r=s+i.size;if(r>e||i instanceof kp){a=e-s;break}s=r}if(a)return this.children[n].domFromPos(a-this.children[n].border,t);for(let s;n&&!(s=this.children[n-1]).size&&s instanceof jp&&s.side>=0;n--);if(t<=0){let s,i=!0;for(;s=n?this.children[n-1]:null,!(!s||s.dom.parentNode==this.contentDOM);n--,i=!1);return s&&t&&i&&!s.border&&!s.domAtom?s.domFromPos(s.size,t):{node:this.contentDOM,offset:s?Me(s.dom)+1:0}}else{let s,i=!0;for(;s=n<this.children.length?this.children[n]:null,!(!s||s.dom.parentNode==this.contentDOM);n++,i=!1);return s&&i&&!s.border&&!s.domAtom?s.domFromPos(0,t):{node:this.contentDOM,offset:s?Me(s.dom):this.contentDOM.childNodes.length}}}parseRange(e,t,n=0){if(this.children.length==0)return{node:this.contentDOM,from:e,to:t,fromOffset:0,toOffset:this.contentDOM.childNodes.length};let a=-1,s=-1;for(let i=n,r=0;;r++){let l=this.children[r],p=i+l.size;if(a==-1&&e<=p){let c=i+l.border;if(e>=c&&t<=p-l.border&&l.node&&l.contentDOM&&this.contentDOM.contains(l.contentDOM))return l.parseRange(e,t,c);e=i;for(let m=r;m>0;m--){let d=this.children[m-1];if(d.size&&d.dom.parentNode==this.contentDOM&&!d.emptyChildAt(1)){a=Me(d.dom)+1;break}e-=d.size}a==-1&&(a=0)}if(a>-1&&(p>t||r==this.children.length-1)){t=p;for(let c=r+1;c<this.children.length;c++){let m=this.children[c];if(m.size&&m.dom.parentNode==this.contentDOM&&!m.emptyChildAt(-1)){s=Me(m.dom);break}t+=m.size}s==-1&&(s=this.contentDOM.childNodes.length);break}i=p}return{node:this.contentDOM,from:e,to:t,fromOffset:a,toOffset:s}}emptyChildAt(e){if(this.border||!this.contentDOM||!this.children.length)return!1;let t=this.children[e<0?0:this.children.length-1];return t.size==0||t.emptyChildAt(e)}domAfterPos(e){let{node:t,offset:n}=this.domFromPos(e,0);if(t.nodeType!=1||n==t.childNodes.length)throw new RangeError("No node after pos "+e);return t.childNodes[n]}setSelection(e,t,n,a=!1){let s=Math.min(e,t),i=Math.max(e,t);for(let d=0,u=0;d<this.children.length;d++){let g=this.children[d],h=u+g.size;if(s>u&&i<h)return g.setSelection(e-u-g.border,t-u-g.border,n,a);u=h}let r=this.domFromPos(e,e?-1:1),l=t==e?r:this.domFromPos(t,t?-1:1),p=n.getSelection(),c=!1;if((ft||Re)&&e==t){let{node:d,offset:u}=r;if(d.nodeType==3){if(c=!!(u&&d.nodeValue[u-1]==`
|
|
6
|
-
`),c&&u==d.nodeValue.length)for(let g=d,h;g;g=g.parentNode){if(h=g.nextSibling){h.nodeName=="BR"&&(r=l={node:h.parentNode,offset:Me(h)+1});break}let b=g.pmViewDesc;if(b&&b.node&&b.node.isBlock)break}}else{let g=d.childNodes[u-1];c=g&&(g.nodeName=="BR"||g.contentEditable=="false")}}if(ft&&p.focusNode&&p.focusNode!=l.node&&p.focusNode.nodeType==1){let d=p.focusNode.childNodes[p.focusOffset];d&&d.contentEditable=="false"&&(a=!0)}if(!(a||c&&Re)&&jo(r.node,r.offset,p.anchorNode,p.anchorOffset)&&jo(l.node,l.offset,p.focusNode,p.focusOffset))return;let m=!1;if((p.extend||e==t)&&!c){p.collapse(r.node,r.offset);try{e!=t&&p.extend(l.node,l.offset),m=!0}catch{}}if(!m){if(e>t){let u=r;r=l,l=u}let d=document.createRange();d.setEnd(l.node,l.offset),d.setStart(r.node,r.offset),p.removeAllRanges(),p.addRange(d)}}ignoreMutation(e){return!this.contentDOM&&e.type!="selection"}get contentLost(){return this.contentDOM&&this.contentDOM!=this.dom&&!this.dom.contains(this.contentDOM)}markDirty(e,t){for(let n=0,a=0;a<this.children.length;a++){let s=this.children[a],i=n+s.size;if(n==i?e<=i&&t>=n:e<i&&t>n){let r=n+s.border,l=i-s.border;if(e>=r&&t<=l){this.dirty=e==n||t==i?ko:bp,e==r&&t==l&&(s.contentLost||s.dom.parentNode!=this.contentDOM)?s.dirty=kt:s.markDirty(e-r,t-r);return}else s.dirty=s.dom==s.contentDOM&&s.dom.parentNode==this.contentDOM&&!s.children.length?ko:kt}n=i}this.dirty=ko}markParentsDirty(){let e=1;for(let t=this.parent;t;t=t.parent,e++){let n=e==1?ko:bp;t.dirty<n&&(t.dirty=n)}}get domAtom(){return!1}get ignoreForCoords(){return!1}isText(e){return!1}}class jp extends In{constructor(e,t,n,a){let s,i=t.type.toDOM;if(typeof i=="function"&&(i=i(n,()=>{if(!s)return a;if(s.parent)return s.parent.posBeforeChild(s)})),!t.type.spec.raw){if(i.nodeType!=1){let r=document.createElement("span");r.appendChild(i),i=r}i.contentEditable="false",i.classList.add("ProseMirror-widget")}super(e,[],i,null),this.widget=t,this.widget=t,s=this}matchesWidget(e){return this.dirty==tt&&e.type.eq(this.widget.type)}parseRule(){return{ignore:!0}}stopEvent(e){let t=this.widget.spec.stopEvent;return t?t(e):!1}ignoreMutation(e){return e.type!="selection"||this.widget.spec.ignoreSelection}destroy(){this.widget.type.destroy(this.dom),super.destroy()}get domAtom(){return!0}get side(){return this.widget.type.side}}class Fg extends In{constructor(e,t,n,a){super(e,[],t,null),this.textDOM=n,this.text=a}get size(){return this.text.length}localPosFromDOM(e,t){return e!=this.textDOM?this.posAtStart+(t?this.size:0):this.posAtStart+t}domFromPos(e){return{node:this.textDOM,offset:e}}ignoreMutation(e){return e.type==="characterData"&&e.target.nodeValue==e.oldValue}}class yo extends In{constructor(e,t,n,a){super(e,[],n,a),this.mark=t}static create(e,t,n,a){let s=a.nodeViews[t.type.name],i=s&&s(t,a,n);return(!i||!i.dom)&&(i=bo.renderSpec(document,t.type.spec.toDOM(t,n),null,t.attrs)),new yo(e,t,i.dom,i.contentDOM||i.dom)}parseRule(){return this.dirty&kt||this.mark.type.spec.reparseInView?null:{mark:this.mark.type.name,attrs:this.mark.attrs,contentElement:this.contentDOM}}matchesMark(e){return this.dirty!=kt&&this.mark.eq(e)}markDirty(e,t){if(super.markDirty(e,t),this.dirty!=tt){let n=this.parent;for(;!n.node;)n=n.parent;n.dirty<this.dirty&&(n.dirty=this.dirty),this.dirty=tt}}slice(e,t,n){let a=yo.create(this.parent,this.mark,!0,n),s=this.children,i=this.size;t<i&&(s=pi(s,t,i,n)),e>0&&(s=pi(s,0,e,n));for(let r=0;r<s.length;r++)s[r].parent=a;return a.children=s,a}}class Zt extends In{constructor(e,t,n,a,s,i,r,l,p){super(e,[],s,i),this.node=t,this.outerDeco=n,this.innerDeco=a,this.nodeDOM=r}static create(e,t,n,a,s,i){let r=s.nodeViews[t.type.name],l,p=r&&r(t,s,()=>{if(!l)return i;if(l.parent)return l.parent.posBeforeChild(l)},n,a),c=p&&p.dom,m=p&&p.contentDOM;if(t.isText){if(!c)c=document.createTextNode(t.text);else if(c.nodeType!=3)throw new RangeError("Text must be rendered as a DOM text node")}else c||({dom:c,contentDOM:m}=bo.renderSpec(document,t.type.spec.toDOM(t),null,t.attrs));!m&&!t.isText&&c.nodeName!="BR"&&(c.hasAttribute("contenteditable")||(c.contentEditable="false"),t.type.spec.draggable&&(c.draggable=!0));let d=c;return c=Dp(c,n,t),p?l=new Og(e,t,n,a,c,m||null,d,p,s,i+1):t.isText?new ja(e,t,n,a,c,d,s):new Zt(e,t,n,a,c,m||null,d,s,i+1)}parseRule(){if(this.node.type.spec.reparseInView)return null;let e={node:this.node.type.name,attrs:this.node.attrs};if(this.node.type.whitespace=="pre"&&(e.preserveWhitespace="full"),!this.contentDOM)e.getContent=()=>this.node.content;else if(!this.contentLost)e.contentElement=this.contentDOM;else{for(let t=this.children.length-1;t>=0;t--){let n=this.children[t];if(this.dom.contains(n.dom.parentNode)){e.contentElement=n.dom.parentNode;break}}e.contentElement||(e.getContent=()=>x.empty)}return e}matchesNode(e,t,n){return this.dirty==tt&&e.eq(this.node)&&va(t,this.outerDeco)&&n.eq(this.innerDeco)}get size(){return this.node.nodeSize}get border(){return this.node.isLeaf?0:1}updateChildren(e,t){let n=this.node.inlineContent,a=t,s=e.composing?this.localCompositionInfo(e,t):null,i=s&&s.pos>-1?s:null,r=s&&s.pos<0,l=new Tg(this,i&&i.node,e);Rg(this.node,this.innerDeco,(p,c,m)=>{p.spec.marks?l.syncToMarks(p.spec.marks,n,e):p.type.side>=0&&!m&&l.syncToMarks(c==this.node.childCount?pe.none:this.node.child(c).marks,n,e),l.placeWidget(p,e,a)},(p,c,m,d)=>{l.syncToMarks(p.marks,n,e);let u;l.findNodeMatch(p,c,m,d)||r&&e.state.selection.from>a&&e.state.selection.to<a+p.nodeSize&&(u=l.findIndexWithChild(s.node))>-1&&l.updateNodeAt(p,c,m,u,e)||l.updateNextNode(p,c,m,e,d,a)||l.addNode(p,c,m,e,a),a+=p.nodeSize}),l.syncToMarks([],n,e),this.node.isTextblock&&l.addTextblockHacks(),l.destroyRest(),(l.changed||this.dirty==ko)&&(i&&this.protectLocalComposition(e,i),yp(this.contentDOM,this.children,e),qo&&Lg(this.dom))}localCompositionInfo(e,t){let{from:n,to:a}=e.state.selection;if(!(e.state.selection instanceof J)||n<t||a>t+this.node.content.size)return null;let s=e.input.compositionNode;if(!s||!this.dom.contains(s.parentNode))return null;if(this.node.inlineContent){let i=s.nodeValue,r=Pg(this.node.content,i,n-t,a-t);return r<0?null:{node:s,pos:r,text:i}}else return{node:s,pos:-1,text:""}}protectLocalComposition(e,{node:t,pos:n,text:a}){if(this.getDesc(t))return;let s=t;for(;s.parentNode!=this.contentDOM;s=s.parentNode){for(;s.previousSibling;)s.parentNode.removeChild(s.previousSibling);for(;s.nextSibling;)s.parentNode.removeChild(s.nextSibling);s.pmViewDesc&&(s.pmViewDesc=void 0)}let i=new Fg(this,s,t,a);e.input.compositionNodes.push(i),this.children=pi(this.children,n,n+a.length,e,i)}update(e,t,n,a){return this.dirty==kt||!e.sameMarkup(this.node)?!1:(this.updateInner(e,t,n,a),!0)}updateInner(e,t,n,a){this.updateOuterDeco(t),this.node=e,this.innerDeco=n,this.contentDOM&&this.updateChildren(a,this.posAtStart),this.dirty=tt}updateOuterDeco(e){if(va(e,this.outerDeco))return;let t=this.nodeDOM.nodeType!=1,n=this.dom;this.dom=_p(this.dom,this.nodeDOM,li(this.outerDeco,this.node,t),li(e,this.node,t)),this.dom!=n&&(n.pmViewDesc=void 0,this.dom.pmViewDesc=this),this.outerDeco=e}selectNode(){this.nodeDOM.nodeType==1&&this.nodeDOM.classList.add("ProseMirror-selectednode"),(this.contentDOM||!this.node.type.spec.draggable)&&(this.dom.draggable=!0)}deselectNode(){this.nodeDOM.nodeType==1&&(this.nodeDOM.classList.remove("ProseMirror-selectednode"),(this.contentDOM||!this.node.type.spec.draggable)&&this.dom.removeAttribute("draggable"))}get domAtom(){return this.node.isAtom}}function vp(o,e,t,n,a){Dp(n,e,o);let s=new Zt(void 0,o,e,t,n,n,n,a,0);return s.contentDOM&&s.updateChildren(a,0),s}class ja extends Zt{constructor(e,t,n,a,s,i,r){super(e,t,n,a,s,null,i,r,0)}parseRule(){let e=this.nodeDOM.parentNode;for(;e&&e!=this.dom&&!e.pmIsDeco;)e=e.parentNode;return{skip:e||!0}}update(e,t,n,a){return this.dirty==kt||this.dirty!=tt&&!this.inParent()||!e.sameMarkup(this.node)?!1:(this.updateOuterDeco(t),(this.dirty!=tt||e.text!=this.node.text)&&e.text!=this.nodeDOM.nodeValue&&(this.nodeDOM.nodeValue=e.text,a.trackWrites==this.nodeDOM&&(a.trackWrites=null)),this.node=e,this.dirty=tt,!0)}inParent(){let e=this.parent.contentDOM;for(let t=this.nodeDOM;t;t=t.parentNode)if(t==e)return!0;return!1}domFromPos(e){return{node:this.nodeDOM,offset:e}}localPosFromDOM(e,t,n){return e==this.nodeDOM?this.posAtStart+Math.min(t,this.node.text.length):super.localPosFromDOM(e,t,n)}ignoreMutation(e){return e.type!="characterData"&&e.type!="selection"}slice(e,t,n){let a=this.node.cut(e,t),s=document.createTextNode(a.text);return new ja(this.parent,a,this.outerDeco,this.innerDeco,s,s,n)}markDirty(e,t){super.markDirty(e,t),this.dom!=this.nodeDOM&&(e==0||t==this.nodeDOM.nodeValue.length)&&(this.dirty=kt)}get domAtom(){return!1}isText(e){return this.node.text==e}}class kp extends In{parseRule(){return{ignore:!0}}matchesHack(e){return this.dirty==tt&&this.dom.nodeName==e}get domAtom(){return!0}get ignoreForCoords(){return this.dom.nodeName=="IMG"}}class Og extends Zt{constructor(e,t,n,a,s,i,r,l,p,c){super(e,t,n,a,s,i,r,p,c),this.spec=l}update(e,t,n,a){if(this.dirty==kt)return!1;if(this.spec.update){let s=this.spec.update(e,t,n);return s&&this.updateInner(e,t,n,a),s}else return!this.contentDOM&&!e.isLeaf?!1:super.update(e,t,n,a)}selectNode(){this.spec.selectNode?this.spec.selectNode():super.selectNode()}deselectNode(){this.spec.deselectNode?this.spec.deselectNode():super.deselectNode()}setSelection(e,t,n,a){this.spec.setSelection?this.spec.setSelection(e,t,n):super.setSelection(e,t,n,a)}destroy(){this.spec.destroy&&this.spec.destroy(),super.destroy()}stopEvent(e){return this.spec.stopEvent?this.spec.stopEvent(e):!1}ignoreMutation(e){return this.spec.ignoreMutation?this.spec.ignoreMutation(e):super.ignoreMutation(e)}}function yp(o,e,t){let n=o.firstChild,a=!1;for(let s=0;s<e.length;s++){let i=e[s],r=i.dom;if(r.parentNode==o){for(;r!=n;)n=wp(n),a=!0;n=n.nextSibling}else a=!0,o.insertBefore(r,n);if(i instanceof yo){let l=n?n.previousSibling:o.lastChild;yp(i.contentDOM,i.children,t),n=l?l.nextSibling:o.firstChild}}for(;n;)n=wp(n),a=!0;a&&t.trackWrites==o&&(t.trackWrites=null)}const En=function(o){o&&(this.nodeName=o)};En.prototype=Object.create(null);const _o=[new En];function li(o,e,t){if(o.length==0)return _o;let n=t?_o[0]:new En,a=[n];for(let s=0;s<o.length;s++){let i=o[s].type.attrs;if(i){i.nodeName&&a.push(n=new En(i.nodeName));for(let r in i){let l=i[r];l!=null&&(t&&a.length==1&&a.push(n=new En(e.isInline?"span":"div")),r=="class"?n.class=(n.class?n.class+" ":"")+l:r=="style"?n.style=(n.style?n.style+";":"")+l:r!="nodeName"&&(n[r]=l))}}}return a}function _p(o,e,t,n){if(t==_o&&n==_o)return e;let a=e;for(let s=0;s<n.length;s++){let i=n[s],r=t[s];if(s){let l;r&&r.nodeName==i.nodeName&&a!=o&&(l=a.parentNode)&&l.nodeName.toLowerCase()==i.nodeName||(l=document.createElement(i.nodeName),l.pmIsDeco=!0,l.appendChild(a),r=_o[0]),a=l}Ag(a,r||_o[0],i)}return a}function Ag(o,e,t){for(let n in e)n!="class"&&n!="style"&&n!="nodeName"&&!(n in t)&&o.removeAttribute(n);for(let n in t)n!="class"&&n!="style"&&n!="nodeName"&&t[n]!=e[n]&&o.setAttribute(n,t[n]);if(e.class!=t.class){let n=e.class?e.class.split(" ").filter(Boolean):[],a=t.class?t.class.split(" ").filter(Boolean):[];for(let s=0;s<n.length;s++)a.indexOf(n[s])==-1&&o.classList.remove(n[s]);for(let s=0;s<a.length;s++)n.indexOf(a[s])==-1&&o.classList.add(a[s]);o.classList.length==0&&o.removeAttribute("class")}if(e.style!=t.style){if(e.style){let n=/\s*([\w\-\xa1-\uffff]+)\s*:(?:"(?:\\.|[^"])*"|'(?:\\.|[^'])*'|\(.*?\)|[^;])*/g,a;for(;a=n.exec(e.style);)o.style.removeProperty(a[1])}t.style&&(o.style.cssText+=t.style)}}function Dp(o,e,t){return _p(o,o,_o,li(e,t,o.nodeType!=1))}function va(o,e){if(o.length!=e.length)return!1;for(let t=0;t<o.length;t++)if(!o[t].type.eq(e[t].type))return!1;return!0}function wp(o){let e=o.nextSibling;return o.parentNode.removeChild(o),e}class Tg{constructor(e,t,n){this.lock=t,this.view=n,this.index=0,this.stack=[],this.changed=!1,this.top=e,this.preMatch=Ng(e.node.content,e)}destroyBetween(e,t){if(e!=t){for(let n=e;n<t;n++)this.top.children[n].destroy();this.top.children.splice(e,t-e),this.changed=!0}}destroyRest(){this.destroyBetween(this.index,this.top.children.length)}syncToMarks(e,t,n){let a=0,s=this.stack.length>>1,i=Math.min(s,e.length);for(;a<i&&(a==s-1?this.top:this.stack[a+1<<1]).matchesMark(e[a])&&e[a].type.spec.spanning!==!1;)a++;for(;a<s;)this.destroyRest(),this.top.dirty=tt,this.index=this.stack.pop(),this.top=this.stack.pop(),s--;for(;s<e.length;){this.stack.push(this.top,this.index+1);let r=-1;for(let l=this.index;l<Math.min(this.index+3,this.top.children.length);l++){let p=this.top.children[l];if(p.matchesMark(e[s])&&!this.isLocked(p.dom)){r=l;break}}if(r>-1)r>this.index&&(this.changed=!0,this.destroyBetween(this.index,r)),this.top=this.top.children[this.index];else{let l=yo.create(this.top,e[s],t,n);this.top.children.splice(this.index,0,l),this.top=l,this.changed=!0}this.index=0,s++}}findNodeMatch(e,t,n,a){let s=-1,i;if(a>=this.preMatch.index&&(i=this.preMatch.matches[a-this.preMatch.index]).parent==this.top&&i.matchesNode(e,t,n))s=this.top.children.indexOf(i,this.index);else for(let r=this.index,l=Math.min(this.top.children.length,r+5);r<l;r++){let p=this.top.children[r];if(p.matchesNode(e,t,n)&&!this.preMatch.matched.has(p)){s=r;break}}return s<0?!1:(this.destroyBetween(this.index,s),this.index++,!0)}updateNodeAt(e,t,n,a,s){let i=this.top.children[a];return i.dirty==kt&&i.dom==i.contentDOM&&(i.dirty=ko),i.update(e,t,n,s)?(this.destroyBetween(this.index,a),this.index++,!0):!1}findIndexWithChild(e){for(;;){let t=e.parentNode;if(!t)return-1;if(t==this.top.contentDOM){let n=e.pmViewDesc;if(n){for(let a=this.index;a<this.top.children.length;a++)if(this.top.children[a]==n)return a}return-1}e=t}}updateNextNode(e,t,n,a,s,i){for(let r=this.index;r<this.top.children.length;r++){let l=this.top.children[r];if(l instanceof Zt){let p=this.preMatch.matched.get(l);if(p!=null&&p!=s)return!1;let c=l.dom,m,d=this.isLocked(c)&&!(e.isText&&l.node&&l.node.isText&&l.nodeDOM.nodeValue==e.text&&l.dirty!=kt&&va(t,l.outerDeco));if(!d&&l.update(e,t,n,a))return this.destroyBetween(this.index,r),l.dom!=c&&(this.changed=!0),this.index++,!0;if(!d&&(m=this.recreateWrapper(l,e,t,n,a,i)))return this.destroyBetween(this.index,r),this.top.children[this.index]=m,m.contentDOM&&(m.dirty=ko,m.updateChildren(a,i+1),m.dirty=tt),this.changed=!0,this.index++,!0;break}}return!1}recreateWrapper(e,t,n,a,s,i){if(e.dirty||t.isAtom||!e.children.length||!e.node.content.eq(t.content)||!va(n,e.outerDeco)||!a.eq(e.innerDeco))return null;let r=Zt.create(this.top,t,n,a,s,i);if(r.contentDOM){r.children=e.children,e.children=[];for(let l of r.children)l.parent=r}return e.destroy(),r}addNode(e,t,n,a,s){let i=Zt.create(this.top,e,t,n,a,s);i.contentDOM&&i.updateChildren(a,s+1),this.top.children.splice(this.index++,0,i),this.changed=!0}placeWidget(e,t,n){let a=this.index<this.top.children.length?this.top.children[this.index]:null;if(a&&a.matchesWidget(e)&&(e==a.widget||!a.widget.type.toDOM.parentNode))this.index++;else{let s=new jp(this.top,e,t,n);this.top.children.splice(this.index++,0,s),this.changed=!0}}addTextblockHacks(){let e=this.top.children[this.index-1],t=this.top;for(;e instanceof yo;)t=e,e=t.children[t.children.length-1];(!e||!(e instanceof ja)||/\n$/.test(e.node.text)||this.view.requiresGeckoHackNode&&/\s$/.test(e.node.text))&&((Re||Te)&&e&&e.dom.contentEditable=="false"&&this.addHackNode("IMG",t),this.addHackNode("BR",this.top))}addHackNode(e,t){if(t==this.top&&this.index<t.children.length&&t.children[this.index].matchesHack(e))this.index++;else{let n=document.createElement(e);e=="IMG"&&(n.className="ProseMirror-separator",n.alt=""),e=="BR"&&(n.className="ProseMirror-trailingBreak");let a=new kp(this.top,[],n,null);t!=this.top?t.children.push(a):t.children.splice(this.index++,0,a),this.changed=!0}}isLocked(e){return this.lock&&(e==this.lock||e.nodeType==1&&e.contains(this.lock.parentNode))}}function Ng(o,e){let t=e,n=t.children.length,a=o.childCount,s=new Map,i=[];e:for(;a>0;){let r;for(;;)if(n){let p=t.children[n-1];if(p instanceof yo)t=p,n=p.children.length;else{r=p,n--;break}}else{if(t==e)break e;n=t.parent.children.indexOf(t),t=t.parent}let l=r.node;if(l){if(l!=o.child(a-1))break;--a,s.set(r,a),i.push(r)}}return{index:a,matched:s,matches:i.reverse()}}function Bg(o,e){return o.type.side-e.type.side}function Rg(o,e,t,n){let a=e.locals(o),s=0;if(a.length==0){for(let p=0;p<o.childCount;p++){let c=o.child(p);n(c,a,e.forChild(s,c),p),s+=c.nodeSize}return}let i=0,r=[],l=null;for(let p=0;;){let c,m;for(;i<a.length&&a[i].to==s;){let b=a[i++];b.widget&&(c?(m||(m=[c])).push(b):c=b)}if(c)if(m){m.sort(Bg);for(let b=0;b<m.length;b++)t(m[b],p,!!l)}else t(c,p,!!l);let d,u;if(l)u=-1,d=l,l=null;else if(p<o.childCount)u=p,d=o.child(p++);else break;for(let b=0;b<r.length;b++)r[b].to<=s&&r.splice(b--,1);for(;i<a.length&&a[i].from<=s&&a[i].to>s;)r.push(a[i++]);let g=s+d.nodeSize;if(d.isText){let b=g;i<a.length&&a[i].from<b&&(b=a[i].from);for(let k=0;k<r.length;k++)r[k].to<b&&(b=r[k].to);b<g&&(l=d.cut(b-s),d=d.cut(0,b-s),g=b,u=-1)}else for(;i<a.length&&a[i].to<g;)i++;let h=d.isInline&&!d.isLeaf?r.filter(b=>!b.inline):r.slice();n(d,h,e.forChild(s,d),u),s=g}}function Lg(o){if(o.nodeName=="UL"||o.nodeName=="OL"){let e=o.style.cssText;o.style.cssText=e+"; list-style: square !important",window.getComputedStyle(o).listStyle,o.style.cssText=e}}function Pg(o,e,t,n){for(let a=0,s=0;a<o.childCount&&s<=n;){let i=o.child(a++),r=s;if(s+=i.nodeSize,!i.isText)continue;let l=i.text;for(;a<o.childCount;){let p=o.child(a++);if(s+=p.nodeSize,!p.isText)break;l+=p.text}if(s>=t){if(s>=n&&l.slice(n-e.length-r,n-r)==e)return n-e.length;let p=r<n?l.lastIndexOf(e,n-r-1):-1;if(p>=0&&p+e.length+r>=t)return r+p;if(t==n&&l.length>=n+e.length-r&&l.slice(n-r,n-r+e.length)==e)return n}}return-1}function pi(o,e,t,n,a){let s=[];for(let i=0,r=0;i<o.length;i++){let l=o[i],p=r,c=r+=l.size;p>=t||c<=e?s.push(l):(p<e&&s.push(l.slice(0,e-p,n)),a&&(s.push(a),a=void 0),c>t&&s.push(l.slice(t-p,l.size,n)))}return s}function ci(o,e=null){let t=o.domSelectionRange(),n=o.state.doc;if(!t.focusNode)return null;let a=o.docView.nearestDesc(t.focusNode),s=a&&a.size==0,i=o.docView.posFromDOM(t.focusNode,t.focusOffset,1);if(i<0)return null;let r=n.resolve(i),l,p;if(ba(t)){for(l=i;a&&!a.node;)a=a.parent;let m=a.node;if(a&&m.isAtom&&W.isSelectable(m)&&a.parent&&!(m.isInline&&mg(t.focusNode,t.focusOffset,a.dom))){let d=a.posBefore;p=new W(i==d?r:n.resolve(d))}}else{if(t instanceof o.dom.ownerDocument.defaultView.Selection&&t.rangeCount>1){let m=i,d=i;for(let u=0;u<t.rangeCount;u++){let g=t.getRangeAt(u);m=Math.min(m,o.docView.posFromDOM(g.startContainer,g.startOffset,1)),d=Math.max(d,o.docView.posFromDOM(g.endContainer,g.endOffset,-1))}if(m<0)return null;[l,i]=d==o.state.selection.anchor?[d,m]:[m,d],r=n.resolve(i)}else l=o.docView.posFromDOM(t.anchorNode,t.anchorOffset,1);if(l<0)return null}let c=n.resolve(l);if(!p){let m=e=="pointer"||o.state.selection.head<r.pos&&!s?1:-1;p=di(o,c,r,m)}return p}function Ip(o){return o.editable?o.hasFocus():Op(o)&&document.activeElement&&document.activeElement.contains(o.dom)}function Nt(o,e=!1){let t=o.state.selection;if(Sp(o,t),!!Ip(o)){if(!e&&o.input.mouseDown&&o.input.mouseDown.allowDefault&&Te){let n=o.domSelectionRange(),a=o.domObserver.currentSelection;if(n.anchorNode&&a.anchorNode&&jo(n.anchorNode,n.anchorOffset,a.anchorNode,a.anchorOffset)){o.input.mouseDown.delayedSelectionSync=!0,o.domObserver.setCurSelection();return}}if(o.domObserver.disconnectSelection(),o.cursorWrapper)$g(o);else{let{anchor:n,head:a}=t,s,i;Ep&&!(t instanceof J)&&(t.$from.parent.inlineContent||(s=Cp(o,t.from)),!t.empty&&!t.$from.parent.inlineContent&&(i=Cp(o,t.to))),o.docView.setSelection(n,a,o.root,e),Ep&&(s&&xp(s),i&&xp(i)),t.visible?o.dom.classList.remove("ProseMirror-hideselection"):(o.dom.classList.add("ProseMirror-hideselection"),"onselectionchange"in document&&zg(o))}o.domObserver.setCurSelection(),o.domObserver.connectSelection()}}const Ep=Re||Te&&sp<63;function Cp(o,e){let{node:t,offset:n}=o.docView.domFromPos(e,0),a=n<t.childNodes.length?t.childNodes[n]:null,s=n?t.childNodes[n-1]:null;if(Re&&a&&a.contentEditable=="false")return mi(a);if((!a||a.contentEditable=="false")&&(!s||s.contentEditable=="false")){if(a)return mi(a);if(s)return mi(s)}}function mi(o){return o.contentEditable="true",Re&&o.draggable&&(o.draggable=!1,o.wasDraggable=!0),o}function xp(o){o.contentEditable="false",o.wasDraggable&&(o.draggable=!0,o.wasDraggable=null)}function zg(o){let e=o.dom.ownerDocument;e.removeEventListener("selectionchange",o.input.hideSelectionGuard);let t=o.domSelectionRange(),n=t.anchorNode,a=t.anchorOffset;e.addEventListener("selectionchange",o.input.hideSelectionGuard=()=>{(t.anchorNode!=n||t.anchorOffset!=a)&&(e.removeEventListener("selectionchange",o.input.hideSelectionGuard),setTimeout(()=>{(!Ip(o)||o.state.selection.visible)&&o.dom.classList.remove("ProseMirror-hideselection")},20))})}function $g(o){let e=o.domSelection(),t=document.createRange();if(!e)return;let n=o.cursorWrapper.dom,a=n.nodeName=="IMG";a?t.setStart(n.parentNode,Me(n)+1):t.setStart(n,0),t.collapse(!0),e.removeAllRanges(),e.addRange(t),!a&&!o.state.selection.visible&&qe&&Yt<=11&&(n.disabled=!0,n.disabled=!1)}function Sp(o,e){if(e instanceof W){let t=o.docView.descAt(e.from);t!=o.lastSelectedViewDesc&&(Mp(o),t&&t.selectNode(),o.lastSelectedViewDesc=t)}else Mp(o)}function Mp(o){o.lastSelectedViewDesc&&(o.lastSelectedViewDesc.parent&&o.lastSelectedViewDesc.deselectNode(),o.lastSelectedViewDesc=void 0)}function di(o,e,t,n){return o.someProp("createSelectionBetween",a=>a(o,e,t))||J.between(e,t,n)}function Fp(o){return o.editable&&!o.hasFocus()?!1:Op(o)}function Op(o){let e=o.domSelectionRange();if(!e.anchorNode)return!1;try{return o.dom.contains(e.anchorNode.nodeType==3?e.anchorNode.parentNode:e.anchorNode)&&(o.editable||o.dom.contains(e.focusNode.nodeType==3?e.focusNode.parentNode:e.focusNode))}catch{return!1}}function Hg(o){let e=o.docView.domFromPos(o.state.selection.anchor,0),t=o.domSelectionRange();return jo(e.node,e.offset,t.anchorNode,t.anchorOffset)}function ui(o,e){let{$anchor:t,$head:n}=o.selection,a=e>0?t.max(n):t.min(n),s=a.parent.inlineContent?a.depth?o.doc.resolve(e>0?a.after():a.before()):null:a;return s&&Z.findFrom(s,e)}function Qt(o,e){return o.dispatch(o.state.tr.setSelection(e).scrollIntoView()),!0}function Ap(o,e,t){let n=o.state.selection;if(n instanceof J)if(t.indexOf("s")>-1){let{$head:a}=n,s=a.textOffset?null:e<0?a.nodeBefore:a.nodeAfter;if(!s||s.isText||!s.isLeaf)return!1;let i=o.state.doc.resolve(a.pos+s.nodeSize*(e<0?-1:1));return Qt(o,new J(n.$anchor,i))}else if(n.empty){if(o.endOfTextblock(e>0?"forward":"backward")){let a=ui(o.state,e);return a&&a instanceof W?Qt(o,a):!1}else if(!(et&&t.indexOf("m")>-1)){let a=n.$head,s=a.textOffset?null:e<0?a.nodeBefore:a.nodeAfter,i;if(!s||s.isText)return!1;let r=e<0?a.pos-s.nodeSize:a.pos;return s.isAtom||(i=o.docView.descAt(r))&&!i.contentDOM?W.isSelectable(s)?Qt(o,new W(e<0?o.state.doc.resolve(a.pos-s.nodeSize):a)):Dn?Qt(o,new J(o.state.doc.resolve(e<0?r:r+s.nodeSize))):!1:!1}}else return!1;else{if(n instanceof W&&n.node.isInline)return Qt(o,new J(e>0?n.$to:n.$from));{let a=ui(o.state,e);return a?Qt(o,a):!1}}}function ka(o){return o.nodeType==3?o.nodeValue.length:o.childNodes.length}function Cn(o,e){let t=o.pmViewDesc;return t&&t.size==0&&(e<0||o.nextSibling||o.nodeName!="BR")}function Uo(o,e){return e<0?Vg(o):qg(o)}function Vg(o){let e=o.domSelectionRange(),t=e.focusNode,n=e.focusOffset;if(!t)return;let a,s,i=!1;for(ft&&t.nodeType==1&&n<ka(t)&&Cn(t.childNodes[n],-1)&&(i=!0);;)if(n>0){if(t.nodeType!=1)break;{let r=t.childNodes[n-1];if(Cn(r,-1))a=t,s=--n;else if(r.nodeType==3)t=r,n=t.nodeValue.length;else break}}else{if(Tp(t))break;{let r=t.previousSibling;for(;r&&Cn(r,-1);)a=t.parentNode,s=Me(r),r=r.previousSibling;if(r)t=r,n=ka(t);else{if(t=t.parentNode,t==o.dom)break;n=0}}}i?gi(o,t,n):a&&gi(o,a,s)}function qg(o){let e=o.domSelectionRange(),t=e.focusNode,n=e.focusOffset;if(!t)return;let a=ka(t),s,i;for(;;)if(n<a){if(t.nodeType!=1)break;let r=t.childNodes[n];if(Cn(r,1))s=t,i=++n;else break}else{if(Tp(t))break;{let r=t.nextSibling;for(;r&&Cn(r,1);)s=r.parentNode,i=Me(r)+1,r=r.nextSibling;if(r)t=r,n=0,a=ka(t);else{if(t=t.parentNode,t==o.dom)break;n=a=0}}}s&&gi(o,s,i)}function Tp(o){let e=o.pmViewDesc;return e&&e.node&&e.node.isBlock}function Wg(o,e){for(;o&&e==o.childNodes.length&&!_n(o);)e=Me(o)+1,o=o.parentNode;for(;o&&e<o.childNodes.length;){let t=o.childNodes[e];if(t.nodeType==3)return t;if(t.nodeType==1&&t.contentEditable=="false")break;o=t,e=0}}function Ug(o,e){for(;o&&!e&&!_n(o);)e=Me(o),o=o.parentNode;for(;o&&e;){let t=o.childNodes[e-1];if(t.nodeType==3)return t;if(t.nodeType==1&&t.contentEditable=="false")break;o=t,e=o.childNodes.length}}function gi(o,e,t){if(e.nodeType!=3){let s,i;(i=Wg(e,t))?(e=i,t=0):(s=Ug(e,t))&&(e=s,t=s.nodeValue.length)}let n=o.domSelection();if(!n)return;if(ba(n)){let s=document.createRange();s.setEnd(e,t),s.setStart(e,t),n.removeAllRanges(),n.addRange(s)}else n.extend&&n.extend(e,t);o.domObserver.setCurSelection();let{state:a}=o;setTimeout(()=>{o.state==a&&Nt(o)},50)}function Np(o,e){let t=o.state.doc.resolve(e);if(!(Te||gg)&&t.parent.inlineContent){let a=o.coordsAtPos(e);if(e>t.start()){let s=o.coordsAtPos(e-1),i=(s.top+s.bottom)/2;if(i>a.top&&i<a.bottom&&Math.abs(s.left-a.left)>1)return s.left<a.left?"ltr":"rtl"}if(e<t.end()){let s=o.coordsAtPos(e+1),i=(s.top+s.bottom)/2;if(i>a.top&&i<a.bottom&&Math.abs(s.left-a.left)>1)return s.left>a.left?"ltr":"rtl"}}return getComputedStyle(o.dom).direction=="rtl"?"rtl":"ltr"}function Bp(o,e,t){let n=o.state.selection;if(n instanceof J&&!n.empty||t.indexOf("s")>-1||et&&t.indexOf("m")>-1)return!1;let{$from:a,$to:s}=n;if(!a.parent.inlineContent||o.endOfTextblock(e<0?"up":"down")){let i=ui(o.state,e);if(i&&i instanceof W)return Qt(o,i)}if(!a.parent.inlineContent){let i=e<0?a:s,r=n instanceof Ze?Z.near(i,e):Z.findFrom(i,e);return r?Qt(o,r):!1}return!1}function Rp(o,e){if(!(o.state.selection instanceof J))return!0;let{$head:t,$anchor:n,empty:a}=o.state.selection;if(!t.sameParent(n))return!0;if(!a)return!1;if(o.endOfTextblock(e>0?"forward":"backward"))return!0;let s=!t.textOffset&&(e<0?t.nodeBefore:t.nodeAfter);if(s&&!s.isText){let i=o.state.tr;return e<0?i.delete(t.pos-s.nodeSize,t.pos):i.delete(t.pos,t.pos+s.nodeSize),o.dispatch(i),!0}return!1}function Lp(o,e,t){o.domObserver.stop(),e.contentEditable=t,o.domObserver.start()}function Kg(o){if(!Re||o.state.selection.$head.parentOffset>0)return!1;let{focusNode:e,focusOffset:t}=o.domSelectionRange();if(e&&e.nodeType==1&&t==0&&e.firstChild&&e.firstChild.contentEditable=="false"){let n=e.firstChild;Lp(o,n,"true"),setTimeout(()=>Lp(o,n,"false"),20)}return!1}function Gg(o){let e="";return o.ctrlKey&&(e+="c"),o.metaKey&&(e+="m"),o.altKey&&(e+="a"),o.shiftKey&&(e+="s"),e}function Jg(o,e){let t=e.keyCode,n=Gg(e);if(t==8||et&&t==72&&n=="c")return Rp(o,-1)||Uo(o,-1);if(t==46&&!e.shiftKey||et&&t==68&&n=="c")return Rp(o,1)||Uo(o,1);if(t==13||t==27)return!0;if(t==37||et&&t==66&&n=="c"){let a=t==37?Np(o,o.state.selection.from)=="ltr"?-1:1:-1;return Ap(o,a,n)||Uo(o,a)}else if(t==39||et&&t==70&&n=="c"){let a=t==39?Np(o,o.state.selection.from)=="ltr"?1:-1:1;return Ap(o,a,n)||Uo(o,a)}else{if(t==38||et&&t==80&&n=="c")return Bp(o,-1,n)||Uo(o,-1);if(t==40||et&&t==78&&n=="c")return Kg(o)||Bp(o,1,n)||Uo(o,1);if(n==(et?"m":"c")&&(t==66||t==73||t==89||t==90))return!0}return!1}function Pp(o,e){o.someProp("transformCopied",u=>{e=u(e,o)});let t=[],{content:n,openStart:a,openEnd:s}=e;for(;a>1&&s>1&&n.childCount==1&&n.firstChild.childCount==1;){a--,s--;let u=n.firstChild;t.push(u.type.name,u.attrs!=u.type.defaultAttrs?u.attrs:null),n=u.content}let i=o.someProp("clipboardSerializer")||bo.fromSchema(o.state.schema),r=Kp(),l=r.createElement("div");l.appendChild(i.serializeFragment(n,{document:r}));let p=l.firstChild,c,m=0;for(;p&&p.nodeType==1&&(c=Wp[p.nodeName.toLowerCase()]);){for(let u=c.length-1;u>=0;u--){let g=r.createElement(c[u]);for(;l.firstChild;)g.appendChild(l.firstChild);l.appendChild(g),m++}p=l.firstChild}p&&p.nodeType==1&&p.setAttribute("data-pm-slice",`${a} ${s}${m?` -${m}`:""} ${JSON.stringify(t)}`);let d=o.someProp("clipboardTextSerializer",u=>u(e,o))||e.content.textBetween(0,e.content.size,`
|
|
7
|
-
|
|
8
|
-
`);return{dom:l,text:d,slice:e}}function zp(o,e,t,n,a){let s=a.parent.type.spec.code,i,r;if(!t&&!e)return null;let l=e&&(n||s||!t);if(l){if(o.someProp("transformPastedText",d=>{e=d(e,s||n,o)}),s)return e?new N(x.from(o.state.schema.text(e.replace(/\r\n?/g,`
|
|
9
|
-
`))),0,0):N.empty;let m=o.someProp("clipboardTextParser",d=>d(e,a,n,o));if(m)r=m;else{let d=a.marks(),{schema:u}=o.state,g=bo.fromSchema(u);i=document.createElement("div"),e.split(/(?:\r\n?|\n)+/).forEach(h=>{let b=i.appendChild(document.createElement("p"));h&&b.appendChild(g.serializeNode(u.text(h,d)))})}}else o.someProp("transformPastedHTML",m=>{t=m(t,o)}),i=Qg(t),Dn&&ef(i);let p=i&&i.querySelector("[data-pm-slice]"),c=p&&/^(\d+) (\d+)(?: -(\d+))? (.*)/.exec(p.getAttribute("data-pm-slice")||"");if(c&&c[3])for(let m=+c[3];m>0;m--){let d=i.firstChild;for(;d&&d.nodeType!=1;)d=d.nextSibling;if(!d)break;i=d}if(r||(r=(o.someProp("clipboardParser")||o.someProp("domParser")||Wt.fromSchema(o.state.schema)).parseSlice(i,{preserveWhitespace:!!(l||c),context:a,ruleFromNode(d){return d.nodeName=="BR"&&!d.nextSibling&&d.parentNode&&!Yg.test(d.parentNode.nodeName)?{ignore:!0}:null}})),c)r=tf(qp(r,+c[1],+c[2]),c[4]);else if(r=N.maxOpen(Xg(r.content,a),!0),r.openStart||r.openEnd){let m=0,d=0;for(let u=r.content.firstChild;m<r.openStart&&!u.type.spec.isolating;m++,u=u.firstChild);for(let u=r.content.lastChild;d<r.openEnd&&!u.type.spec.isolating;d++,u=u.lastChild);r=qp(r,m,d)}return o.someProp("transformPasted",m=>{r=m(r,o)}),r}const Yg=/^(a|abbr|acronym|b|cite|code|del|em|i|ins|kbd|label|output|q|ruby|s|samp|span|strong|sub|sup|time|u|tt|var)$/i;function Xg(o,e){if(o.childCount<2)return o;for(let t=e.depth;t>=0;t--){let a=e.node(t).contentMatchAt(e.index(t)),s,i=[];if(o.forEach(r=>{if(!i)return;let l=a.findWrapping(r.type),p;if(!l)return i=null;if(p=i.length&&s.length&&Hp(l,s,r,i[i.length-1],0))i[i.length-1]=p;else{i.length&&(i[i.length-1]=Vp(i[i.length-1],s.length));let c=$p(r,l);i.push(c),a=a.matchType(c.type),s=l}}),i)return x.from(i)}return o}function $p(o,e,t=0){for(let n=e.length-1;n>=t;n--)o=e[n].create(null,x.from(o));return o}function Hp(o,e,t,n,a){if(a<o.length&&a<e.length&&o[a]==e[a]){let s=Hp(o,e,t,n.lastChild,a+1);if(s)return n.copy(n.content.replaceChild(n.childCount-1,s));if(n.contentMatchAt(n.childCount).matchType(a==o.length-1?t.type:o[a+1]))return n.copy(n.content.append(x.from($p(t,o,a+1))))}}function Vp(o,e){if(e==0)return o;let t=o.content.replaceChild(o.childCount-1,Vp(o.lastChild,e-1)),n=o.contentMatchAt(o.childCount).fillBefore(x.empty,!0);return o.copy(t.append(n))}function fi(o,e,t,n,a,s){let i=e<0?o.firstChild:o.lastChild,r=i.content;return o.childCount>1&&(s=0),a<n-1&&(r=fi(r,e,t,n,a+1,s)),a>=t&&(r=e<0?i.contentMatchAt(0).fillBefore(r,s<=a).append(r):r.append(i.contentMatchAt(i.childCount).fillBefore(x.empty,!0))),o.replaceChild(e<0?0:o.childCount-1,i.copy(r))}function qp(o,e,t){return e<o.openStart&&(o=new N(fi(o.content,-1,e,o.openStart,0,o.openEnd),e,o.openEnd)),t<o.openEnd&&(o=new N(fi(o.content,1,t,o.openEnd,0,0),o.openStart,t)),o}const Wp={thead:["table"],tbody:["table"],tfoot:["table"],caption:["table"],colgroup:["table"],col:["table","colgroup"],tr:["table","tbody"],td:["table","tbody","tr"],th:["table","tbody","tr"]};let Up=null;function Kp(){return Up||(Up=document.implementation.createHTMLDocument("title"))}function Zg(o){let e=window.trustedTypes;return e?e.createPolicy("detachedDocument",{createHTML:t=>t}).createHTML(o):o}function Qg(o){let e=/^(\s*<meta [^>]*>)*/.exec(o);e&&(o=o.slice(e[0].length));let t=Kp().createElement("div"),n=/<([a-z][^>\s]+)/i.exec(o),a;if((a=n&&Wp[n[1].toLowerCase()])&&(o=a.map(s=>"<"+s+">").join("")+o+a.map(s=>"</"+s+">").reverse().join("")),t.innerHTML=Zg(o),a)for(let s=0;s<a.length;s++)t=t.querySelector(a[s])||t;return t}function ef(o){let e=o.querySelectorAll(Te?"span:not([class]):not([style])":"span.Apple-converted-space");for(let t=0;t<e.length;t++){let n=e[t];n.childNodes.length==1&&n.textContent==" "&&n.parentNode&&n.parentNode.replaceChild(o.ownerDocument.createTextNode(" "),n)}}function tf(o,e){if(!o.size)return o;let t=o.content.firstChild.type.schema,n;try{n=JSON.parse(e)}catch{return o}let{content:a,openStart:s,openEnd:i}=o;for(let r=n.length-2;r>=0;r-=2){let l=t.nodes[n[r]];if(!l||l.hasRequiredAttrs())break;a=x.from(l.create(n[r+1],a)),s++,i++}return new N(a,s,i)}const Le={},Pe={},of={touchstart:!0,touchmove:!0};class nf{constructor(){this.shiftKey=!1,this.mouseDown=null,this.lastKeyCode=null,this.lastKeyCodeTime=0,this.lastClick={time:0,x:0,y:0,type:""},this.lastSelectionOrigin=null,this.lastSelectionTime=0,this.lastIOSEnter=0,this.lastIOSEnterFallbackTimeout=-1,this.lastFocus=0,this.lastTouch=0,this.lastAndroidDelete=0,this.composing=!1,this.compositionNode=null,this.composingTimeout=-1,this.compositionNodes=[],this.compositionEndedAt=-2e8,this.compositionID=1,this.compositionPendingChanges=0,this.domChangeCount=0,this.eventHandlers=Object.create(null),this.hideSelectionGuard=null}}function af(o){for(let e in Le){let t=Le[e];o.dom.addEventListener(e,o.input.eventHandlers[e]=n=>{rf(o,n)&&!bi(o,n)&&(o.editable||!(n.type in Pe))&&t(o,n)},of[e]?{passive:!0}:void 0)}Re&&o.dom.addEventListener("input",()=>null),hi(o)}function eo(o,e){o.input.lastSelectionOrigin=e,o.input.lastSelectionTime=Date.now()}function sf(o){o.domObserver.stop();for(let e in o.input.eventHandlers)o.dom.removeEventListener(e,o.input.eventHandlers[e]);clearTimeout(o.input.composingTimeout),clearTimeout(o.input.lastIOSEnterFallbackTimeout)}function hi(o){o.someProp("handleDOMEvents",e=>{for(let t in e)o.input.eventHandlers[t]||o.dom.addEventListener(t,o.input.eventHandlers[t]=n=>bi(o,n))})}function bi(o,e){return o.someProp("handleDOMEvents",t=>{let n=t[e.type];return n?n(o,e)||e.defaultPrevented:!1})}function rf(o,e){if(!e.bubbles)return!0;if(e.defaultPrevented)return!1;for(let t=e.target;t!=o.dom;t=t.parentNode)if(!t||t.nodeType==11||t.pmViewDesc&&t.pmViewDesc.stopEvent(e))return!1;return!0}function lf(o,e){!bi(o,e)&&Le[e.type]&&(o.editable||!(e.type in Pe))&&Le[e.type](o,e)}Pe.keydown=(o,e)=>{let t=e;if(o.input.shiftKey=t.keyCode==16||t.shiftKey,!Jp(o,t)&&(o.input.lastKeyCode=t.keyCode,o.input.lastKeyCodeTime=Date.now(),!(ht&&Te&&t.keyCode==13)))if(o.domObserver.selectionChanged(o.domSelectionRange())?o.domObserver.flush():t.keyCode!=229&&o.domObserver.forceFlush(),qo&&t.keyCode==13&&!t.ctrlKey&&!t.altKey&&!t.metaKey){let n=Date.now();o.input.lastIOSEnter=n,o.input.lastIOSEnterFallbackTimeout=setTimeout(()=>{o.input.lastIOSEnter==n&&(o.someProp("handleKeyDown",a=>a(o,vo(13,"Enter"))),o.input.lastIOSEnter=0)},200)}else o.someProp("handleKeyDown",n=>n(o,t))||Jg(o,t)?t.preventDefault():eo(o,"key")},Pe.keyup=(o,e)=>{e.keyCode==16&&(o.input.shiftKey=!1)},Pe.keypress=(o,e)=>{let t=e;if(Jp(o,t)||!t.charCode||t.ctrlKey&&!t.altKey||et&&t.metaKey)return;if(o.someProp("handleKeyPress",a=>a(o,t))){t.preventDefault();return}let n=o.state.selection;if(!(n instanceof J)||!n.$from.sameParent(n.$to)){let a=String.fromCharCode(t.charCode);!/[\r\n]/.test(a)&&!o.someProp("handleTextInput",s=>s(o,n.$from.pos,n.$to.pos,a))&&o.dispatch(o.state.tr.insertText(a).scrollIntoView()),t.preventDefault()}};function ya(o){return{left:o.clientX,top:o.clientY}}function pf(o,e){let t=e.x-o.clientX,n=e.y-o.clientY;return t*t+n*n<100}function ji(o,e,t,n,a){if(n==-1)return!1;let s=o.state.doc.resolve(n);for(let i=s.depth+1;i>0;i--)if(o.someProp(e,r=>i>s.depth?r(o,t,s.nodeAfter,s.before(i),a,!0):r(o,t,s.node(i),s.before(i),a,!1)))return!0;return!1}function Ko(o,e,t){if(o.focused||o.focus(),o.state.selection.eq(e))return;let n=o.state.tr.setSelection(e);n.setMeta("pointer",!0),o.dispatch(n)}function cf(o,e){if(e==-1)return!1;let t=o.state.doc.resolve(e),n=t.nodeAfter;return n&&n.isAtom&&W.isSelectable(n)?(Ko(o,new W(t)),!0):!1}function mf(o,e){if(e==-1)return!1;let t=o.state.selection,n,a;t instanceof W&&(n=t.node);let s=o.state.doc.resolve(e);for(let i=s.depth+1;i>0;i--){let r=i>s.depth?s.nodeAfter:s.node(i);if(W.isSelectable(r)){n&&t.$from.depth>0&&i>=t.$from.depth&&s.before(t.$from.depth+1)==t.$from.pos?a=s.before(t.$from.depth):a=s.before(i);break}}return a!=null?(Ko(o,W.create(o.state.doc,a)),!0):!1}function df(o,e,t,n,a){return ji(o,"handleClickOn",e,t,n)||o.someProp("handleClick",s=>s(o,e,n))||(a?mf(o,t):cf(o,t))}function uf(o,e,t,n){return ji(o,"handleDoubleClickOn",e,t,n)||o.someProp("handleDoubleClick",a=>a(o,e,n))}function gf(o,e,t,n){return ji(o,"handleTripleClickOn",e,t,n)||o.someProp("handleTripleClick",a=>a(o,e,n))||ff(o,t,n)}function ff(o,e,t){if(t.button!=0)return!1;let n=o.state.doc;if(e==-1)return n.inlineContent?(Ko(o,J.create(n,0,n.content.size)),!0):!1;let a=n.resolve(e);for(let s=a.depth+1;s>0;s--){let i=s>a.depth?a.nodeAfter:a.node(s),r=a.before(s);if(i.inlineContent)Ko(o,J.create(n,r+1,r+1+i.content.size));else if(W.isSelectable(i))Ko(o,W.create(n,r));else continue;return!0}}function vi(o){return _a(o)}const Gp=et?"metaKey":"ctrlKey";Le.mousedown=(o,e)=>{let t=e;o.input.shiftKey=t.shiftKey;let n=vi(o),a=Date.now(),s="singleClick";a-o.input.lastClick.time<500&&pf(t,o.input.lastClick)&&!t[Gp]&&(o.input.lastClick.type=="singleClick"?s="doubleClick":o.input.lastClick.type=="doubleClick"&&(s="tripleClick")),o.input.lastClick={time:a,x:t.clientX,y:t.clientY,type:s};let i=o.posAtCoords(ya(t));i&&(s=="singleClick"?(o.input.mouseDown&&o.input.mouseDown.done(),o.input.mouseDown=new hf(o,i,t,!!n)):(s=="doubleClick"?uf:gf)(o,i.pos,i.inside,t)?t.preventDefault():eo(o,"pointer"))};class hf{constructor(e,t,n,a){this.view=e,this.pos=t,this.event=n,this.flushed=a,this.delayedSelectionSync=!1,this.mightDrag=null,this.startDoc=e.state.doc,this.selectNode=!!n[Gp],this.allowDefault=n.shiftKey;let s,i;if(t.inside>-1)s=e.state.doc.nodeAt(t.inside),i=t.inside;else{let c=e.state.doc.resolve(t.pos);s=c.parent,i=c.depth?c.before():0}const r=a?null:n.target,l=r?e.docView.nearestDesc(r,!0):null;this.target=l&&l.dom.nodeType==1?l.dom:null;let{selection:p}=e.state;(n.button==0&&s.type.spec.draggable&&s.type.spec.selectable!==!1||p instanceof W&&p.from<=i&&p.to>i)&&(this.mightDrag={node:s,pos:i,addAttr:!!(this.target&&!this.target.draggable),setUneditable:!!(this.target&&ft&&!this.target.hasAttribute("contentEditable"))}),this.target&&this.mightDrag&&(this.mightDrag.addAttr||this.mightDrag.setUneditable)&&(this.view.domObserver.stop(),this.mightDrag.addAttr&&(this.target.draggable=!0),this.mightDrag.setUneditable&&setTimeout(()=>{this.view.input.mouseDown==this&&this.target.setAttribute("contentEditable","false")},20),this.view.domObserver.start()),e.root.addEventListener("mouseup",this.up=this.up.bind(this)),e.root.addEventListener("mousemove",this.move=this.move.bind(this)),eo(e,"pointer")}done(){this.view.root.removeEventListener("mouseup",this.up),this.view.root.removeEventListener("mousemove",this.move),this.mightDrag&&this.target&&(this.view.domObserver.stop(),this.mightDrag.addAttr&&this.target.removeAttribute("draggable"),this.mightDrag.setUneditable&&this.target.removeAttribute("contentEditable"),this.view.domObserver.start()),this.delayedSelectionSync&&setTimeout(()=>Nt(this.view)),this.view.input.mouseDown=null}up(e){if(this.done(),!this.view.dom.contains(e.target))return;let t=this.pos;this.view.state.doc!=this.startDoc&&(t=this.view.posAtCoords(ya(e))),this.updateAllowDefault(e),this.allowDefault||!t?eo(this.view,"pointer"):df(this.view,t.pos,t.inside,e,this.selectNode)?e.preventDefault():e.button==0&&(this.flushed||Re&&this.mightDrag&&!this.mightDrag.node.isAtom||Te&&!this.view.state.selection.visible&&Math.min(Math.abs(t.pos-this.view.state.selection.from),Math.abs(t.pos-this.view.state.selection.to))<=2)?(Ko(this.view,Z.near(this.view.state.doc.resolve(t.pos))),e.preventDefault()):eo(this.view,"pointer")}move(e){this.updateAllowDefault(e),eo(this.view,"pointer"),e.buttons==0&&this.done()}updateAllowDefault(e){!this.allowDefault&&(Math.abs(this.event.x-e.clientX)>4||Math.abs(this.event.y-e.clientY)>4)&&(this.allowDefault=!0)}}Le.touchstart=o=>{o.input.lastTouch=Date.now(),vi(o),eo(o,"pointer")},Le.touchmove=o=>{o.input.lastTouch=Date.now(),eo(o,"pointer")},Le.contextmenu=o=>vi(o);function Jp(o,e){return o.composing?!0:Re&&Math.abs(e.timeStamp-o.input.compositionEndedAt)<500?(o.input.compositionEndedAt=-2e8,!0):!1}const bf=ht?5e3:-1;Pe.compositionstart=Pe.compositionupdate=o=>{if(!o.composing){o.domObserver.flush();let{state:e}=o,t=e.selection.$to;if(e.selection instanceof J&&(e.storedMarks||!t.textOffset&&t.parentOffset&&t.nodeBefore.marks.some(n=>n.type.spec.inclusive===!1)))o.markCursor=o.state.storedMarks||t.marks(),_a(o,!0),o.markCursor=null;else if(_a(o,!e.selection.empty),ft&&e.selection.empty&&t.parentOffset&&!t.textOffset&&t.nodeBefore.marks.length){let n=o.domSelectionRange();for(let a=n.focusNode,s=n.focusOffset;a&&a.nodeType==1&&s!=0;){let i=s<0?a.lastChild:a.childNodes[s-1];if(!i)break;if(i.nodeType==3){let r=o.domSelection();r&&r.collapse(i,i.nodeValue.length);break}else a=i,s=-1}}o.input.composing=!0}Yp(o,bf)},Pe.compositionend=(o,e)=>{o.composing&&(o.input.composing=!1,o.input.compositionEndedAt=e.timeStamp,o.input.compositionPendingChanges=o.domObserver.pendingRecords().length?o.input.compositionID:0,o.input.compositionNode=null,o.input.compositionPendingChanges&&Promise.resolve().then(()=>o.domObserver.flush()),o.input.compositionID++,Yp(o,20))};function Yp(o,e){clearTimeout(o.input.composingTimeout),e>-1&&(o.input.composingTimeout=setTimeout(()=>_a(o),e))}function Xp(o){for(o.composing&&(o.input.composing=!1,o.input.compositionEndedAt=vf());o.input.compositionNodes.length>0;)o.input.compositionNodes.pop().markParentsDirty()}function jf(o){let e=o.domSelectionRange();if(!e.focusNode)return null;let t=pg(e.focusNode,e.focusOffset),n=cg(e.focusNode,e.focusOffset);if(t&&n&&t!=n){let a=n.pmViewDesc,s=o.domObserver.lastChangedTextNode;if(t==s||n==s)return s;if(!a||!a.isText(n.nodeValue))return n;if(o.input.compositionNode==n){let i=t.pmViewDesc;if(!(!i||!i.isText(t.nodeValue)))return n}}return t||n}function vf(){let o=document.createEvent("Event");return o.initEvent("event",!0,!0),o.timeStamp}function _a(o,e=!1){if(!(ht&&o.domObserver.flushingSoon>=0)){if(o.domObserver.forceFlush(),Xp(o),e||o.docView&&o.docView.dirty){let t=ci(o);return t&&!t.eq(o.state.selection)?o.dispatch(o.state.tr.setSelection(t)):(o.markCursor||e)&&!o.state.selection.empty?o.dispatch(o.state.tr.deleteSelection()):o.updateState(o.state),!0}return!1}}function kf(o,e){if(!o.dom.parentNode)return;let t=o.dom.parentNode.appendChild(document.createElement("div"));t.appendChild(e),t.style.cssText="position: fixed; left: -10000px; top: 10px";let n=getSelection(),a=document.createRange();a.selectNodeContents(e),o.dom.blur(),n.removeAllRanges(),n.addRange(a),setTimeout(()=>{t.parentNode&&t.parentNode.removeChild(t),o.focus()},50)}const xn=qe&&Yt<15||qo&&fg<604;Le.copy=Pe.cut=(o,e)=>{let t=e,n=o.state.selection,a=t.type=="cut";if(n.empty)return;let s=xn?null:t.clipboardData,i=n.content(),{dom:r,text:l}=Pp(o,i);s?(t.preventDefault(),s.clearData(),s.setData("text/html",r.innerHTML),s.setData("text/plain",l)):kf(o,r),a&&o.dispatch(o.state.tr.deleteSelection().scrollIntoView().setMeta("uiEvent","cut"))};function yf(o){return o.openStart==0&&o.openEnd==0&&o.content.childCount==1?o.content.firstChild:null}function _f(o,e){if(!o.dom.parentNode)return;let t=o.input.shiftKey||o.state.selection.$from.parent.type.spec.code,n=o.dom.parentNode.appendChild(document.createElement(t?"textarea":"div"));t||(n.contentEditable="true"),n.style.cssText="position: fixed; left: -10000px; top: 10px",n.focus();let a=o.input.shiftKey&&o.input.lastKeyCode!=45;setTimeout(()=>{o.focus(),n.parentNode&&n.parentNode.removeChild(n),t?Sn(o,n.value,null,a,e):Sn(o,n.textContent,n.innerHTML,a,e)},50)}function Sn(o,e,t,n,a){let s=zp(o,e,t,n,o.state.selection.$from);if(o.someProp("handlePaste",l=>l(o,a,s||N.empty)))return!0;if(!s)return!1;let i=yf(s),r=i?o.state.tr.replaceSelectionWith(i,n):o.state.tr.replaceSelection(s);return o.dispatch(r.scrollIntoView().setMeta("paste",!0).setMeta("uiEvent","paste")),!0}function Zp(o){let e=o.getData("text/plain")||o.getData("Text");if(e)return e;let t=o.getData("text/uri-list");return t?t.replace(/\r?\n/g," "):""}Pe.paste=(o,e)=>{let t=e;if(o.composing&&!ht)return;let n=xn?null:t.clipboardData,a=o.input.shiftKey&&o.input.lastKeyCode!=45;n&&Sn(o,Zp(n),n.getData("text/html"),a,t)?t.preventDefault():_f(o,t)};class Qp{constructor(e,t,n){this.slice=e,this.move=t,this.node=n}}const ec=et?"altKey":"ctrlKey";Le.dragstart=(o,e)=>{let t=e,n=o.input.mouseDown;if(n&&n.done(),!t.dataTransfer)return;let a=o.state.selection,s=a.empty?null:o.posAtCoords(ya(t)),i;if(!(s&&s.pos>=a.from&&s.pos<=(a instanceof W?a.to-1:a.to))){if(n&&n.mightDrag)i=W.create(o.state.doc,n.mightDrag.pos);else if(t.target&&t.target.nodeType==1){let m=o.docView.nearestDesc(t.target,!0);m&&m.node.type.spec.draggable&&m!=o.docView&&(i=W.create(o.state.doc,m.posBefore))}}let r=(i||o.state.selection).content(),{dom:l,text:p,slice:c}=Pp(o,r);(!t.dataTransfer.files.length||!Te||sp>120)&&t.dataTransfer.clearData(),t.dataTransfer.setData(xn?"Text":"text/html",l.innerHTML),t.dataTransfer.effectAllowed="copyMove",xn||t.dataTransfer.setData("text/plain",p),o.dragging=new Qp(c,!t[ec],i)},Le.dragend=o=>{let e=o.dragging;window.setTimeout(()=>{o.dragging==e&&(o.dragging=null)},50)},Pe.dragover=Pe.dragenter=(o,e)=>e.preventDefault(),Pe.drop=(o,e)=>{let t=e,n=o.dragging;if(o.dragging=null,!t.dataTransfer)return;let a=o.posAtCoords(ya(t));if(!a)return;let s=o.state.doc.resolve(a.pos),i=n&&n.slice;i?o.someProp("transformPasted",g=>{i=g(i,o)}):i=zp(o,Zp(t.dataTransfer),xn?null:t.dataTransfer.getData("text/html"),!1,s);let r=!!(n&&!t[ec]);if(o.someProp("handleDrop",g=>g(o,t,i||N.empty,r))){t.preventDefault();return}if(!i)return;t.preventDefault();let l=i?$l(o.state.doc,s.pos,i):s.pos;l==null&&(l=s.pos);let p=o.state.tr;if(r){let{node:g}=n;g?g.replace(p):p.deleteSelection()}let c=p.mapping.map(l),m=i.openStart==0&&i.openEnd==0&&i.content.childCount==1,d=p.doc;if(m?p.replaceRangeWith(c,c,i.content.firstChild):p.replaceRange(c,c,i),p.doc.eq(d))return;let u=p.doc.resolve(c);if(m&&W.isSelectable(i.content.firstChild)&&u.nodeAfter&&u.nodeAfter.sameMarkup(i.content.firstChild))p.setSelection(new W(u));else{let g=p.mapping.map(l);p.mapping.maps[p.mapping.maps.length-1].forEach((h,b,k,I)=>g=I),p.setSelection(di(o,u,p.doc.resolve(g)))}o.focus(),o.dispatch(p.setMeta("uiEvent","drop"))},Le.focus=o=>{o.input.lastFocus=Date.now(),o.focused||(o.domObserver.stop(),o.dom.classList.add("ProseMirror-focused"),o.domObserver.start(),o.focused=!0,setTimeout(()=>{o.docView&&o.hasFocus()&&!o.domObserver.currentSelection.eq(o.domSelectionRange())&&Nt(o)},20))},Le.blur=(o,e)=>{let t=e;o.focused&&(o.domObserver.stop(),o.dom.classList.remove("ProseMirror-focused"),o.domObserver.start(),t.relatedTarget&&o.dom.contains(t.relatedTarget)&&o.domObserver.currentSelection.clear(),o.focused=!1)},Le.beforeinput=(o,e)=>{if(Te&&ht&&e.inputType=="deleteContentBackward"){o.domObserver.flushSoon();let{domChangeCount:n}=o.input;setTimeout(()=>{if(o.input.domChangeCount!=n||(o.dom.blur(),o.focus(),o.someProp("handleKeyDown",s=>s(o,vo(8,"Backspace")))))return;let{$cursor:a}=o.state.selection;a&&a.pos>0&&o.dispatch(o.state.tr.delete(a.pos-1,a.pos).scrollIntoView())},50)}};for(let o in Pe)Le[o]=Pe[o];function Mn(o,e){if(o==e)return!0;for(let t in o)if(o[t]!==e[t])return!1;for(let t in e)if(!(t in o))return!1;return!0}class Da{constructor(e,t){this.toDOM=e,this.spec=t||Do,this.side=this.spec.side||0}map(e,t,n,a){let{pos:s,deleted:i}=e.mapResult(t.from+a,this.side<0?-1:1);return i?null:new ze(s-n,s-n,this)}valid(){return!0}eq(e){return this==e||e instanceof Da&&(this.spec.key&&this.spec.key==e.spec.key||this.toDOM==e.toDOM&&Mn(this.spec,e.spec))}destroy(e){this.spec.destroy&&this.spec.destroy(e)}}class to{constructor(e,t){this.attrs=e,this.spec=t||Do}map(e,t,n,a){let s=e.map(t.from+a,this.spec.inclusiveStart?-1:1)-n,i=e.map(t.to+a,this.spec.inclusiveEnd?1:-1)-n;return s>=i?null:new ze(s,i,this)}valid(e,t){return t.from<t.to}eq(e){return this==e||e instanceof to&&Mn(this.attrs,e.attrs)&&Mn(this.spec,e.spec)}static is(e){return e.type instanceof to}destroy(){}}class ki{constructor(e,t){this.attrs=e,this.spec=t||Do}map(e,t,n,a){let s=e.mapResult(t.from+a,1);if(s.deleted)return null;let i=e.mapResult(t.to+a,-1);return i.deleted||i.pos<=s.pos?null:new ze(s.pos-n,i.pos-n,this)}valid(e,t){let{index:n,offset:a}=e.content.findIndex(t.from),s;return a==t.from&&!(s=e.child(n)).isText&&a+s.nodeSize==t.to}eq(e){return this==e||e instanceof ki&&Mn(this.attrs,e.attrs)&&Mn(this.spec,e.spec)}destroy(){}}class ze{constructor(e,t,n){this.from=e,this.to=t,this.type=n}copy(e,t){return new ze(e,t,this.type)}eq(e,t=0){return this.type.eq(e.type)&&this.from+t==e.from&&this.to+t==e.to}map(e,t,n){return this.type.map(e,this,t,n)}static widget(e,t,n){return new ze(e,e,new Da(t,n))}static inline(e,t,n,a){return new ze(e,t,new to(n,a))}static node(e,t,n,a){return new ze(e,t,new ki(n,a))}get spec(){return this.type.spec}get inline(){return this.type instanceof to}get widget(){return this.type instanceof Da}}const Go=[],Do={};class he{constructor(e,t){this.local=e.length?e:Go,this.children=t.length?t:Go}static create(e,t){return t.length?wa(t,e,0,Do):Ne}find(e,t,n){let a=[];return this.findInner(e??0,t??1e9,a,0,n),a}findInner(e,t,n,a,s){for(let i=0;i<this.local.length;i++){let r=this.local[i];r.from<=t&&r.to>=e&&(!s||s(r.spec))&&n.push(r.copy(r.from+a,r.to+a))}for(let i=0;i<this.children.length;i+=3)if(this.children[i]<t&&this.children[i+1]>e){let r=this.children[i]+1;this.children[i+2].findInner(e-r,t-r,n,a+r,s)}}map(e,t,n){return this==Ne||e.maps.length==0?this:this.mapInner(e,t,0,0,n||Do)}mapInner(e,t,n,a,s){let i;for(let r=0;r<this.local.length;r++){let l=this.local[r].map(e,n,a);l&&l.type.valid(t,l)?(i||(i=[])).push(l):s.onRemove&&s.onRemove(this.local[r].spec)}return this.children.length?Df(this.children,i||[],e,t,n,a,s):i?new he(i.sort(wo),Go):Ne}add(e,t){return t.length?this==Ne?he.create(e,t):this.addInner(e,t,0):this}addInner(e,t,n){let a,s=0;e.forEach((r,l)=>{let p=l+n,c;if(c=oc(t,r,p)){for(a||(a=this.children.slice());s<a.length&&a[s]<l;)s+=3;a[s]==l?a[s+2]=a[s+2].addInner(r,c,p+1):a.splice(s,0,l,l+r.nodeSize,wa(c,r,p+1,Do)),s+=3}});let i=tc(s?nc(t):t,-n);for(let r=0;r<i.length;r++)i[r].type.valid(e,i[r])||i.splice(r--,1);return new he(i.length?this.local.concat(i).sort(wo):this.local,a||this.children)}remove(e){return e.length==0||this==Ne?this:this.removeInner(e,0)}removeInner(e,t){let n=this.children,a=this.local;for(let s=0;s<n.length;s+=3){let i,r=n[s]+t,l=n[s+1]+t;for(let c=0,m;c<e.length;c++)(m=e[c])&&m.from>r&&m.to<l&&(e[c]=null,(i||(i=[])).push(m));if(!i)continue;n==this.children&&(n=this.children.slice());let p=n[s+2].removeInner(i,r+1);p!=Ne?n[s+2]=p:(n.splice(s,3),s-=3)}if(a.length){for(let s=0,i;s<e.length;s++)if(i=e[s])for(let r=0;r<a.length;r++)a[r].eq(i,t)&&(a==this.local&&(a=this.local.slice()),a.splice(r--,1))}return n==this.children&&a==this.local?this:a.length||n.length?new he(a,n):Ne}forChild(e,t){if(this==Ne)return this;if(t.isLeaf)return he.empty;let n,a;for(let r=0;r<this.children.length;r+=3)if(this.children[r]>=e){this.children[r]==e&&(n=this.children[r+2]);break}let s=e+1,i=s+t.content.size;for(let r=0;r<this.local.length;r++){let l=this.local[r];if(l.from<i&&l.to>s&&l.type instanceof to){let p=Math.max(s,l.from)-s,c=Math.min(i,l.to)-s;p<c&&(a||(a=[])).push(l.copy(p,c))}}if(a){let r=new he(a.sort(wo),Go);return n?new oo([r,n]):r}return n||Ne}eq(e){if(this==e)return!0;if(!(e instanceof he)||this.local.length!=e.local.length||this.children.length!=e.children.length)return!1;for(let t=0;t<this.local.length;t++)if(!this.local[t].eq(e.local[t]))return!1;for(let t=0;t<this.children.length;t+=3)if(this.children[t]!=e.children[t]||this.children[t+1]!=e.children[t+1]||!this.children[t+2].eq(e.children[t+2]))return!1;return!0}locals(e){return yi(this.localsInner(e))}localsInner(e){if(this==Ne)return Go;if(e.inlineContent||!this.local.some(to.is))return this.local;let t=[];for(let n=0;n<this.local.length;n++)this.local[n].type instanceof to||t.push(this.local[n]);return t}forEachSet(e){e(this)}}he.empty=new he([],[]),he.removeOverlap=yi;const Ne=he.empty;class oo{constructor(e){this.members=e}map(e,t){const n=this.members.map(a=>a.map(e,t,Do));return oo.from(n)}forChild(e,t){if(t.isLeaf)return he.empty;let n=[];for(let a=0;a<this.members.length;a++){let s=this.members[a].forChild(e,t);s!=Ne&&(s instanceof oo?n=n.concat(s.members):n.push(s))}return oo.from(n)}eq(e){if(!(e instanceof oo)||e.members.length!=this.members.length)return!1;for(let t=0;t<this.members.length;t++)if(!this.members[t].eq(e.members[t]))return!1;return!0}locals(e){let t,n=!0;for(let a=0;a<this.members.length;a++){let s=this.members[a].localsInner(e);if(s.length)if(!t)t=s;else{n&&(t=t.slice(),n=!1);for(let i=0;i<s.length;i++)t.push(s[i])}}return t?yi(n?t:t.sort(wo)):Go}static from(e){switch(e.length){case 0:return Ne;case 1:return e[0];default:return new oo(e.every(t=>t instanceof he)?e:e.reduce((t,n)=>t.concat(n instanceof he?n:n.members),[]))}}forEachSet(e){for(let t=0;t<this.members.length;t++)this.members[t].forEachSet(e)}}function Df(o,e,t,n,a,s,i){let r=o.slice();for(let p=0,c=s;p<t.maps.length;p++){let m=0;t.maps[p].forEach((d,u,g,h)=>{let b=h-g-(u-d);for(let k=0;k<r.length;k+=3){let I=r[k+1];if(I<0||d>I+c-m)continue;let S=r[k]+c-m;u>=S?r[k+1]=d<=S?-2:-1:d>=c&&b&&(r[k]+=b,r[k+1]+=b)}m+=b}),c=t.maps[p].map(c,-1)}let l=!1;for(let p=0;p<r.length;p+=3)if(r[p+1]<0){if(r[p+1]==-2){l=!0,r[p+1]=-1;continue}let c=t.map(o[p]+s),m=c-a;if(m<0||m>=n.content.size){l=!0;continue}let d=t.map(o[p+1]+s,-1),u=d-a,{index:g,offset:h}=n.content.findIndex(m),b=n.maybeChild(g);if(b&&h==m&&h+b.nodeSize==u){let k=r[p+2].mapInner(t,b,c+1,o[p]+s+1,i);k!=Ne?(r[p]=m,r[p+1]=u,r[p+2]=k):(r[p+1]=-2,l=!0)}else l=!0}if(l){let p=wf(r,o,e,t,a,s,i),c=wa(p,n,0,i);e=c.local;for(let m=0;m<r.length;m+=3)r[m+1]<0&&(r.splice(m,3),m-=3);for(let m=0,d=0;m<c.children.length;m+=3){let u=c.children[m];for(;d<r.length&&r[d]<u;)d+=3;r.splice(d,0,c.children[m],c.children[m+1],c.children[m+2])}}return new he(e.sort(wo),r)}function tc(o,e){if(!e||!o.length)return o;let t=[];for(let n=0;n<o.length;n++){let a=o[n];t.push(new ze(a.from+e,a.to+e,a.type))}return t}function wf(o,e,t,n,a,s,i){function r(l,p){for(let c=0;c<l.local.length;c++){let m=l.local[c].map(n,a,p);m?t.push(m):i.onRemove&&i.onRemove(l.local[c].spec)}for(let c=0;c<l.children.length;c+=3)r(l.children[c+2],l.children[c]+p+1)}for(let l=0;l<o.length;l+=3)o[l+1]==-1&&r(o[l+2],e[l]+s+1);return t}function oc(o,e,t){if(e.isLeaf)return null;let n=t+e.nodeSize,a=null;for(let s=0,i;s<o.length;s++)(i=o[s])&&i.from>t&&i.to<n&&((a||(a=[])).push(i),o[s]=null);return a}function nc(o){let e=[];for(let t=0;t<o.length;t++)o[t]!=null&&e.push(o[t]);return e}function wa(o,e,t,n){let a=[],s=!1;e.forEach((r,l)=>{let p=oc(o,r,l+t);if(p){s=!0;let c=wa(p,r,t+l+1,n);c!=Ne&&a.push(l,l+r.nodeSize,c)}});let i=tc(s?nc(o):o,-t).sort(wo);for(let r=0;r<i.length;r++)i[r].type.valid(e,i[r])||(n.onRemove&&n.onRemove(i[r].spec),i.splice(r--,1));return i.length||a.length?new he(i,a):Ne}function wo(o,e){return o.from-e.from||o.to-e.to}function yi(o){let e=o;for(let t=0;t<e.length-1;t++){let n=e[t];if(n.from!=n.to)for(let a=t+1;a<e.length;a++){let s=e[a];if(s.from==n.from){s.to!=n.to&&(e==o&&(e=o.slice()),e[a]=s.copy(s.from,n.to),ac(e,a+1,s.copy(n.to,s.to)));continue}else{s.from<n.to&&(e==o&&(e=o.slice()),e[t]=n.copy(n.from,s.from),ac(e,a,n.copy(s.from,n.to)));break}}}return e}function ac(o,e,t){for(;e<o.length&&wo(t,o[e])>0;)e++;o.splice(e,0,t)}function _i(o){let e=[];return o.someProp("decorations",t=>{let n=t(o.state);n&&n!=Ne&&e.push(n)}),o.cursorWrapper&&e.push(he.create(o.state.doc,[o.cursorWrapper.deco])),oo.from(e)}const If={childList:!0,characterData:!0,characterDataOldValue:!0,attributes:!0,attributeOldValue:!0,subtree:!0},Ef=qe&&Yt<=11;class Cf{constructor(){this.anchorNode=null,this.anchorOffset=0,this.focusNode=null,this.focusOffset=0}set(e){this.anchorNode=e.anchorNode,this.anchorOffset=e.anchorOffset,this.focusNode=e.focusNode,this.focusOffset=e.focusOffset}clear(){this.anchorNode=this.focusNode=null}eq(e){return e.anchorNode==this.anchorNode&&e.anchorOffset==this.anchorOffset&&e.focusNode==this.focusNode&&e.focusOffset==this.focusOffset}}class xf{constructor(e,t){this.view=e,this.handleDOMChange=t,this.queue=[],this.flushingSoon=-1,this.observer=null,this.currentSelection=new Cf,this.onCharData=null,this.suppressingSelectionUpdates=!1,this.lastChangedTextNode=null,this.observer=window.MutationObserver&&new window.MutationObserver(n=>{for(let a=0;a<n.length;a++)this.queue.push(n[a]);qe&&Yt<=11&&n.some(a=>a.type=="childList"&&a.removedNodes.length||a.type=="characterData"&&a.oldValue.length>a.target.nodeValue.length)?this.flushSoon():this.flush()}),Ef&&(this.onCharData=n=>{this.queue.push({target:n.target,type:"characterData",oldValue:n.prevValue}),this.flushSoon()}),this.onSelectionChange=this.onSelectionChange.bind(this)}flushSoon(){this.flushingSoon<0&&(this.flushingSoon=window.setTimeout(()=>{this.flushingSoon=-1,this.flush()},20))}forceFlush(){this.flushingSoon>-1&&(window.clearTimeout(this.flushingSoon),this.flushingSoon=-1,this.flush())}start(){this.observer&&(this.observer.takeRecords(),this.observer.observe(this.view.dom,If)),this.onCharData&&this.view.dom.addEventListener("DOMCharacterDataModified",this.onCharData),this.connectSelection()}stop(){if(this.observer){let e=this.observer.takeRecords();if(e.length){for(let t=0;t<e.length;t++)this.queue.push(e[t]);window.setTimeout(()=>this.flush(),20)}this.observer.disconnect()}this.onCharData&&this.view.dom.removeEventListener("DOMCharacterDataModified",this.onCharData),this.disconnectSelection()}connectSelection(){this.view.dom.ownerDocument.addEventListener("selectionchange",this.onSelectionChange)}disconnectSelection(){this.view.dom.ownerDocument.removeEventListener("selectionchange",this.onSelectionChange)}suppressSelectionUpdates(){this.suppressingSelectionUpdates=!0,setTimeout(()=>this.suppressingSelectionUpdates=!1,50)}onSelectionChange(){if(Fp(this.view)){if(this.suppressingSelectionUpdates)return Nt(this.view);if(qe&&Yt<=11&&!this.view.state.selection.empty){let e=this.view.domSelectionRange();if(e.focusNode&&jo(e.focusNode,e.focusOffset,e.anchorNode,e.anchorOffset))return this.flushSoon()}this.flush()}}setCurSelection(){this.currentSelection.set(this.view.domSelectionRange())}ignoreSelectionChange(e){if(!e.focusNode)return!0;let t=new Set,n;for(let s=e.focusNode;s;s=yn(s))t.add(s);for(let s=e.anchorNode;s;s=yn(s))if(t.has(s)){n=s;break}let a=n&&this.view.docView.nearestDesc(n);if(a&&a.ignoreMutation({type:"selection",target:n.nodeType==3?n.parentNode:n}))return this.setCurSelection(),!0}pendingRecords(){if(this.observer)for(let e of this.observer.takeRecords())this.queue.push(e);return this.queue}selectionChanged(e){return!this.suppressingSelectionUpdates&&!this.currentSelection.eq(e)&&Fp(this.view)&&!this.ignoreSelectionChange(e)}flush(){let{view:e}=this;if(!e.docView||this.flushingSoon>-1)return;let t=this.pendingRecords();t.length&&(this.queue=[]);let n=e.domSelectionRange(),a=this.selectionChanged(n),s=-1,i=-1,r=!1,l=[];if(e.editable)for(let c=0;c<t.length;c++){let m=this.registerMutation(t[c],l);m&&(s=s<0?m.from:Math.min(m.from,s),i=i<0?m.to:Math.max(m.to,i),m.typeOver&&(r=!0))}if(ft&&l.length){let c=l.filter(m=>m.nodeName=="BR");if(c.length==2){let[m,d]=c;m.parentNode&&m.parentNode.parentNode==d.parentNode?d.remove():m.remove()}else{let{focusNode:m}=this.currentSelection;for(let d of c){let u=d.parentNode;u&&u.nodeName=="LI"&&(!m||Ff(e,m)!=u)&&d.remove()}}}let p=null;s<0&&a&&e.input.lastFocus>Date.now()-200&&Math.max(e.input.lastTouch,e.input.lastClick.time)<Date.now()-300&&ba(n)&&(p=ci(e))&&p.eq(Z.near(e.state.doc.resolve(0),1))?(e.input.lastFocus=0,Nt(e),this.currentSelection.set(n),e.scrollToSelection()):(s>-1||a)&&(s>-1&&(e.docView.markDirty(s,i),Sf(e)),this.handleDOMChange(s,i,r,l),e.docView&&e.docView.dirty?e.updateState(e.state):this.currentSelection.eq(n)||Nt(e),this.currentSelection.set(n))}registerMutation(e,t){if(t.indexOf(e.target)>-1)return null;let n=this.view.docView.nearestDesc(e.target);if(e.type=="attributes"&&(n==this.view.docView||e.attributeName=="contenteditable"||e.attributeName=="style"&&!e.oldValue&&!e.target.getAttribute("style"))||!n||n.ignoreMutation(e))return null;if(e.type=="childList"){for(let c=0;c<e.addedNodes.length;c++){let m=e.addedNodes[c];t.push(m),m.nodeType==3&&(this.lastChangedTextNode=m)}if(n.contentDOM&&n.contentDOM!=n.dom&&!n.contentDOM.contains(e.target))return{from:n.posBefore,to:n.posAfter};let a=e.previousSibling,s=e.nextSibling;if(qe&&Yt<=11&&e.addedNodes.length)for(let c=0;c<e.addedNodes.length;c++){let{previousSibling:m,nextSibling:d}=e.addedNodes[c];(!m||Array.prototype.indexOf.call(e.addedNodes,m)<0)&&(a=m),(!d||Array.prototype.indexOf.call(e.addedNodes,d)<0)&&(s=d)}let i=a&&a.parentNode==e.target?Me(a)+1:0,r=n.localPosFromDOM(e.target,i,-1),l=s&&s.parentNode==e.target?Me(s):e.target.childNodes.length,p=n.localPosFromDOM(e.target,l,1);return{from:r,to:p}}else return e.type=="attributes"?{from:n.posAtStart-n.border,to:n.posAtEnd+n.border}:(this.lastChangedTextNode=e.target,{from:n.posAtStart,to:n.posAtEnd,typeOver:e.target.nodeValue==e.oldValue})}}let sc=new WeakMap,ic=!1;function Sf(o){if(!sc.has(o)&&(sc.set(o,null),["normal","nowrap","pre-line"].indexOf(getComputedStyle(o.dom).whiteSpace)!==-1)){if(o.requiresGeckoHackNode=ft,ic)return;console.warn("ProseMirror expects the CSS white-space property to be set, preferably to 'pre-wrap'. It is recommended to load style/prosemirror.css from the prosemirror-view package."),ic=!0}}function rc(o,e){let t=e.startContainer,n=e.startOffset,a=e.endContainer,s=e.endOffset,i=o.domAtPos(o.state.selection.anchor);return jo(i.node,i.offset,a,s)&&([t,n,a,s]=[a,s,t,n]),{anchorNode:t,anchorOffset:n,focusNode:a,focusOffset:s}}function Mf(o,e){if(e.getComposedRanges){let a=e.getComposedRanges(o.root)[0];if(a)return rc(o,a)}let t;function n(a){a.preventDefault(),a.stopImmediatePropagation(),t=a.getTargetRanges()[0]}return o.dom.addEventListener("beforeinput",n,!0),document.execCommand("indent"),o.dom.removeEventListener("beforeinput",n,!0),t?rc(o,t):null}function Ff(o,e){for(let t=e.parentNode;t&&t!=o.dom;t=t.parentNode){let n=o.docView.nearestDesc(t,!0);if(n&&n.node.isBlock)return t}return null}function Of(o,e,t){let{node:n,fromOffset:a,toOffset:s,from:i,to:r}=o.docView.parseRange(e,t),l=o.domSelectionRange(),p,c=l.anchorNode;if(c&&o.dom.contains(c.nodeType==1?c:c.parentNode)&&(p=[{node:c,offset:l.anchorOffset}],ba(l)||p.push({node:l.focusNode,offset:l.focusOffset})),Te&&o.input.lastKeyCode===8)for(let b=s;b>a;b--){let k=n.childNodes[b-1],I=k.pmViewDesc;if(k.nodeName=="BR"&&!I){s=b;break}if(!I||I.size)break}let m=o.state.doc,d=o.someProp("domParser")||Wt.fromSchema(o.state.schema),u=m.resolve(i),g=null,h=d.parse(n,{topNode:u.parent,topMatch:u.parent.contentMatchAt(u.index()),topOpen:!0,from:a,to:s,preserveWhitespace:u.parent.type.whitespace=="pre"?"full":!0,findPositions:p,ruleFromNode:Af,context:u});if(p&&p[0].pos!=null){let b=p[0].pos,k=p[1]&&p[1].pos;k==null&&(k=b),g={anchor:b+i,head:k+i}}return{doc:h,sel:g,from:i,to:r}}function Af(o){let e=o.pmViewDesc;if(e)return e.parseRule();if(o.nodeName=="BR"&&o.parentNode){if(Re&&/^(ul|ol)$/i.test(o.parentNode.nodeName)){let t=document.createElement("div");return t.appendChild(document.createElement("li")),{skip:t}}else if(o.parentNode.lastChild==o||Re&&/^(tr|table)$/i.test(o.parentNode.nodeName))return{ignore:!0}}else if(o.nodeName=="IMG"&&o.getAttribute("mark-placeholder"))return{ignore:!0};return null}const Tf=/^(a|abbr|acronym|b|bd[io]|big|br|button|cite|code|data(list)?|del|dfn|em|i|ins|kbd|label|map|mark|meter|output|q|ruby|s|samp|small|span|strong|su[bp]|time|u|tt|var)$/i;function Nf(o,e,t,n,a){let s=o.input.compositionPendingChanges||(o.composing?o.input.compositionID:0);if(o.input.compositionPendingChanges=0,e<0){let C=o.input.lastSelectionTime>Date.now()-50?o.input.lastSelectionOrigin:null,q=ci(o,C);if(q&&!o.state.selection.eq(q)){if(Te&&ht&&o.input.lastKeyCode===13&&Date.now()-100<o.input.lastKeyCodeTime&&o.someProp("handleKeyDown",ae=>ae(o,vo(13,"Enter"))))return;let X=o.state.tr.setSelection(q);C=="pointer"?X.setMeta("pointer",!0):C=="key"&&X.scrollIntoView(),s&&X.setMeta("composition",s),o.dispatch(X)}return}let i=o.state.doc.resolve(e),r=i.sharedDepth(t);e=i.before(r+1),t=o.state.doc.resolve(t).after(r+1);let l=o.state.selection,p=Of(o,e,t),c=o.state.doc,m=c.slice(p.from,p.to),d,u;o.input.lastKeyCode===8&&Date.now()-100<o.input.lastKeyCodeTime?(d=o.state.selection.to,u="end"):(d=o.state.selection.from,u="start"),o.input.lastKeyCode=null;let g=Lf(m.content,p.doc.content,p.from,d,u);if(g&&o.input.domChangeCount++,(qo&&o.input.lastIOSEnter>Date.now()-225||ht)&&a.some(C=>C.nodeType==1&&!Tf.test(C.nodeName))&&(!g||g.endA>=g.endB)&&o.someProp("handleKeyDown",C=>C(o,vo(13,"Enter")))){o.input.lastIOSEnter=0;return}if(!g)if(n&&l instanceof J&&!l.empty&&l.$head.sameParent(l.$anchor)&&!o.composing&&!(p.sel&&p.sel.anchor!=p.sel.head))g={start:l.from,endA:l.to,endB:l.to};else{if(p.sel){let C=lc(o,o.state.doc,p.sel);if(C&&!C.eq(o.state.selection)){let q=o.state.tr.setSelection(C);s&&q.setMeta("composition",s),o.dispatch(q)}}return}o.state.selection.from<o.state.selection.to&&g.start==g.endB&&o.state.selection instanceof J&&(g.start>o.state.selection.from&&g.start<=o.state.selection.from+2&&o.state.selection.from>=p.from?g.start=o.state.selection.from:g.endA<o.state.selection.to&&g.endA>=o.state.selection.to-2&&o.state.selection.to<=p.to&&(g.endB+=o.state.selection.to-g.endA,g.endA=o.state.selection.to)),qe&&Yt<=11&&g.endB==g.start+1&&g.endA==g.start&&g.start>p.from&&p.doc.textBetween(g.start-p.from-1,g.start-p.from+1)==" "&&(g.start--,g.endA--,g.endB--);let h=p.doc.resolveNoCache(g.start-p.from),b=p.doc.resolveNoCache(g.endB-p.from),k=c.resolve(g.start),I=h.sameParent(b)&&h.parent.inlineContent&&k.end()>=g.endA,S;if((qo&&o.input.lastIOSEnter>Date.now()-225&&(!I||a.some(C=>C.nodeName=="DIV"||C.nodeName=="P"))||!I&&h.pos<p.doc.content.size&&!h.sameParent(b)&&(S=Z.findFrom(p.doc.resolve(h.pos+1),1,!0))&&S.head==b.pos)&&o.someProp("handleKeyDown",C=>C(o,vo(13,"Enter")))){o.input.lastIOSEnter=0;return}if(o.state.selection.anchor>g.start&&Rf(c,g.start,g.endA,h,b)&&o.someProp("handleKeyDown",C=>C(o,vo(8,"Backspace")))){ht&&Te&&o.domObserver.suppressSelectionUpdates();return}Te&&ht&&g.endB==g.start&&(o.input.lastAndroidDelete=Date.now()),ht&&!I&&h.start()!=b.start()&&b.parentOffset==0&&h.depth==b.depth&&p.sel&&p.sel.anchor==p.sel.head&&p.sel.head==g.endA&&(g.endB-=2,b=p.doc.resolveNoCache(g.endB-p.from),setTimeout(()=>{o.someProp("handleKeyDown",function(C){return C(o,vo(13,"Enter"))})},20));let j=g.start,T=g.endA,D,P,U;if(I){if(h.pos==b.pos)qe&&Yt<=11&&h.parentOffset==0&&(o.domObserver.suppressSelectionUpdates(),setTimeout(()=>Nt(o),20)),D=o.state.tr.delete(j,T),P=c.resolve(g.start).marksAcross(c.resolve(g.endA));else if(g.endA==g.endB&&(U=Bf(h.parent.content.cut(h.parentOffset,b.parentOffset),k.parent.content.cut(k.parentOffset,g.endA-k.start()))))D=o.state.tr,U.type=="add"?D.addMark(j,T,U.mark):D.removeMark(j,T,U.mark);else if(h.parent.child(h.index()).isText&&h.index()==b.index()-(b.textOffset?0:1)){let C=h.parent.textBetween(h.parentOffset,b.parentOffset);if(o.someProp("handleTextInput",q=>q(o,j,T,C)))return;D=o.state.tr.insertText(C,j,T)}}if(D||(D=o.state.tr.replace(j,T,p.doc.slice(g.start-p.from,g.endB-p.from))),p.sel){let C=lc(o,D.doc,p.sel);C&&!(Te&&ht&&o.composing&&C.empty&&(g.start!=g.endB||o.input.lastAndroidDelete<Date.now()-100)&&(C.head==j||C.head==D.mapping.map(T)-1)||qe&&C.empty&&C.head==j)&&D.setSelection(C)}P&&D.ensureMarks(P),s&&D.setMeta("composition",s),o.dispatch(D.scrollIntoView())}function lc(o,e,t){return Math.max(t.anchor,t.head)>e.content.size?null:di(o,e.resolve(t.anchor),e.resolve(t.head))}function Bf(o,e){let t=o.firstChild.marks,n=e.firstChild.marks,a=t,s=n,i,r,l;for(let c=0;c<n.length;c++)a=n[c].removeFromSet(a);for(let c=0;c<t.length;c++)s=t[c].removeFromSet(s);if(a.length==1&&s.length==0)r=a[0],i="add",l=c=>c.mark(r.addToSet(c.marks));else if(a.length==0&&s.length==1)r=s[0],i="remove",l=c=>c.mark(r.removeFromSet(c.marks));else return null;let p=[];for(let c=0;c<e.childCount;c++)p.push(l(e.child(c)));if(x.from(p).eq(o))return{mark:r,type:i}}function Rf(o,e,t,n,a){if(t-e<=a.pos-n.pos||Di(n,!0,!1)<a.pos)return!1;let s=o.resolve(e);if(!n.parent.isTextblock){let r=s.nodeAfter;return r!=null&&t==e+r.nodeSize}if(s.parentOffset<s.parent.content.size||!s.parent.isTextblock)return!1;let i=o.resolve(Di(s,!0,!0));return!i.parent.isTextblock||i.pos>t||Di(i,!0,!1)<t?!1:n.parent.content.cut(n.parentOffset).eq(i.parent.content)}function Di(o,e,t){let n=o.depth,a=e?o.end():o.pos;for(;n>0&&(e||o.indexAfter(n)==o.node(n).childCount);)n--,a++,e=!1;if(t){let s=o.node(n).maybeChild(o.indexAfter(n));for(;s&&!s.isLeaf;)s=s.firstChild,a++}return a}function Lf(o,e,t,n,a){let s=o.findDiffStart(e,t);if(s==null)return null;let{a:i,b:r}=o.findDiffEnd(e,t+o.size,t+e.size);if(a=="end"){let l=Math.max(0,s-Math.min(i,r));n-=i+l-s}if(i<s&&o.size<e.size){let l=n<=s&&n>=i?s-n:0;s-=l,s&&s<e.size&&pc(e.textBetween(s-1,s+1))&&(s+=l?1:-1),r=s+(r-i),i=s}else if(r<s){let l=n<=s&&n>=r?s-n:0;s-=l,s&&s<o.size&&pc(o.textBetween(s-1,s+1))&&(s+=l?1:-1),i=s+(i-r),r=s}return{start:s,endA:i,endB:r}}function pc(o){if(o.length!=2)return!1;let e=o.charCodeAt(0),t=o.charCodeAt(1);return e>=56320&&e<=57343&&t>=55296&&t<=56319}class Pf{constructor(e,t){this._root=null,this.focused=!1,this.trackWrites=null,this.mounted=!1,this.markCursor=null,this.cursorWrapper=null,this.lastSelectedViewDesc=void 0,this.input=new nf,this.prevDirectPlugins=[],this.pluginViews=[],this.requiresGeckoHackNode=!1,this.dragging=null,this._props=t,this.state=t.state,this.directPlugins=t.plugins||[],this.directPlugins.forEach(gc),this.dispatch=this.dispatch.bind(this),this.dom=e&&e.mount||document.createElement("div"),e&&(e.appendChild?e.appendChild(this.dom):typeof e=="function"?e(this.dom):e.mount&&(this.mounted=!0)),this.editable=dc(this),mc(this),this.nodeViews=uc(this),this.docView=vp(this.state.doc,cc(this),_i(this),this.dom,this),this.domObserver=new xf(this,(n,a,s,i)=>Nf(this,n,a,s,i)),this.domObserver.start(),af(this),this.updatePluginViews()}get composing(){return this.input.composing}get props(){if(this._props.state!=this.state){let e=this._props;this._props={};for(let t in e)this._props[t]=e[t];this._props.state=this.state}return this._props}update(e){e.handleDOMEvents!=this._props.handleDOMEvents&&hi(this);let t=this._props;this._props=e,e.plugins&&(e.plugins.forEach(gc),this.directPlugins=e.plugins),this.updateStateInner(e.state,t)}setProps(e){let t={};for(let n in this._props)t[n]=this._props[n];t.state=this.state;for(let n in e)t[n]=e[n];this.update(t)}updateState(e){this.updateStateInner(e,this._props)}updateStateInner(e,t){var n;let a=this.state,s=!1,i=!1;e.storedMarks&&this.composing&&(Xp(this),i=!0),this.state=e;let r=a.plugins!=e.plugins||this._props.plugins!=t.plugins;if(r||this._props.plugins!=t.plugins||this._props.nodeViews!=t.nodeViews){let u=uc(this);$f(u,this.nodeViews)&&(this.nodeViews=u,s=!0)}(r||t.handleDOMEvents!=this._props.handleDOMEvents)&&hi(this),this.editable=dc(this),mc(this);let l=_i(this),p=cc(this),c=a.plugins!=e.plugins&&!a.doc.eq(e.doc)?"reset":e.scrollToSelection>a.scrollToSelection?"to selection":"preserve",m=s||!this.docView.matchesNode(e.doc,p,l);(m||!e.selection.eq(a.selection))&&(i=!0);let d=c=="preserve"&&i&&this.dom.style.overflowAnchor==null&&jg(this);if(i){this.domObserver.stop();let u=m&&(qe||Te)&&!this.composing&&!a.selection.empty&&!e.selection.empty&&zf(a.selection,e.selection);if(m){let g=Te?this.trackWrites=this.domSelectionRange().focusNode:null;this.composing&&(this.input.compositionNode=jf(this)),(s||!this.docView.update(e.doc,p,l,this))&&(this.docView.updateOuterDeco(p),this.docView.destroy(),this.docView=vp(e.doc,p,l,this.dom,this)),g&&!this.trackWrites&&(u=!0)}u||!(this.input.mouseDown&&this.domObserver.currentSelection.eq(this.domSelectionRange())&&Hg(this))?Nt(this,u):(Sp(this,e.selection),this.domObserver.setCurSelection()),this.domObserver.start()}this.updatePluginViews(a),!((n=this.dragging)===null||n===void 0)&&n.node&&!a.doc.eq(e.doc)&&this.updateDraggedNode(this.dragging,a),c=="reset"?this.dom.scrollTop=0:c=="to selection"?this.scrollToSelection():d&&vg(d)}scrollToSelection(){let e=this.domSelectionRange().focusNode;if(!this.someProp("handleScrollToSelection",t=>t(this)))if(this.state.selection instanceof W){let t=this.docView.domAfterPos(this.state.selection.from);t.nodeType==1&&ip(this,t.getBoundingClientRect(),e)}else ip(this,this.coordsAtPos(this.state.selection.head,1),e)}destroyPluginViews(){let e;for(;e=this.pluginViews.pop();)e.destroy&&e.destroy()}updatePluginViews(e){if(!e||e.plugins!=this.state.plugins||this.directPlugins!=this.prevDirectPlugins){this.prevDirectPlugins=this.directPlugins,this.destroyPluginViews();for(let t=0;t<this.directPlugins.length;t++){let n=this.directPlugins[t];n.spec.view&&this.pluginViews.push(n.spec.view(this))}for(let t=0;t<this.state.plugins.length;t++){let n=this.state.plugins[t];n.spec.view&&this.pluginViews.push(n.spec.view(this))}}else for(let t=0;t<this.pluginViews.length;t++){let n=this.pluginViews[t];n.update&&n.update(this,e)}}updateDraggedNode(e,t){let n=e.node,a=-1;if(this.state.doc.nodeAt(n.from)==n.node)a=n.from;else{let s=n.from+(this.state.doc.content.size-t.doc.content.size);(s>0&&this.state.doc.nodeAt(s))==n.node&&(a=s)}this.dragging=new Qp(e.slice,e.move,a<0?void 0:W.create(this.state.doc,a))}someProp(e,t){let n=this._props&&this._props[e],a;if(n!=null&&(a=t?t(n):n))return a;for(let i=0;i<this.directPlugins.length;i++){let r=this.directPlugins[i].props[e];if(r!=null&&(a=t?t(r):r))return a}let s=this.state.plugins;if(s)for(let i=0;i<s.length;i++){let r=s[i].props[e];if(r!=null&&(a=t?t(r):r))return a}}hasFocus(){if(qe){let e=this.root.activeElement;if(e==this.dom)return!0;if(!e||!this.dom.contains(e))return!1;for(;e&&this.dom!=e&&this.dom.contains(e);){if(e.contentEditable=="false")return!1;e=e.parentElement}return!0}return this.root.activeElement==this.dom}focus(){this.domObserver.stop(),this.editable&&kg(this.dom),Nt(this),this.domObserver.start()}get root(){let e=this._root;if(e==null){for(let t=this.dom.parentNode;t;t=t.parentNode)if(t.nodeType==9||t.nodeType==11&&t.host)return t.getSelection||(Object.getPrototypeOf(t).getSelection=()=>t.ownerDocument.getSelection()),this._root=t}return e||document}updateRoot(){this._root=null}posAtCoords(e){return Ig(this,e)}coordsAtPos(e,t=1){return dp(this,e,t)}domAtPos(e,t=0){return this.docView.domFromPos(e,t)}nodeDOM(e){let t=this.docView.descAt(e);return t?t.nodeDOM:null}posAtDOM(e,t,n=-1){let a=this.docView.posFromDOM(e,t,n);if(a==null)throw new RangeError("DOM position not inside the editor");return a}endOfTextblock(e,t){return Mg(this,t||this.state,e)}pasteHTML(e,t){return Sn(this,"",e,!1,t||new ClipboardEvent("paste"))}pasteText(e,t){return Sn(this,e,null,!0,t||new ClipboardEvent("paste"))}destroy(){this.docView&&(sf(this),this.destroyPluginViews(),this.mounted?(this.docView.update(this.state.doc,[],_i(this),this),this.dom.textContent=""):this.dom.parentNode&&this.dom.parentNode.removeChild(this.dom),this.docView.destroy(),this.docView=null,rg())}get isDestroyed(){return this.docView==null}dispatchEvent(e){return lf(this,e)}dispatch(e){let t=this._props.dispatchTransaction;t?t.call(this,e):this.updateState(this.state.apply(e))}domSelectionRange(){let e=this.domSelection();return e?Re&&this.root.nodeType===11&&dg(this.dom.ownerDocument)==this.dom&&Mf(this,e)||e:{focusNode:null,focusOffset:0,anchorNode:null,anchorOffset:0}}domSelection(){return this.root.getSelection()}}function cc(o){let e=Object.create(null);return e.class="ProseMirror",e.contenteditable=String(o.editable),o.someProp("attributes",t=>{if(typeof t=="function"&&(t=t(o.state)),t)for(let n in t)n=="class"?e.class+=" "+t[n]:n=="style"?e.style=(e.style?e.style+";":"")+t[n]:!e[n]&&n!="contenteditable"&&n!="nodeName"&&(e[n]=String(t[n]))}),e.translate||(e.translate="no"),[ze.node(0,o.state.doc.content.size,e)]}function mc(o){if(o.markCursor){let e=document.createElement("img");e.className="ProseMirror-separator",e.setAttribute("mark-placeholder","true"),e.setAttribute("alt",""),o.cursorWrapper={dom:e,deco:ze.widget(o.state.selection.from,e,{raw:!0,marks:o.markCursor})}}else o.cursorWrapper=null}function dc(o){return!o.someProp("editable",e=>e(o.state)===!1)}function zf(o,e){let t=Math.min(o.$anchor.sharedDepth(o.head),e.$anchor.sharedDepth(e.head));return o.$anchor.start(t)!=e.$anchor.start(t)}function uc(o){let e=Object.create(null);function t(n){for(let a in n)Object.prototype.hasOwnProperty.call(e,a)||(e[a]=n[a])}return o.someProp("nodeViews",t),o.someProp("markViews",t),e}function $f(o,e){let t=0,n=0;for(let a in o){if(o[a]!=e[a])return!0;t++}for(let a in e)n++;return t!=n}function gc(o){if(o.spec.state||o.spec.filterTransaction||o.spec.appendTransaction)throw new RangeError("Plugins passed directly to the view must not have a state component")}for(var no={8:"Backspace",9:"Tab",10:"Enter",12:"NumLock",13:"Enter",16:"Shift",17:"Control",18:"Alt",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",44:"PrintScreen",45:"Insert",46:"Delete",59:";",61:"=",91:"Meta",92:"Meta",106:"*",107:"+",108:",",109:"-",110:".",111:"/",144:"NumLock",145:"ScrollLock",160:"Shift",161:"Shift",162:"Control",163:"Control",164:"Alt",165:"Alt",173:"-",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"},Ia={48:")",49:"!",50:"@",51:"#",52:"$",53:"%",54:"^",55:"&",56:"*",57:"(",59:":",61:"+",173:"_",186:":",187:"+",188:"<",189:"_",190:">",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'},Hf=typeof navigator<"u"&&/Mac/.test(navigator.platform),Vf=typeof navigator<"u"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent),Fe=0;Fe<10;Fe++)no[48+Fe]=no[96+Fe]=String(Fe);for(var Fe=1;Fe<=24;Fe++)no[Fe+111]="F"+Fe;for(var Fe=65;Fe<=90;Fe++)no[Fe]=String.fromCharCode(Fe+32),Ia[Fe]=String.fromCharCode(Fe);for(var wi in no)Ia.hasOwnProperty(wi)||(Ia[wi]=no[wi]);function qf(o){var e=Hf&&o.metaKey&&o.shiftKey&&!o.ctrlKey&&!o.altKey||Vf&&o.shiftKey&&o.key&&o.key.length==1||o.key=="Unidentified",t=!e&&o.key||(o.shiftKey?Ia:no)[o.keyCode]||o.key||"Unidentified";return t=="Esc"&&(t="Escape"),t=="Del"&&(t="Delete"),t=="Left"&&(t="ArrowLeft"),t=="Up"&&(t="ArrowUp"),t=="Right"&&(t="ArrowRight"),t=="Down"&&(t="ArrowDown"),t}const Wf=typeof navigator<"u"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):!1;function Uf(o){let e=o.split(/-(?!$)/),t=e[e.length-1];t=="Space"&&(t=" ");let n,a,s,i;for(let r=0;r<e.length-1;r++){let l=e[r];if(/^(cmd|meta|m)$/i.test(l))i=!0;else if(/^a(lt)?$/i.test(l))n=!0;else if(/^(c|ctrl|control)$/i.test(l))a=!0;else if(/^s(hift)?$/i.test(l))s=!0;else if(/^mod$/i.test(l))Wf?i=!0:a=!0;else throw new Error("Unrecognized modifier name: "+l)}return n&&(t="Alt-"+t),a&&(t="Ctrl-"+t),i&&(t="Meta-"+t),s&&(t="Shift-"+t),t}function Kf(o){let e=Object.create(null);for(let t in o)e[Uf(t)]=o[t];return e}function Ii(o,e,t=!0){return e.altKey&&(o="Alt-"+o),e.ctrlKey&&(o="Ctrl-"+o),e.metaKey&&(o="Meta-"+o),t&&e.shiftKey&&(o="Shift-"+o),o}function Gf(o){return new ue({props:{handleKeyDown:fc(o)}})}function fc(o){let e=Kf(o);return function(t,n){let a=qf(n),s,i=e[Ii(a,n)];if(i&&i(t.state,t.dispatch,t))return!0;if(a.length==1&&a!=" "){if(n.shiftKey){let r=e[Ii(a,n,!1)];if(r&&r(t.state,t.dispatch,t))return!0}if((n.shiftKey||n.altKey||n.metaKey||a.charCodeAt(0)>127)&&(s=no[n.keyCode])&&s!=a){let r=e[Ii(s,n)];if(r&&r(t.state,t.dispatch,t))return!0}}return!1}}const Ei=(o,e)=>o.selection.empty?!1:(e&&e(o.tr.deleteSelection().scrollIntoView()),!0);function hc(o,e){let{$cursor:t}=o.selection;return!t||(e?!e.endOfTextblock("backward",o):t.parentOffset>0)?null:t}const bc=(o,e,t)=>{let n=hc(o,t);if(!n)return!1;let a=Ci(n);if(!a){let i=n.blockRange(),r=i&&Po(i);return r==null?!1:(e&&e(o.tr.lift(i,r).scrollIntoView()),!0)}let s=a.nodeBefore;if(Ec(o,a,e,-1))return!0;if(n.parent.content.size==0&&(Jo(s,"end")||W.isSelectable(s)))for(let i=n.depth;;i--){let r=fa(o.doc,n.before(i),n.after(i),N.empty);if(r&&r.slice.size<r.to-r.from){if(e){let l=o.tr.step(r);l.setSelection(Jo(s,"end")?Z.findFrom(l.doc.resolve(l.mapping.map(a.pos,-1)),-1):W.create(l.doc,a.pos-s.nodeSize)),e(l.scrollIntoView())}return!0}if(i==1||n.node(i-1).childCount>1)break}return s.isAtom&&a.depth==n.depth-1?(e&&e(o.tr.delete(a.pos-s.nodeSize,a.pos).scrollIntoView()),!0):!1},Jf=(o,e,t)=>{let n=hc(o,t);if(!n)return!1;let a=Ci(n);return a?jc(o,a,e):!1},Yf=(o,e,t)=>{let n=kc(o,t);if(!n)return!1;let a=xi(n);return a?jc(o,a,e):!1};function jc(o,e,t){let n=e.nodeBefore,a=n,s=e.pos-1;for(;!a.isTextblock;s--){if(a.type.spec.isolating)return!1;let c=a.lastChild;if(!c)return!1;a=c}let i=e.nodeAfter,r=i,l=e.pos+1;for(;!r.isTextblock;l++){if(r.type.spec.isolating)return!1;let c=r.firstChild;if(!c)return!1;r=c}let p=fa(o.doc,s,l,N.empty);if(!p||p.from!=s||p instanceof we&&p.slice.size>=l-s)return!1;if(t){let c=o.tr.step(p);c.setSelection(J.create(c.doc,s)),t(c.scrollIntoView())}return!0}function Jo(o,e,t=!1){for(let n=o;n;n=e=="start"?n.firstChild:n.lastChild){if(n.isTextblock)return!0;if(t&&n.childCount!=1)return!1}return!1}const vc=(o,e,t)=>{let{$head:n,empty:a}=o.selection,s=n;if(!a)return!1;if(n.parent.isTextblock){if(t?!t.endOfTextblock("backward",o):n.parentOffset>0)return!1;s=Ci(n)}let i=s&&s.nodeBefore;return!i||!W.isSelectable(i)?!1:(e&&e(o.tr.setSelection(W.create(o.doc,s.pos-i.nodeSize)).scrollIntoView()),!0)};function Ci(o){if(!o.parent.type.spec.isolating)for(let e=o.depth-1;e>=0;e--){if(o.index(e)>0)return o.doc.resolve(o.before(e+1));if(o.node(e).type.spec.isolating)break}return null}function kc(o,e){let{$cursor:t}=o.selection;return!t||(e?!e.endOfTextblock("forward",o):t.parentOffset<t.parent.content.size)?null:t}const yc=(o,e,t)=>{let n=kc(o,t);if(!n)return!1;let a=xi(n);if(!a)return!1;let s=a.nodeAfter;if(Ec(o,a,e,1))return!0;if(n.parent.content.size==0&&(Jo(s,"start")||W.isSelectable(s))){let i=fa(o.doc,n.before(),n.after(),N.empty);if(i&&i.slice.size<i.to-i.from){if(e){let r=o.tr.step(i);r.setSelection(Jo(s,"start")?Z.findFrom(r.doc.resolve(r.mapping.map(a.pos)),1):W.create(r.doc,r.mapping.map(a.pos))),e(r.scrollIntoView())}return!0}}return s.isAtom&&a.depth==n.depth-1?(e&&e(o.tr.delete(a.pos,a.pos+s.nodeSize).scrollIntoView()),!0):!1},_c=(o,e,t)=>{let{$head:n,empty:a}=o.selection,s=n;if(!a)return!1;if(n.parent.isTextblock){if(t?!t.endOfTextblock("forward",o):n.parentOffset<n.parent.content.size)return!1;s=xi(n)}let i=s&&s.nodeAfter;return!i||!W.isSelectable(i)?!1:(e&&e(o.tr.setSelection(W.create(o.doc,s.pos)).scrollIntoView()),!0)};function xi(o){if(!o.parent.type.spec.isolating)for(let e=o.depth-1;e>=0;e--){let t=o.node(e);if(o.index(e)+1<t.childCount)return o.doc.resolve(o.after(e+1));if(t.type.spec.isolating)break}return null}const Xf=(o,e)=>{let t=o.selection,n=t instanceof W,a;if(n){if(t.node.isTextblock||!Gt(o.doc,t.from))return!1;a=t.from}else if(a=ga(o.doc,t.from,-1),a==null)return!1;if(e){let s=o.tr.join(a);n&&s.setSelection(W.create(s.doc,a-o.doc.resolve(a).nodeBefore.nodeSize)),e(s.scrollIntoView())}return!0},Zf=(o,e)=>{let t=o.selection,n;if(t instanceof W){if(t.node.isTextblock||!Gt(o.doc,t.to))return!1;n=t.to}else if(n=ga(o.doc,t.to,1),n==null)return!1;return e&&e(o.tr.join(n).scrollIntoView()),!0},Qf=(o,e)=>{let{$from:t,$to:n}=o.selection,a=t.blockRange(n),s=a&&Po(a);return s==null?!1:(e&&e(o.tr.lift(a,s).scrollIntoView()),!0)},Dc=(o,e)=>{let{$head:t,$anchor:n}=o.selection;return!t.parent.type.spec.code||!t.sameParent(n)?!1:(e&&e(o.tr.insertText(`
|
|
10
|
-
`).scrollIntoView()),!0)};function Si(o){for(let e=0;e<o.edgeCount;e++){let{type:t}=o.edge(e);if(t.isTextblock&&!t.hasRequiredAttrs())return t}return null}const eh=(o,e)=>{let{$head:t,$anchor:n}=o.selection;if(!t.parent.type.spec.code||!t.sameParent(n))return!1;let a=t.node(-1),s=t.indexAfter(-1),i=Si(a.contentMatchAt(s));if(!i||!a.canReplaceWith(s,s,i))return!1;if(e){let r=t.after(),l=o.tr.replaceWith(r,r,i.createAndFill());l.setSelection(Z.near(l.doc.resolve(r),1)),e(l.scrollIntoView())}return!0},wc=(o,e)=>{let t=o.selection,{$from:n,$to:a}=t;if(t instanceof Ze||n.parent.inlineContent||a.parent.inlineContent)return!1;let s=Si(a.parent.contentMatchAt(a.indexAfter()));if(!s||!s.isTextblock)return!1;if(e){let i=(!n.parentOffset&&a.index()<a.parent.childCount?n:a).pos,r=o.tr.insert(i,s.createAndFill());r.setSelection(J.create(r.doc,i+1)),e(r.scrollIntoView())}return!0},Ic=(o,e)=>{let{$cursor:t}=o.selection;if(!t||t.parent.content.size)return!1;if(t.depth>1&&t.after()!=t.end(-1)){let s=t.before();if(Ot(o.doc,s))return e&&e(o.tr.split(s).scrollIntoView()),!0}let n=t.blockRange(),a=n&&Po(n);return a==null?!1:(e&&e(o.tr.lift(n,a).scrollIntoView()),!0)};function th(o){return(e,t)=>{let{$from:n,$to:a}=e.selection;if(e.selection instanceof W&&e.selection.node.isBlock)return!n.parentOffset||!Ot(e.doc,n.pos)?!1:(t&&t(e.tr.split(n.pos).scrollIntoView()),!0);if(!n.parent.isBlock)return!1;if(t){let s=a.parentOffset==a.parent.content.size,i=e.tr;(e.selection instanceof J||e.selection instanceof Ze)&&i.deleteSelection();let r=n.depth==0?null:Si(n.node(-1).contentMatchAt(n.indexAfter(-1))),l=s&&r?[{type:r}]:void 0,p=Ot(i.doc,i.mapping.map(n.pos),1,l);if(!l&&!p&&Ot(i.doc,i.mapping.map(n.pos),1,r?[{type:r}]:void 0)&&(r&&(l=[{type:r}]),p=!0),p&&(i.split(i.mapping.map(n.pos),1,l),!s&&!n.parentOffset&&n.parent.type!=r)){let c=i.mapping.map(n.before()),m=i.doc.resolve(c);r&&n.node(-1).canReplaceWith(m.index(),m.index()+1,r)&&i.setNodeMarkup(i.mapping.map(n.before()),r)}t(i.scrollIntoView())}return!0}}const oh=th(),nh=(o,e)=>{let{$from:t,to:n}=o.selection,a,s=t.sharedDepth(n);return s==0?!1:(a=t.before(s),e&&e(o.tr.setSelection(W.create(o.doc,a))),!0)};function ah(o,e,t){let n=e.nodeBefore,a=e.nodeAfter,s=e.index();return!n||!a||!n.type.compatibleContent(a.type)?!1:!n.content.size&&e.parent.canReplace(s-1,s)?(t&&t(o.tr.delete(e.pos-n.nodeSize,e.pos).scrollIntoView()),!0):!e.parent.canReplace(s,s+1)||!(a.isTextblock||Gt(o.doc,e.pos))?!1:(t&&t(o.tr.clearIncompatible(e.pos,n.type,n.contentMatchAt(n.childCount)).join(e.pos).scrollIntoView()),!0)}function Ec(o,e,t,n){let a=e.nodeBefore,s=e.nodeAfter,i,r,l=a.type.spec.isolating||s.type.spec.isolating;if(!l&&ah(o,e,t))return!0;let p=!l&&e.parent.canReplace(e.index(),e.index()+1);if(p&&(i=(r=a.contentMatchAt(a.childCount)).findWrapping(s.type))&&r.matchType(i[0]||s.type).validEnd){if(t){let u=e.pos+s.nodeSize,g=x.empty;for(let k=i.length-1;k>=0;k--)g=x.from(i[k].create(null,g));g=x.from(a.copy(g));let h=o.tr.step(new Ie(e.pos-1,u,e.pos,u,new N(g,1,0),i.length,!0)),b=u+2*i.length;Gt(h.doc,b)&&h.join(b),t(h.scrollIntoView())}return!0}let c=s.type.spec.isolating||n>0&&l?null:Z.findFrom(e,1),m=c&&c.$from.blockRange(c.$to),d=m&&Po(m);if(d!=null&&d>=e.depth)return t&&t(o.tr.lift(m,d).scrollIntoView()),!0;if(p&&Jo(s,"start",!0)&&Jo(a,"end")){let u=a,g=[];for(;g.push(u),!u.isTextblock;)u=u.lastChild;let h=s,b=1;for(;!h.isTextblock;h=h.firstChild)b++;if(u.canReplace(u.childCount,u.childCount,h.content)){if(t){let k=x.empty;for(let S=g.length-1;S>=0;S--)k=x.from(g[S].copy(k));let I=o.tr.step(new Ie(e.pos-g.length,e.pos+s.nodeSize,e.pos+b,e.pos+s.nodeSize-b,new N(k,g.length,0),0,!0));t(I.scrollIntoView())}return!0}}return!1}function Cc(o){return function(e,t){let n=e.selection,a=o<0?n.$from:n.$to,s=a.depth;for(;a.node(s).isInline;){if(!s)return!1;s--}return a.node(s).isTextblock?(t&&t(e.tr.setSelection(J.create(e.doc,o<0?a.start(s):a.end(s)))),!0):!1}}const sh=Cc(-1),ih=Cc(1);function rh(o,e=null){return function(t,n){let{$from:a,$to:s}=t.selection,i=a.blockRange(s),r=i&&Js(i,o,e);return r?(n&&n(t.tr.wrap(i,r).scrollIntoView()),!0):!1}}function xc(o,e=null){return function(t,n){let a=!1;for(let s=0;s<t.selection.ranges.length&&!a;s++){let{$from:{pos:i},$to:{pos:r}}=t.selection.ranges[s];t.doc.nodesBetween(i,r,(l,p)=>{if(a)return!1;if(!(!l.isTextblock||l.hasMarkup(o,e)))if(l.type==o)a=!0;else{let c=t.doc.resolve(p),m=c.index();a=c.parent.canReplaceWith(m,m+1,o)}})}if(!a)return!1;if(n){let s=t.tr;for(let i=0;i<t.selection.ranges.length;i++){let{$from:{pos:r},$to:{pos:l}}=t.selection.ranges[i];s.setBlockType(r,l,o,e)}n(s.scrollIntoView())}return!0}}function Mi(...o){return function(e,t,n){for(let a=0;a<o.length;a++)if(o[a](e,t,n))return!0;return!1}}Mi(Ei,bc,vc),Mi(Ei,yc,_c),Mi(Dc,wc,Ic,oh),typeof navigator<"u"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):typeof os<"u"&&os.platform&&os.platform()=="darwin";function lh(o,e=null){return function(t,n){let{$from:a,$to:s}=t.selection,i=a.blockRange(s),r=!1,l=i;if(!i)return!1;if(i.depth>=2&&a.node(i.depth-1).type.compatibleContent(o)&&i.startIndex==0){if(a.index(i.depth-1)==0)return!1;let c=t.doc.resolve(i.start-2);l=new sa(c,c,i.depth),i.endIndex<i.parent.childCount&&(i=new sa(a,t.doc.resolve(s.end(i.depth)),i.depth)),r=!0}let p=Js(l,o,e,i);return p?(n&&n(ph(t.tr,i,p,r,o).scrollIntoView()),!0):!1}}function ph(o,e,t,n,a){let s=x.empty;for(let c=t.length-1;c>=0;c--)s=x.from(t[c].type.create(t[c].attrs,s));o.step(new Ie(e.start-(n?2:0),e.end,e.start,e.end,new N(s,0,0),t.length,!0));let i=0;for(let c=0;c<t.length;c++)t[c].type==a&&(i=c+1);let r=t.length-i,l=e.start+t.length-(n?2:0),p=e.parent;for(let c=e.startIndex,m=e.endIndex,d=!0;c<m;c++,d=!1)!d&&Ot(o.doc,l,r)&&(o.split(l,r),l+=2*r),l+=p.child(c).nodeSize;return o}function ch(o){return function(e,t){let{$from:n,$to:a}=e.selection,s=n.blockRange(a,i=>i.childCount>0&&i.firstChild.type==o);return s?t?n.node(s.depth-1).type==o?mh(e,t,o,s):dh(e,t,s):!0:!1}}function mh(o,e,t,n){let a=o.tr,s=n.end,i=n.$to.end(n.depth);s<i&&(a.step(new Ie(s-1,i,s,i,new N(x.from(t.create(null,n.parent.copy())),1,0),1,!0)),n=new sa(a.doc.resolve(n.$from.pos),a.doc.resolve(i),n.depth));const r=Po(n);if(r==null)return!1;a.lift(n,r);let l=a.mapping.map(s,-1)-1;return Gt(a.doc,l)&&a.join(l),e(a.scrollIntoView()),!0}function dh(o,e,t){let n=o.tr,a=t.parent;for(let u=t.end,g=t.endIndex-1,h=t.startIndex;g>h;g--)u-=a.child(g).nodeSize,n.delete(u-1,u+1);let s=n.doc.resolve(t.start),i=s.nodeAfter;if(n.mapping.map(t.end)!=t.start+s.nodeAfter.nodeSize)return!1;let r=t.startIndex==0,l=t.endIndex==a.childCount,p=s.node(-1),c=s.index(-1);if(!p.canReplace(c+(r?0:1),c+1,i.content.append(l?x.empty:x.from(a))))return!1;let m=s.pos,d=m+i.nodeSize;return n.step(new Ie(m-(r?1:0),d+(l?1:0),m+1,d-1,new N((r?x.empty:x.from(a.copy(x.empty))).append(l?x.empty:x.from(a.copy(x.empty))),r?0:1,l?0:1),r?0:1)),e(n.scrollIntoView()),!0}function uh(o){return function(e,t){let{$from:n,$to:a}=e.selection,s=n.blockRange(a,p=>p.childCount>0&&p.firstChild.type==o);if(!s)return!1;let i=s.startIndex;if(i==0)return!1;let r=s.parent,l=r.child(i-1);if(l.type!=o)return!1;if(t){let p=l.lastChild&&l.lastChild.type==r.type,c=x.from(p?o.create():null),m=new N(x.from(o.create(null,x.from(r.type.create(null,c)))),p?3:1,0),d=s.start,u=s.end;t(e.tr.step(new Ie(d-(p?3:1),u,d,u,m,1,!0)).scrollIntoView())}return!0}}function Ea(o){const{state:e,transaction:t}=o;let{selection:n}=t,{doc:a}=t,{storedMarks:s}=t;return{...e,apply:e.apply.bind(e),applyTransaction:e.applyTransaction.bind(e),plugins:e.plugins,schema:e.schema,reconfigure:e.reconfigure.bind(e),toJSON:e.toJSON.bind(e),get storedMarks(){return s},get selection(){return n},get doc(){return a},get tr(){return n=t.selection,a=t.doc,s=t.storedMarks,t}}}class Ca{constructor(e){this.editor=e.editor,this.rawCommands=this.editor.extensionManager.commands,this.customState=e.state}get hasCustomState(){return!!this.customState}get state(){return this.customState||this.editor.state}get commands(){const{rawCommands:e,editor:t,state:n}=this,{view:a}=t,{tr:s}=n,i=this.buildProps(s);return Object.fromEntries(Object.entries(e).map(([r,l])=>[r,(...c)=>{const m=l(...c)(i);return!s.getMeta("preventDispatch")&&!this.hasCustomState&&a.dispatch(s),m}]))}get chain(){return()=>this.createChain()}get can(){return()=>this.createCan()}createChain(e,t=!0){const{rawCommands:n,editor:a,state:s}=this,{view:i}=a,r=[],l=!!e,p=e||s.tr,c=()=>(!l&&t&&!p.getMeta("preventDispatch")&&!this.hasCustomState&&i.dispatch(p),r.every(d=>d===!0)),m={...Object.fromEntries(Object.entries(n).map(([d,u])=>[d,(...h)=>{const b=this.buildProps(p,t),k=u(...h)(b);return r.push(k),m}])),run:c};return m}createCan(e){const{rawCommands:t,state:n}=this,a=!1,s=e||n.tr,i=this.buildProps(s,a);return{...Object.fromEntries(Object.entries(t).map(([l,p])=>[l,(...c)=>p(...c)({...i,dispatch:void 0})])),chain:()=>this.createChain(s,a)}}buildProps(e,t=!0){const{rawCommands:n,editor:a,state:s}=this,{view:i}=a,r={tr:e,editor:a,view:i,state:Ea({state:s,transaction:e}),dispatch:t?()=>{}:void 0,chain:()=>this.createChain(e,t),can:()=>this.createCan(e),get commands(){return Object.fromEntries(Object.entries(n).map(([l,p])=>[l,(...c)=>p(...c)(r)]))}};return r}}class gh{constructor(){this.callbacks={}}on(e,t){return this.callbacks[e]||(this.callbacks[e]=[]),this.callbacks[e].push(t),this}emit(e,...t){const n=this.callbacks[e];return n&&n.forEach(a=>a.apply(this,t)),this}off(e,t){const n=this.callbacks[e];return n&&(t?this.callbacks[e]=n.filter(a=>a!==t):delete this.callbacks[e]),this}once(e,t){const n=(...a)=>{this.off(e,n),t.apply(this,a)};return this.on(e,n)}removeAllListeners(){this.callbacks={}}}function R(o,e,t){return o.config[e]===void 0&&o.parent?R(o.parent,e,t):typeof o.config[e]=="function"?o.config[e].bind({...t,parent:o.parent?R(o.parent,e,t):null}):o.config[e]}function xa(o){const e=o.filter(a=>a.type==="extension"),t=o.filter(a=>a.type==="node"),n=o.filter(a=>a.type==="mark");return{baseExtensions:e,nodeExtensions:t,markExtensions:n}}function Sc(o){const e=[],{nodeExtensions:t,markExtensions:n}=xa(o),a=[...t,...n],s={default:null,rendered:!0,renderHTML:null,parseHTML:null,keepOnSplit:!0,isRequired:!1};return o.forEach(i=>{const r={name:i.name,options:i.options,storage:i.storage,extensions:a},l=R(i,"addGlobalAttributes",r);if(!l)return;l().forEach(c=>{c.types.forEach(m=>{Object.entries(c.attributes).forEach(([d,u])=>{e.push({type:m,name:d,attribute:{...s,...u}})})})})}),a.forEach(i=>{const r={name:i.name,options:i.options,storage:i.storage},l=R(i,"addAttributes",r);if(!l)return;const p=l();Object.entries(p).forEach(([c,m])=>{const d={...s,...m};typeof(d==null?void 0:d.default)=="function"&&(d.default=d.default()),d!=null&&d.isRequired&&(d==null?void 0:d.default)===void 0&&delete d.default,e.push({type:i.name,name:c,attribute:d})})}),e}function Ee(o,e){if(typeof o=="string"){if(!e.nodes[o])throw Error(`There is no node type named '${o}'. Maybe you forgot to add the extension?`);return e.nodes[o]}return o}function _e(...o){return o.filter(e=>!!e).reduce((e,t)=>{const n={...e};return Object.entries(t).forEach(([a,s])=>{if(!n[a]){n[a]=s;return}if(a==="class"){const r=s?s.split(" "):[],l=n[a]?n[a].split(" "):[],p=r.filter(c=>!l.includes(c));n[a]=[...l,...p].join(" ")}else if(a==="style"){const r=s?s.split(";").map(c=>c.trim()).filter(Boolean):[],l=n[a]?n[a].split(";").map(c=>c.trim()).filter(Boolean):[],p=new Map;l.forEach(c=>{const[m,d]=c.split(":").map(u=>u.trim());p.set(m,d)}),r.forEach(c=>{const[m,d]=c.split(":").map(u=>u.trim());p.set(m,d)}),n[a]=Array.from(p.entries()).map(([c,m])=>`${c}: ${m}`).join("; ")}else n[a]=s}),n},{})}function Fi(o,e){return e.filter(t=>t.type===o.type.name).filter(t=>t.attribute.rendered).map(t=>t.attribute.renderHTML?t.attribute.renderHTML(o.attrs)||{}:{[t.name]:o.attrs[t.name]}).reduce((t,n)=>_e(t,n),{})}function Mc(o){return typeof o=="function"}function ee(o,e=void 0,...t){return Mc(o)?e?o.bind(e)(...t):o(...t):o}function fh(o={}){return Object.keys(o).length===0&&o.constructor===Object}function hh(o){return typeof o!="string"?o:o.match(/^[+-]?(?:\d*\.)?\d+$/)?Number(o):o==="true"?!0:o==="false"?!1:o}function Fc(o,e){return"style"in o?o:{...o,getAttrs:t=>{const n=o.getAttrs?o.getAttrs(t):o.attrs;if(n===!1)return!1;const a=e.reduce((s,i)=>{const r=i.attribute.parseHTML?i.attribute.parseHTML(t):hh(t.getAttribute(i.name));return r==null?s:{...s,[i.name]:r}},{});return{...n,...a}}}}function Oc(o){return Object.fromEntries(Object.entries(o).filter(([e,t])=>e==="attrs"&&fh(t)?!1:t!=null))}function bh(o,e){var t;const n=Sc(o),{nodeExtensions:a,markExtensions:s}=xa(o),i=(t=a.find(p=>R(p,"topNode")))===null||t===void 0?void 0:t.name,r=Object.fromEntries(a.map(p=>{const c=n.filter(k=>k.type===p.name),m={name:p.name,options:p.options,storage:p.storage,editor:e},d=o.reduce((k,I)=>{const S=R(I,"extendNodeSchema",m);return{...k,...S?S(p):{}}},{}),u=Oc({...d,content:ee(R(p,"content",m)),marks:ee(R(p,"marks",m)),group:ee(R(p,"group",m)),inline:ee(R(p,"inline",m)),atom:ee(R(p,"atom",m)),selectable:ee(R(p,"selectable",m)),draggable:ee(R(p,"draggable",m)),code:ee(R(p,"code",m)),whitespace:ee(R(p,"whitespace",m)),linebreakReplacement:ee(R(p,"linebreakReplacement",m)),defining:ee(R(p,"defining",m)),isolating:ee(R(p,"isolating",m)),attrs:Object.fromEntries(c.map(k=>{var I;return[k.name,{default:(I=k==null?void 0:k.attribute)===null||I===void 0?void 0:I.default}]}))}),g=ee(R(p,"parseHTML",m));g&&(u.parseDOM=g.map(k=>Fc(k,c)));const h=R(p,"renderHTML",m);h&&(u.toDOM=k=>h({node:k,HTMLAttributes:Fi(k,c)}));const b=R(p,"renderText",m);return b&&(u.toText=b),[p.name,u]})),l=Object.fromEntries(s.map(p=>{const c=n.filter(b=>b.type===p.name),m={name:p.name,options:p.options,storage:p.storage,editor:e},d=o.reduce((b,k)=>{const I=R(k,"extendMarkSchema",m);return{...b,...I?I(p):{}}},{}),u=Oc({...d,inclusive:ee(R(p,"inclusive",m)),excludes:ee(R(p,"excludes",m)),group:ee(R(p,"group",m)),spanning:ee(R(p,"spanning",m)),code:ee(R(p,"code",m)),attrs:Object.fromEntries(c.map(b=>{var k;return[b.name,{default:(k=b==null?void 0:b.attribute)===null||k===void 0?void 0:k.default}]}))}),g=ee(R(p,"parseHTML",m));g&&(u.parseDOM=g.map(b=>Fc(b,c)));const h=R(p,"renderHTML",m);return h&&(u.toDOM=b=>h({mark:b,HTMLAttributes:Fi(b,c)})),[p.name,u]}));return new _l({topNode:i,nodes:r,marks:l})}function Oi(o,e){return e.nodes[o]||e.marks[o]||null}function Ac(o,e){return Array.isArray(e)?e.some(t=>(typeof t=="string"?t:t.name)===o.name):e}function Ai(o,e){const t=bo.fromSchema(e).serializeFragment(o),a=document.implementation.createHTMLDocument().createElement("div");return a.appendChild(t),a.innerHTML}const jh=(o,e=500)=>{let t="";const n=o.parentOffset;return o.parent.nodesBetween(Math.max(0,n-e),n,(a,s,i,r)=>{var l,p;const c=((p=(l=a.type.spec).toText)===null||p===void 0?void 0:p.call(l,{node:a,pos:s,parent:i,index:r}))||a.textContent||"%leaf%";t+=a.isAtom&&!a.isText?c:c.slice(0,Math.max(0,n-s))}),t};function Ti(o){return Object.prototype.toString.call(o)==="[object RegExp]"}class Fn{constructor(e){this.find=e.find,this.handler=e.handler}}const vh=(o,e)=>{if(Ti(e))return e.exec(o);const t=e(o);if(!t)return null;const n=[t.text];return n.index=t.index,n.input=o,n.data=t.data,t.replaceWith&&(t.text.includes(t.replaceWith)||console.warn('[tiptap warn]: "inputRuleMatch.replaceWith" must be part of "inputRuleMatch.text".'),n.push(t.replaceWith)),n};function Sa(o){var e;const{editor:t,from:n,to:a,text:s,rules:i,plugin:r}=o,{view:l}=t;if(l.composing)return!1;const p=l.state.doc.resolve(n);if(p.parent.type.spec.code||!((e=p.nodeBefore||p.nodeAfter)===null||e===void 0)&&e.marks.find(d=>d.type.spec.code))return!1;let c=!1;const m=jh(p)+s;return i.forEach(d=>{if(c)return;const u=vh(m,d.find);if(!u)return;const g=l.state.tr,h=Ea({state:l.state,transaction:g}),b={from:n-(u[0].length-s.length),to:a},{commands:k,chain:I,can:S}=new Ca({editor:t,state:h});d.handler({state:h,range:b,match:u,commands:k,chain:I,can:S})===null||!g.steps.length||(g.setMeta(r,{transform:g,from:n,to:a,text:s}),l.dispatch(g),c=!0)}),c}function kh(o){const{editor:e,rules:t}=o,n=new ue({state:{init(){return null},apply(a,s,i){const r=a.getMeta(n);if(r)return r;const l=a.getMeta("applyInputRules");return!!l&&setTimeout(()=>{let{text:c}=l;typeof c=="string"?c=c:c=Ai(x.from(c),i.schema);const{from:m}=l,d=m+c.length;Sa({editor:e,from:m,to:d,text:c,rules:t,plugin:n})}),a.selectionSet||a.docChanged?null:s}},props:{handleTextInput(a,s,i,r){return Sa({editor:e,from:s,to:i,text:r,rules:t,plugin:n})},handleDOMEvents:{compositionend:a=>(setTimeout(()=>{const{$cursor:s}=a.state.selection;s&&Sa({editor:e,from:s.pos,to:s.pos,text:"",rules:t,plugin:n})}),!1)},handleKeyDown(a,s){if(s.key!=="Enter")return!1;const{$cursor:i}=a.state.selection;return i?Sa({editor:e,from:i.pos,to:i.pos,text:`
|
|
11
|
-
`,rules:t,plugin:n}):!1}},isInputRules:!0});return n}function yh(o){return Object.prototype.toString.call(o).slice(8,-1)}function Ma(o){return yh(o)!=="Object"?!1:o.constructor===Object&&Object.getPrototypeOf(o)===Object.prototype}function Fa(o,e){const t={...o};return Ma(o)&&Ma(e)&&Object.keys(e).forEach(n=>{Ma(e[n])&&Ma(o[n])?t[n]=Fa(o[n],e[n]):t[n]=e[n]}),t}class yt{constructor(e={}){this.type="mark",this.name="mark",this.parent=null,this.child=null,this.config={name:this.name,defaultOptions:{}},this.config={...this.config,...e},this.name=this.config.name,e.defaultOptions&&Object.keys(e.defaultOptions).length>0&&console.warn(`[tiptap warn]: BREAKING CHANGE: "defaultOptions" is deprecated. Please use "addOptions" instead. Found in extension: "${this.name}".`),this.options=this.config.defaultOptions,this.config.addOptions&&(this.options=ee(R(this,"addOptions",{name:this.name}))),this.storage=ee(R(this,"addStorage",{name:this.name,options:this.options}))||{}}static create(e={}){return new yt(e)}configure(e={}){const t=this.extend({...this.config,addOptions:()=>Fa(this.options,e)});return t.name=this.name,t.parent=this.parent,t}extend(e={}){const t=new yt(e);return t.parent=this,this.child=t,t.name=e.name?e.name:t.parent.name,e.defaultOptions&&Object.keys(e.defaultOptions).length>0&&console.warn(`[tiptap warn]: BREAKING CHANGE: "defaultOptions" is deprecated. Please use "addOptions" instead. Found in extension: "${t.name}".`),t.options=ee(R(t,"addOptions",{name:t.name})),t.storage=ee(R(t,"addStorage",{name:t.name,options:t.options})),t}static handleExit({editor:e,mark:t}){const{tr:n}=e.state,a=e.state.selection.$from;if(a.pos===a.end()){const i=a.marks();if(!!!i.find(p=>(p==null?void 0:p.type.name)===t.name))return!1;const l=i.find(p=>(p==null?void 0:p.type.name)===t.name);return l&&n.removeStoredMark(l),n.insertText(" ",a.pos),e.view.dispatch(n),!0}return!1}}function _h(o){return typeof o=="number"}class Tc{constructor(e){this.find=e.find,this.handler=e.handler}}const Dh=(o,e,t)=>{if(Ti(e))return[...o.matchAll(e)];const n=e(o,t);return n?n.map(a=>{const s=[a.text];return s.index=a.index,s.input=o,s.data=a.data,a.replaceWith&&(a.text.includes(a.replaceWith)||console.warn('[tiptap warn]: "pasteRuleMatch.replaceWith" must be part of "pasteRuleMatch.text".'),s.push(a.replaceWith)),s}):[]};function wh(o){const{editor:e,state:t,from:n,to:a,rule:s,pasteEvent:i,dropEvent:r}=o,{commands:l,chain:p,can:c}=new Ca({editor:e,state:t}),m=[];return t.doc.nodesBetween(n,a,(u,g)=>{if(!u.isTextblock||u.type.spec.code)return;const h=Math.max(n,g),b=Math.min(a,g+u.content.size),k=u.textBetween(h-g,b-g,void 0,"");Dh(k,s.find,i).forEach(S=>{if(S.index===void 0)return;const j=h+S.index+1,T=j+S[0].length,D={from:t.tr.mapping.map(j),to:t.tr.mapping.map(T)},P=s.handler({state:t,range:D,match:S,commands:l,chain:p,can:c,pasteEvent:i,dropEvent:r});m.push(P)})}),m.every(u=>u!==null)}const Ih=o=>{var e;const t=new ClipboardEvent("paste",{clipboardData:new DataTransfer});return(e=t.clipboardData)===null||e===void 0||e.setData("text/html",o),t};function Eh(o){const{editor:e,rules:t}=o;let n=null,a=!1,s=!1,i=typeof ClipboardEvent<"u"?new ClipboardEvent("paste"):null,r;try{r=typeof DragEvent<"u"?new DragEvent("drop"):null}catch{r=null}const l=({state:c,from:m,to:d,rule:u,pasteEvt:g})=>{const h=c.tr,b=Ea({state:c,transaction:h});if(!(!wh({editor:e,state:b,from:Math.max(m-1,0),to:d.b-1,rule:u,pasteEvent:g,dropEvent:r})||!h.steps.length)){try{r=typeof DragEvent<"u"?new DragEvent("drop"):null}catch{r=null}return i=typeof ClipboardEvent<"u"?new ClipboardEvent("paste"):null,h}};return t.map(c=>new ue({view(m){const d=u=>{var g;n=!((g=m.dom.parentElement)===null||g===void 0)&&g.contains(u.target)?m.dom.parentElement:null};return window.addEventListener("dragstart",d),{destroy(){window.removeEventListener("dragstart",d)}}},props:{handleDOMEvents:{drop:(m,d)=>(s=n===m.dom.parentElement,r=d,!1),paste:(m,d)=>{var u;const g=(u=d.clipboardData)===null||u===void 0?void 0:u.getData("text/html");return i=d,a=!!(g!=null&&g.includes("data-pm-slice")),!1}}},appendTransaction:(m,d,u)=>{const g=m[0],h=g.getMeta("uiEvent")==="paste"&&!a,b=g.getMeta("uiEvent")==="drop"&&!s,k=g.getMeta("applyPasteRules"),I=!!k;if(!h&&!b&&!I)return;if(I){let{text:T}=k;typeof T=="string"?T=T:T=Ai(x.from(T),u.schema);const{from:D}=k,P=D+T.length,U=Ih(T);return l({rule:c,state:u,from:D,to:{b:P},pasteEvt:U})}const S=d.doc.content.findDiffStart(u.doc.content),j=d.doc.content.findDiffEnd(u.doc.content);if(!(!_h(S)||!j||S===j.b))return l({rule:c,state:u,from:S,to:j,pasteEvt:i})}}))}function Ch(o){const e=o.filter((t,n)=>o.indexOf(t)!==n);return Array.from(new Set(e))}class Yo{constructor(e,t){this.splittableMarks=[],this.editor=t,this.extensions=Yo.resolve(e),this.schema=bh(this.extensions,t),this.setupExtensions()}static resolve(e){const t=Yo.sort(Yo.flatten(e)),n=Ch(t.map(a=>a.name));return n.length&&console.warn(`[tiptap warn]: Duplicate extension names found: [${n.map(a=>`'${a}'`).join(", ")}]. This can lead to issues.`),t}static flatten(e){return e.map(t=>{const n={name:t.name,options:t.options,storage:t.storage},a=R(t,"addExtensions",n);return a?[t,...this.flatten(a())]:t}).flat(10)}static sort(e){return e.sort((n,a)=>{const s=R(n,"priority")||100,i=R(a,"priority")||100;return s>i?-1:s<i?1:0})}get commands(){return this.extensions.reduce((e,t)=>{const n={name:t.name,options:t.options,storage:t.storage,editor:this.editor,type:Oi(t.name,this.schema)},a=R(t,"addCommands",n);return a?{...e,...a()}:e},{})}get plugins(){const{editor:e}=this,t=Yo.sort([...this.extensions].reverse()),n=[],a=[],s=t.map(i=>{const r={name:i.name,options:i.options,storage:i.storage,editor:e,type:Oi(i.name,this.schema)},l=[],p=R(i,"addKeyboardShortcuts",r);let c={};if(i.type==="mark"&&R(i,"exitable",r)&&(c.ArrowRight=()=>yt.handleExit({editor:e,mark:i})),p){const h=Object.fromEntries(Object.entries(p()).map(([b,k])=>[b,()=>k({editor:e})]));c={...c,...h}}const m=Gf(c);l.push(m);const d=R(i,"addInputRules",r);Ac(i,e.options.enableInputRules)&&d&&n.push(...d());const u=R(i,"addPasteRules",r);Ac(i,e.options.enablePasteRules)&&u&&a.push(...u());const g=R(i,"addProseMirrorPlugins",r);if(g){const h=g();l.push(...h)}return l}).flat();return[kh({editor:e,rules:n}),...Eh({editor:e,rules:a}),...s]}get attributes(){return Sc(this.extensions)}get nodeViews(){const{editor:e}=this,{nodeExtensions:t}=xa(this.extensions);return Object.fromEntries(t.filter(n=>!!R(n,"addNodeView")).map(n=>{const a=this.attributes.filter(l=>l.type===n.name),s={name:n.name,options:n.options,storage:n.storage,editor:e,type:Ee(n.name,this.schema)},i=R(n,"addNodeView",s);if(!i)return[];const r=(l,p,c,m,d)=>{const u=Fi(l,a);return i()({node:l,view:p,getPos:c,decorations:m,innerDecorations:d,editor:e,extension:n,HTMLAttributes:u})};return[n.name,r]}))}setupExtensions(){this.extensions.forEach(e=>{var t;this.editor.extensionStorage[e.name]=e.storage;const n={name:e.name,options:e.options,storage:e.storage,editor:this.editor,type:Oi(e.name,this.schema)};e.type==="mark"&&(!((t=ee(R(e,"keepOnSplit",n)))!==null&&t!==void 0)||t)&&this.splittableMarks.push(e.name);const a=R(e,"onBeforeCreate",n),s=R(e,"onCreate",n),i=R(e,"onUpdate",n),r=R(e,"onSelectionUpdate",n),l=R(e,"onTransaction",n),p=R(e,"onFocus",n),c=R(e,"onBlur",n),m=R(e,"onDestroy",n);a&&this.editor.on("beforeCreate",a),s&&this.editor.on("create",s),i&&this.editor.on("update",i),r&&this.editor.on("selectionUpdate",r),l&&this.editor.on("transaction",l),p&&this.editor.on("focus",p),c&&this.editor.on("blur",c),m&&this.editor.on("destroy",m)})}}class Ce{constructor(e={}){this.type="extension",this.name="extension",this.parent=null,this.child=null,this.config={name:this.name,defaultOptions:{}},this.config={...this.config,...e},this.name=this.config.name,e.defaultOptions&&Object.keys(e.defaultOptions).length>0&&console.warn(`[tiptap warn]: BREAKING CHANGE: "defaultOptions" is deprecated. Please use "addOptions" instead. Found in extension: "${this.name}".`),this.options=this.config.defaultOptions,this.config.addOptions&&(this.options=ee(R(this,"addOptions",{name:this.name}))),this.storage=ee(R(this,"addStorage",{name:this.name,options:this.options}))||{}}static create(e={}){return new Ce(e)}configure(e={}){const t=this.extend({...this.config,addOptions:()=>Fa(this.options,e)});return t.name=this.name,t.parent=this.parent,t}extend(e={}){const t=new Ce({...this.config,...e});return t.parent=this,this.child=t,t.name=e.name?e.name:t.parent.name,e.defaultOptions&&Object.keys(e.defaultOptions).length>0&&console.warn(`[tiptap warn]: BREAKING CHANGE: "defaultOptions" is deprecated. Please use "addOptions" instead. Found in extension: "${t.name}".`),t.options=ee(R(t,"addOptions",{name:t.name})),t.storage=ee(R(t,"addStorage",{name:t.name,options:t.options})),t}}function Nc(o,e,t){const{from:n,to:a}=e,{blockSeparator:s=`
|
|
12
|
-
|
|
13
|
-
`,textSerializers:i={}}=t||{};let r="";return o.nodesBetween(n,a,(l,p,c,m)=>{var d;l.isBlock&&p>n&&(r+=s);const u=i==null?void 0:i[l.type.name];if(u)return c&&(r+=u({node:l,pos:p,parent:c,index:m,range:e})),!1;l.isText&&(r+=(d=l==null?void 0:l.text)===null||d===void 0?void 0:d.slice(Math.max(n,p)-p,a-p))}),r}function Bc(o){return Object.fromEntries(Object.entries(o.nodes).filter(([,e])=>e.spec.toText).map(([e,t])=>[e,t.spec.toText]))}const xh=Ce.create({name:"clipboardTextSerializer",addOptions(){return{blockSeparator:void 0}},addProseMirrorPlugins(){return[new ue({key:new ye("clipboardTextSerializer"),props:{clipboardTextSerializer:()=>{const{editor:o}=this,{state:e,schema:t}=o,{doc:n,selection:a}=e,{ranges:s}=a,i=Math.min(...s.map(c=>c.$from.pos)),r=Math.max(...s.map(c=>c.$to.pos)),l=Bc(t);return Nc(n,{from:i,to:r},{...this.options.blockSeparator!==void 0?{blockSeparator:this.options.blockSeparator}:{},textSerializers:l})}}})]}}),Sh=()=>({editor:o,view:e})=>(requestAnimationFrame(()=>{var t;o.isDestroyed||(e.dom.blur(),(t=window==null?void 0:window.getSelection())===null||t===void 0||t.removeAllRanges())}),!0),Mh=(o=!1)=>({commands:e})=>e.setContent("",o),Fh=()=>({state:o,tr:e,dispatch:t})=>{const{selection:n}=e,{ranges:a}=n;return t&&a.forEach(({$from:s,$to:i})=>{o.doc.nodesBetween(s.pos,i.pos,(r,l)=>{if(r.type.isText)return;const{doc:p,mapping:c}=e,m=p.resolve(c.map(l)),d=p.resolve(c.map(l+r.nodeSize)),u=m.blockRange(d);if(!u)return;const g=Po(u);if(r.type.isTextblock){const{defaultType:h}=m.parent.contentMatchAt(m.index());e.setNodeMarkup(u.start,h)}(g||g===0)&&e.lift(u,g)})}),!0},Oh=o=>e=>o(e),Ah=()=>({state:o,dispatch:e})=>wc(o,e),Th=(o,e)=>({editor:t,tr:n})=>{const{state:a}=t,s=a.doc.slice(o.from,o.to);n.deleteRange(o.from,o.to);const i=n.mapping.map(e);return n.insert(i,s.content),n.setSelection(new J(n.doc.resolve(i-1))),!0},Nh=()=>({tr:o,dispatch:e})=>{const{selection:t}=o,n=t.$anchor.node();if(n.content.size>0)return!1;const a=o.selection.$anchor;for(let s=a.depth;s>0;s-=1)if(a.node(s).type===n.type){if(e){const r=a.before(s),l=a.after(s);o.delete(r,l).scrollIntoView()}return!0}return!1},Bh=o=>({tr:e,state:t,dispatch:n})=>{const a=Ee(o,t.schema),s=e.selection.$anchor;for(let i=s.depth;i>0;i-=1)if(s.node(i).type===a){if(n){const l=s.before(i),p=s.after(i);e.delete(l,p).scrollIntoView()}return!0}return!1},Rh=o=>({tr:e,dispatch:t})=>{const{from:n,to:a}=o;return t&&e.delete(n,a),!0},Lh=()=>({state:o,dispatch:e})=>Ei(o,e),Ph=()=>({commands:o})=>o.keyboardShortcut("Enter"),zh=()=>({state:o,dispatch:e})=>eh(o,e);function Oa(o,e,t={strict:!0}){const n=Object.keys(e);return n.length?n.every(a=>t.strict?e[a]===o[a]:Ti(e[a])?e[a].test(o[a]):e[a]===o[a]):!0}function Rc(o,e,t={}){return o.find(n=>n.type===e&&Oa(Object.fromEntries(Object.keys(t).map(a=>[a,n.attrs[a]])),t))}function Lc(o,e,t={}){return!!Rc(o,e,t)}function Aa(o,e,t){var n;if(!o||!e)return;let a=o.parent.childAfter(o.parentOffset);if((!a.node||!a.node.marks.some(c=>c.type===e))&&(a=o.parent.childBefore(o.parentOffset)),!a.node||!a.node.marks.some(c=>c.type===e)||(t=t||((n=a.node.marks[0])===null||n===void 0?void 0:n.attrs),!Rc([...a.node.marks],e,t)))return;let i=a.index,r=o.start()+a.offset,l=i+1,p=r+a.node.nodeSize;for(;i>0&&Lc([...o.parent.child(i-1).marks],e,t);)i-=1,r-=o.parent.child(i).nodeSize;for(;l<o.parent.childCount&&Lc([...o.parent.child(l).marks],e,t);)p+=o.parent.child(l).nodeSize,l+=1;return{from:r,to:p}}function ao(o,e){if(typeof o=="string"){if(!e.marks[o])throw Error(`There is no mark type named '${o}'. Maybe you forgot to add the extension?`);return e.marks[o]}return o}const $h=(o,e={})=>({tr:t,state:n,dispatch:a})=>{const s=ao(o,n.schema),{doc:i,selection:r}=t,{$from:l,from:p,to:c}=r;if(a){const m=Aa(l,s,e);if(m&&m.from<=p&&m.to>=c){const d=J.create(i,m.from,m.to);t.setSelection(d)}}return!0},Hh=o=>e=>{const t=typeof o=="function"?o(e):o;for(let n=0;n<t.length;n+=1)if(t[n](e))return!0;return!1};function Ni(o){return o instanceof J}function Bt(o=0,e=0,t=0){return Math.min(Math.max(o,e),t)}function Pc(o,e=null){if(!e)return null;const t=Z.atStart(o),n=Z.atEnd(o);if(e==="start"||e===!0)return t;if(e==="end")return n;const a=t.from,s=n.to;return e==="all"?J.create(o,Bt(0,a,s),Bt(o.content.size,a,s)):J.create(o,Bt(e,a,s),Bt(e,a,s))}function Bi(){return["iPad Simulator","iPhone Simulator","iPod Simulator","iPad","iPhone","iPod"].includes(navigator.platform)||navigator.userAgent.includes("Mac")&&"ontouchend"in document}const Vh=(o=null,e={})=>({editor:t,view:n,tr:a,dispatch:s})=>{e={scrollIntoView:!0,...e};const i=()=>{Bi()&&n.dom.focus(),requestAnimationFrame(()=>{t.isDestroyed||(n.focus(),e!=null&&e.scrollIntoView&&t.commands.scrollIntoView())})};if(n.hasFocus()&&o===null||o===!1)return!0;if(s&&o===null&&!Ni(t.state.selection))return i(),!0;const r=Pc(a.doc,o)||t.state.selection,l=t.state.selection.eq(r);return s&&(l||a.setSelection(r),l&&a.storedMarks&&a.setStoredMarks(a.storedMarks),i()),!0},qh=(o,e)=>t=>o.every((n,a)=>e(n,{...t,index:a})),Wh=(o,e)=>({tr:t,commands:n})=>n.insertContentAt({from:t.selection.from,to:t.selection.to},o,e),zc=o=>{const e=o.childNodes;for(let t=e.length-1;t>=0;t-=1){const n=e[t];n.nodeType===3&&n.nodeValue&&/^(\n\s\s|\n)$/.test(n.nodeValue)?o.removeChild(n):n.nodeType===1&&zc(n)}return o};function Ta(o){const e=`<body>${o}</body>`,t=new window.DOMParser().parseFromString(e,"text/html").body;return zc(t)}function Na(o,e,t){if(o instanceof qt||o instanceof x)return o;t={slice:!0,parseOptions:{},...t};const n=typeof o=="object"&&o!==null,a=typeof o=="string";if(n)try{if(Array.isArray(o)&&o.length>0)return x.fromArray(o.map(r=>e.nodeFromJSON(r)));const i=e.nodeFromJSON(o);return t.errorOnInvalidContent&&i.check(),i}catch(s){if(t.errorOnInvalidContent)throw new Error("[tiptap error]: Invalid JSON content",{cause:s});return console.warn("[tiptap warn]: Invalid content.","Passed value:",o,"Error:",s),Na("",e,t)}if(a){if(t.errorOnInvalidContent){let i=!1,r="";const l=new _l({topNode:e.spec.topNode,marks:e.spec.marks,nodes:e.spec.nodes.append({__tiptap__private__unknown__catch__all__node:{content:"inline*",group:"block",parseDOM:[{tag:"*",getAttrs:p=>(i=!0,r=typeof p=="string"?p:p.outerHTML,null)}]}})});if(t.slice?Wt.fromSchema(l).parseSlice(Ta(o),t.parseOptions):Wt.fromSchema(l).parse(Ta(o),t.parseOptions),t.errorOnInvalidContent&&i)throw new Error("[tiptap error]: Invalid HTML content",{cause:new Error(`Invalid element found: ${r}`)})}const s=Wt.fromSchema(e);return t.slice?s.parseSlice(Ta(o),t.parseOptions).content:s.parse(Ta(o),t.parseOptions)}return Na("",e,t)}function Uh(o,e,t){const n=o.steps.length-1;if(n<e)return;const a=o.steps[n];if(!(a instanceof we||a instanceof Ie))return;const s=o.mapping.maps[n];let i=0;s.forEach((r,l,p,c)=>{i===0&&(i=c)}),o.setSelection(Z.near(o.doc.resolve(i),t))}const Kh=o=>!("type"in o),Gh=(o,e,t)=>({tr:n,dispatch:a,editor:s})=>{var i;if(a){t={parseOptions:s.options.parseOptions,updateSelection:!0,applyInputRules:!1,applyPasteRules:!1,...t};let r;try{r=Na(e,s.schema,{parseOptions:{preserveWhitespace:"full",...t.parseOptions},errorOnInvalidContent:(i=t.errorOnInvalidContent)!==null&&i!==void 0?i:s.options.enableContentCheck})}catch(g){return s.emit("contentError",{editor:s,error:g,disableCollaboration:()=>{s.storage.collaboration&&(s.storage.collaboration.isDisabled=!0)}}),!1}let{from:l,to:p}=typeof o=="number"?{from:o,to:o}:{from:o.from,to:o.to},c=!0,m=!0;if((Kh(r)?r:[r]).forEach(g=>{g.check(),c=c?g.isText&&g.marks.length===0:!1,m=m?g.isBlock:!1}),l===p&&m){const{parent:g}=n.doc.resolve(l);g.isTextblock&&!g.type.spec.code&&!g.childCount&&(l-=1,p+=1)}let u;if(c){if(Array.isArray(e))u=e.map(g=>g.text||"").join("");else if(e instanceof x){let g="";e.forEach(h=>{h.text&&(g+=h.text)}),u=g}else typeof e=="object"&&e&&e.text?u=e.text:u=e;n.insertText(u,l,p)}else u=r,n.replaceWith(l,p,u);t.updateSelection&&Uh(n,n.steps.length-1,-1),t.applyInputRules&&n.setMeta("applyInputRules",{from:l,text:u}),t.applyPasteRules&&n.setMeta("applyPasteRules",{from:l,text:u})}return!0},Jh=()=>({state:o,dispatch:e})=>Xf(o,e),Yh=()=>({state:o,dispatch:e})=>Zf(o,e),Xh=()=>({state:o,dispatch:e})=>bc(o,e),Zh=()=>({state:o,dispatch:e})=>yc(o,e),Qh=()=>({state:o,dispatch:e,tr:t})=>{try{const n=ga(o.doc,o.selection.$from.pos,-1);return n==null?!1:(t.join(n,2),e&&e(t),!0)}catch{return!1}},eb=()=>({state:o,dispatch:e,tr:t})=>{try{const n=ga(o.doc,o.selection.$from.pos,1);return n==null?!1:(t.join(n,2),e&&e(t),!0)}catch{return!1}},tb=()=>({state:o,dispatch:e})=>Jf(o,e),ob=()=>({state:o,dispatch:e})=>Yf(o,e);function $c(){return typeof navigator<"u"?/Mac/.test(navigator.platform):!1}function nb(o){const e=o.split(/-(?!$)/);let t=e[e.length-1];t==="Space"&&(t=" ");let n,a,s,i;for(let r=0;r<e.length-1;r+=1){const l=e[r];if(/^(cmd|meta|m)$/i.test(l))i=!0;else if(/^a(lt)?$/i.test(l))n=!0;else if(/^(c|ctrl|control)$/i.test(l))a=!0;else if(/^s(hift)?$/i.test(l))s=!0;else if(/^mod$/i.test(l))Bi()||$c()?i=!0:a=!0;else throw new Error(`Unrecognized modifier name: ${l}`)}return n&&(t=`Alt-${t}`),a&&(t=`Ctrl-${t}`),i&&(t=`Meta-${t}`),s&&(t=`Shift-${t}`),t}const ab=o=>({editor:e,view:t,tr:n,dispatch:a})=>{const s=nb(o).split(/-(?!$)/),i=s.find(p=>!["Alt","Ctrl","Meta","Shift"].includes(p)),r=new KeyboardEvent("keydown",{key:i==="Space"?" ":i,altKey:s.includes("Alt"),ctrlKey:s.includes("Ctrl"),metaKey:s.includes("Meta"),shiftKey:s.includes("Shift"),bubbles:!0,cancelable:!0}),l=e.captureTransaction(()=>{t.someProp("handleKeyDown",p=>p(t,r))});return l==null||l.steps.forEach(p=>{const c=p.map(n.mapping);c&&a&&n.maybeStep(c)}),!0};function On(o,e,t={}){const{from:n,to:a,empty:s}=o.selection,i=e?Ee(e,o.schema):null,r=[];o.doc.nodesBetween(n,a,(m,d)=>{if(m.isText)return;const u=Math.max(n,d),g=Math.min(a,d+m.nodeSize);r.push({node:m,from:u,to:g})});const l=a-n,p=r.filter(m=>i?i.name===m.node.type.name:!0).filter(m=>Oa(m.node.attrs,t,{strict:!1}));return s?!!p.length:p.reduce((m,d)=>m+d.to-d.from,0)>=l}const sb=(o,e={})=>({state:t,dispatch:n})=>{const a=Ee(o,t.schema);return On(t,a,e)?Qf(t,n):!1},ib=()=>({state:o,dispatch:e})=>Ic(o,e),rb=o=>({state:e,dispatch:t})=>{const n=Ee(o,e.schema);return ch(n)(e,t)},lb=()=>({state:o,dispatch:e})=>Dc(o,e);function Ba(o,e){return e.nodes[o]?"node":e.marks[o]?"mark":null}function Hc(o,e){const t=typeof e=="string"?[e]:e;return Object.keys(o).reduce((n,a)=>(t.includes(a)||(n[a]=o[a]),n),{})}const pb=(o,e)=>({tr:t,state:n,dispatch:a})=>{let s=null,i=null;const r=Ba(typeof o=="string"?o:o.name,n.schema);return r?(r==="node"&&(s=Ee(o,n.schema)),r==="mark"&&(i=ao(o,n.schema)),a&&t.selection.ranges.forEach(l=>{n.doc.nodesBetween(l.$from.pos,l.$to.pos,(p,c)=>{s&&s===p.type&&t.setNodeMarkup(c,void 0,Hc(p.attrs,e)),i&&p.marks.length&&p.marks.forEach(m=>{i===m.type&&t.addMark(c,c+p.nodeSize,i.create(Hc(m.attrs,e)))})})}),!0):!1},cb=()=>({tr:o,dispatch:e})=>(e&&o.scrollIntoView(),!0),mb=()=>({tr:o,commands:e})=>e.setTextSelection({from:0,to:o.doc.content.size}),db=()=>({state:o,dispatch:e})=>vc(o,e),ub=()=>({state:o,dispatch:e})=>_c(o,e),gb=()=>({state:o,dispatch:e})=>nh(o,e),fb=()=>({state:o,dispatch:e})=>ih(o,e),hb=()=>({state:o,dispatch:e})=>sh(o,e);function Ri(o,e,t={},n={}){return Na(o,e,{slice:!1,parseOptions:t,errorOnInvalidContent:n.errorOnInvalidContent})}const bb=(o,e=!1,t={},n={})=>({editor:a,tr:s,dispatch:i,commands:r})=>{var l,p;const{doc:c}=s;if(t.preserveWhitespace!=="full"){const m=Ri(o,a.schema,t,{errorOnInvalidContent:(l=n.errorOnInvalidContent)!==null&&l!==void 0?l:a.options.enableContentCheck});return i&&s.replaceWith(0,c.content.size,m).setMeta("preventUpdate",!e),!0}return i&&s.setMeta("preventUpdate",!e),r.insertContentAt({from:0,to:c.content.size},o,{parseOptions:t,errorOnInvalidContent:(p=n.errorOnInvalidContent)!==null&&p!==void 0?p:a.options.enableContentCheck})};function Li(o,e){const t=ao(e,o.schema),{from:n,to:a,empty:s}=o.selection,i=[];s?(o.storedMarks&&i.push(...o.storedMarks),i.push(...o.selection.$head.marks())):o.doc.nodesBetween(n,a,l=>{i.push(...l.marks)});const r=i.find(l=>l.type.name===t.name);return r?{...r.attrs}:{}}function Vc(o,e){const t=new Ul(o);return e.forEach(n=>{n.steps.forEach(a=>{t.step(a)})}),t}function jb(o){for(let e=0;e<o.edgeCount;e+=1){const{type:t}=o.edge(e);if(t.isTextblock&&!t.hasRequiredAttrs())return t}return null}function Pi(o,e){const t=[];return o.descendants((n,a)=>{e(n)&&t.push({node:n,pos:a})}),t}function qc(o,e,t){const n=[];return o.nodesBetween(e.from,e.to,(a,s)=>{t(a)&&n.push({node:a,pos:s})}),n}function vb(o,e){for(let t=o.depth;t>0;t-=1){const n=o.node(t);if(e(n))return{pos:t>0?o.before(t):0,start:o.start(t),depth:t,node:n}}}function zi(o){return e=>vb(e.$from,o)}function kb(o,e){const t={from:0,to:o.content.size};return Nc(o,t,e)}function yb(o,e){const t=Ee(e,o.schema),{from:n,to:a}=o.selection,s=[];o.doc.nodesBetween(n,a,r=>{s.push(r)});const i=s.reverse().find(r=>r.type.name===t.name);return i?{...i.attrs}:{}}function $i(o,e){const t=Ba(typeof e=="string"?e:e.name,o.schema);return t==="node"?yb(o,e):t==="mark"?Li(o,e):{}}function _b(o,e=JSON.stringify){const t={};return o.filter(n=>{const a=e(n);return Object.prototype.hasOwnProperty.call(t,a)?!1:t[a]=!0})}function Db(o){const e=_b(o);return e.length===1?e:e.filter((t,n)=>!e.filter((s,i)=>i!==n).some(s=>t.oldRange.from>=s.oldRange.from&&t.oldRange.to<=s.oldRange.to&&t.newRange.from>=s.newRange.from&&t.newRange.to<=s.newRange.to))}function Wc(o){const{mapping:e,steps:t}=o,n=[];return e.maps.forEach((a,s)=>{const i=[];if(a.ranges.length)a.forEach((r,l)=>{i.push({from:r,to:l})});else{const{from:r,to:l}=t[s];if(r===void 0||l===void 0)return;i.push({from:r,to:l})}i.forEach(({from:r,to:l})=>{const p=e.slice(s).map(r,-1),c=e.slice(s).map(l),m=e.invert().map(p,-1),d=e.invert().map(c);n.push({oldRange:{from:m,to:d},newRange:{from:p,to:c}})})}),Db(n)}function Hi(o,e,t){const n=[];return o===e?t.resolve(o).marks().forEach(a=>{const s=t.resolve(o),i=Aa(s,a.type);i&&n.push({mark:a,...i})}):t.nodesBetween(o,e,(a,s)=>{!a||(a==null?void 0:a.nodeSize)===void 0||n.push(...a.marks.map(i=>({from:s,to:s+a.nodeSize,mark:i})))}),n}function Ra(o,e,t){return Object.fromEntries(Object.entries(t).filter(([n])=>{const a=o.find(s=>s.type===e&&s.name===n);return a?a.attribute.keepOnSplit:!1}))}function Vi(o,e,t={}){const{empty:n,ranges:a}=o.selection,s=e?ao(e,o.schema):null;if(n)return!!(o.storedMarks||o.selection.$from.marks()).filter(m=>s?s.name===m.type.name:!0).find(m=>Oa(m.attrs,t,{strict:!1}));let i=0;const r=[];if(a.forEach(({$from:m,$to:d})=>{const u=m.pos,g=d.pos;o.doc.nodesBetween(u,g,(h,b)=>{if(!h.isText&&!h.marks.length)return;const k=Math.max(u,b),I=Math.min(g,b+h.nodeSize),S=I-k;i+=S,r.push(...h.marks.map(j=>({mark:j,from:k,to:I})))})}),i===0)return!1;const l=r.filter(m=>s?s.name===m.mark.type.name:!0).filter(m=>Oa(m.mark.attrs,t,{strict:!1})).reduce((m,d)=>m+d.to-d.from,0),p=r.filter(m=>s?m.mark.type!==s&&m.mark.type.excludes(s):!0).reduce((m,d)=>m+d.to-d.from,0);return(l>0?l+p:l)>=i}function wb(o,e,t={}){if(!e)return On(o,null,t)||Vi(o,null,t);const n=Ba(e,o.schema);return n==="node"?On(o,e,t):n==="mark"?Vi(o,e,t):!1}function Uc(o,e){const{nodeExtensions:t}=xa(e),n=t.find(i=>i.name===o);if(!n)return!1;const a={name:n.name,options:n.options,storage:n.storage},s=ee(R(n,"group",a));return typeof s!="string"?!1:s.split(" ").includes("list")}function La(o,{checkChildren:e=!0,ignoreWhitespace:t=!1}={}){var n;if(t){if(o.type.name==="hardBreak")return!0;if(o.isText)return/^\s*$/m.test((n=o.text)!==null&&n!==void 0?n:"")}if(o.isText)return!o.text;if(o.isAtom||o.isLeaf)return!1;if(o.content.childCount===0)return!0;if(e){let a=!0;return o.content.forEach(s=>{a!==!1&&(La(s,{ignoreWhitespace:t,checkChildren:e})||(a=!1))}),a}return!1}function Kc(o){return o instanceof W}function Gc(o,e,t){const a=o.state.doc.content.size,s=Bt(e,0,a),i=Bt(t,0,a),r=o.coordsAtPos(s),l=o.coordsAtPos(i,-1),p=Math.min(r.top,l.top),c=Math.max(r.bottom,l.bottom),m=Math.min(r.left,l.left),d=Math.max(r.right,l.right),u=d-m,g=c-p,k={top:p,bottom:c,left:m,right:d,width:u,height:g,x:m,y:p};return{...k,toJSON:()=>k}}function Ib(o,e,t){var n;const{selection:a}=e;let s=null;if(Ni(a)&&(s=a.$cursor),s){const r=(n=o.storedMarks)!==null&&n!==void 0?n:s.marks();return!!t.isInSet(r)||!r.some(l=>l.type.excludes(t))}const{ranges:i}=a;return i.some(({$from:r,$to:l})=>{let p=r.depth===0?o.doc.inlineContent&&o.doc.type.allowsMarkType(t):!1;return o.doc.nodesBetween(r.pos,l.pos,(c,m,d)=>{if(p)return!1;if(c.isInline){const u=!d||d.type.allowsMarkType(t),g=!!t.isInSet(c.marks)||!c.marks.some(h=>h.type.excludes(t));p=u&&g}return!p}),p})}const Eb=(o,e={})=>({tr:t,state:n,dispatch:a})=>{const{selection:s}=t,{empty:i,ranges:r}=s,l=ao(o,n.schema);if(a)if(i){const p=Li(n,l);t.addStoredMark(l.create({...p,...e}))}else r.forEach(p=>{const c=p.$from.pos,m=p.$to.pos;n.doc.nodesBetween(c,m,(d,u)=>{const g=Math.max(u,c),h=Math.min(u+d.nodeSize,m);d.marks.find(k=>k.type===l)?d.marks.forEach(k=>{l===k.type&&t.addMark(g,h,l.create({...k.attrs,...e}))}):t.addMark(g,h,l.create(e))})});return Ib(n,t,l)},Cb=(o,e)=>({tr:t})=>(t.setMeta(o,e),!0),xb=(o,e={})=>({state:t,dispatch:n,chain:a})=>{const s=Ee(o,t.schema);let i;return t.selection.$anchor.sameParent(t.selection.$head)&&(i=t.selection.$anchor.parent.attrs),s.isTextblock?a().command(({commands:r})=>xc(s,{...i,...e})(t)?!0:r.clearNodes()).command(({state:r})=>xc(s,{...i,...e})(r,n)).run():(console.warn('[tiptap warn]: Currently "setNode()" only supports text block nodes.'),!1)},Sb=o=>({tr:e,dispatch:t})=>{if(t){const{doc:n}=e,a=Bt(o,0,n.content.size),s=W.create(n,a);e.setSelection(s)}return!0},Mb=o=>({tr:e,dispatch:t})=>{if(t){const{doc:n}=e,{from:a,to:s}=typeof o=="number"?{from:o,to:o}:o,i=J.atStart(n).from,r=J.atEnd(n).to,l=Bt(a,i,r),p=Bt(s,i,r),c=J.create(n,l,p);e.setSelection(c)}return!0},Fb=o=>({state:e,dispatch:t})=>{const n=Ee(o,e.schema);return uh(n)(e,t)};function Jc(o,e){const t=o.storedMarks||o.selection.$to.parentOffset&&o.selection.$from.marks();if(t){const n=t.filter(a=>e==null?void 0:e.includes(a.type.name));o.tr.ensureMarks(n)}}const Ob=({keepMarks:o=!0}={})=>({tr:e,state:t,dispatch:n,editor:a})=>{const{selection:s,doc:i}=e,{$from:r,$to:l}=s,p=a.extensionManager.attributes,c=Ra(p,r.node().type.name,r.node().attrs);if(s instanceof W&&s.node.isBlock)return!r.parentOffset||!Ot(i,r.pos)?!1:(n&&(o&&Jc(t,a.extensionManager.splittableMarks),e.split(r.pos).scrollIntoView()),!0);if(!r.parent.isBlock)return!1;const m=l.parentOffset===l.parent.content.size,d=r.depth===0?void 0:jb(r.node(-1).contentMatchAt(r.indexAfter(-1)));let u=m&&d?[{type:d,attrs:c}]:void 0,g=Ot(e.doc,e.mapping.map(r.pos),1,u);if(!u&&!g&&Ot(e.doc,e.mapping.map(r.pos),1,d?[{type:d}]:void 0)&&(g=!0,u=d?[{type:d,attrs:c}]:void 0),n){if(g&&(s instanceof J&&e.deleteSelection(),e.split(e.mapping.map(r.pos),1,u),d&&!m&&!r.parentOffset&&r.parent.type!==d)){const h=e.mapping.map(r.before()),b=e.doc.resolve(h);r.node(-1).canReplaceWith(b.index(),b.index()+1,d)&&e.setNodeMarkup(e.mapping.map(r.before()),d)}o&&Jc(t,a.extensionManager.splittableMarks),e.scrollIntoView()}return g},Ab=(o,e={})=>({tr:t,state:n,dispatch:a,editor:s})=>{var i;const r=Ee(o,n.schema),{$from:l,$to:p}=n.selection,c=n.selection.node;if(c&&c.isBlock||l.depth<2||!l.sameParent(p))return!1;const m=l.node(-1);if(m.type!==r)return!1;const d=s.extensionManager.attributes;if(l.parent.content.size===0&&l.node(-1).childCount===l.indexAfter(-1)){if(l.depth===2||l.node(-3).type!==r||l.index(-2)!==l.node(-2).childCount-1)return!1;if(a){let k=x.empty;const I=l.index(-1)?1:l.index(-2)?2:3;for(let U=l.depth-I;U>=l.depth-3;U-=1)k=x.from(l.node(U).copy(k));const S=l.indexAfter(-1)<l.node(-2).childCount?1:l.indexAfter(-2)<l.node(-3).childCount?2:3,j={...Ra(d,l.node().type.name,l.node().attrs),...e},T=((i=r.contentMatch.defaultType)===null||i===void 0?void 0:i.createAndFill(j))||void 0;k=k.append(x.from(r.createAndFill(null,T)||void 0));const D=l.before(l.depth-(I-1));t.replace(D,l.after(-S),new N(k,4-I,0));let P=-1;t.doc.nodesBetween(D,t.doc.content.size,(U,C)=>{if(P>-1)return!1;U.isTextblock&&U.content.size===0&&(P=C+1)}),P>-1&&t.setSelection(J.near(t.doc.resolve(P))),t.scrollIntoView()}return!0}const u=p.pos===l.end()?m.contentMatchAt(0).defaultType:null,g={...Ra(d,m.type.name,m.attrs),...e},h={...Ra(d,l.node().type.name,l.node().attrs),...e};t.delete(l.pos,p.pos);const b=u?[{type:r,attrs:g},{type:u,attrs:h}]:[{type:r,attrs:g}];if(!Ot(t.doc,l.pos,2))return!1;if(a){const{selection:k,storedMarks:I}=n,{splittableMarks:S}=s.extensionManager,j=I||k.$to.parentOffset&&k.$from.marks();if(t.split(l.pos,2,b).scrollIntoView(),!j||!a)return!0;const T=j.filter(D=>S.includes(D.type.name));t.ensureMarks(T)}return!0},qi=(o,e)=>{const t=zi(i=>i.type===e)(o.selection);if(!t)return!0;const n=o.doc.resolve(Math.max(0,t.pos-1)).before(t.depth);if(n===void 0)return!0;const a=o.doc.nodeAt(n);return t.node.type===(a==null?void 0:a.type)&&Gt(o.doc,t.pos)&&o.join(t.pos),!0},Wi=(o,e)=>{const t=zi(i=>i.type===e)(o.selection);if(!t)return!0;const n=o.doc.resolve(t.start).after(t.depth);if(n===void 0)return!0;const a=o.doc.nodeAt(n);return t.node.type===(a==null?void 0:a.type)&&Gt(o.doc,n)&&o.join(n),!0};var Tb=Object.freeze({__proto__:null,blur:Sh,clearContent:Mh,clearNodes:Fh,command:Oh,createParagraphNear:Ah,cut:Th,deleteCurrentNode:Nh,deleteNode:Bh,deleteRange:Rh,deleteSelection:Lh,enter:Ph,exitCode:zh,extendMarkRange:$h,first:Hh,focus:Vh,forEach:qh,insertContent:Wh,insertContentAt:Gh,joinBackward:Xh,joinDown:Yh,joinForward:Zh,joinItemBackward:Qh,joinItemForward:eb,joinTextblockBackward:tb,joinTextblockForward:ob,joinUp:Jh,keyboardShortcut:ab,lift:sb,liftEmptyBlock:ib,liftListItem:rb,newlineInCode:lb,resetAttributes:pb,scrollIntoView:cb,selectAll:mb,selectNodeBackward:db,selectNodeForward:ub,selectParentNode:gb,selectTextblockEnd:fb,selectTextblockStart:hb,setContent:bb,setMark:Eb,setMeta:Cb,setNode:xb,setNodeSelection:Sb,setTextSelection:Mb,sinkListItem:Fb,splitBlock:Ob,splitListItem:Ab,toggleList:(o,e,t,n={})=>({editor:a,tr:s,state:i,dispatch:r,chain:l,commands:p,can:c})=>{const{extensions:m,splittableMarks:d}=a.extensionManager,u=Ee(o,i.schema),g=Ee(e,i.schema),{selection:h,storedMarks:b}=i,{$from:k,$to:I}=h,S=k.blockRange(I),j=b||h.$to.parentOffset&&h.$from.marks();if(!S)return!1;const T=zi(D=>Uc(D.type.name,m))(h);if(S.depth>=1&&T&&S.depth-T.depth<=1){if(T.node.type===u)return p.liftListItem(g);if(Uc(T.node.type.name,m)&&u.validContent(T.node.content)&&r)return l().command(()=>(s.setNodeMarkup(T.pos,u),!0)).command(()=>qi(s,u)).command(()=>Wi(s,u)).run()}return!t||!j||!r?l().command(()=>c().wrapInList(u,n)?!0:p.clearNodes()).wrapInList(u,n).command(()=>qi(s,u)).command(()=>Wi(s,u)).run():l().command(()=>{const D=c().wrapInList(u,n),P=j.filter(U=>d.includes(U.type.name));return s.ensureMarks(P),D?!0:p.clearNodes()}).wrapInList(u,n).command(()=>qi(s,u)).command(()=>Wi(s,u)).run()},toggleMark:(o,e={},t={})=>({state:n,commands:a})=>{const{extendEmptyMarkRange:s=!1}=t,i=ao(o,n.schema);return Vi(n,i,e)?a.unsetMark(i,{extendEmptyMarkRange:s}):a.setMark(i,e)},toggleNode:(o,e,t={})=>({state:n,commands:a})=>{const s=Ee(o,n.schema),i=Ee(e,n.schema),r=On(n,s,t);let l;return n.selection.$anchor.sameParent(n.selection.$head)&&(l=n.selection.$anchor.parent.attrs),r?a.setNode(i,l):a.setNode(s,{...l,...t})},toggleWrap:(o,e={})=>({state:t,commands:n})=>{const a=Ee(o,t.schema);return On(t,a,e)?n.lift(a):n.wrapIn(a,e)},undoInputRule:()=>({state:o,dispatch:e})=>{const t=o.plugins;for(let n=0;n<t.length;n+=1){const a=t[n];let s;if(a.spec.isInputRules&&(s=a.getState(o))){if(e){const i=o.tr,r=s.transform;for(let l=r.steps.length-1;l>=0;l-=1)i.step(r.steps[l].invert(r.docs[l]));if(s.text){const l=i.doc.resolve(s.from).marks();i.replaceWith(s.from,s.to,o.schema.text(s.text,l))}else i.delete(s.from,s.to)}return!0}}return!1},unsetAllMarks:()=>({tr:o,dispatch:e})=>{const{selection:t}=o,{empty:n,ranges:a}=t;return n||e&&a.forEach(s=>{o.removeMark(s.$from.pos,s.$to.pos)}),!0},unsetMark:(o,e={})=>({tr:t,state:n,dispatch:a})=>{var s;const{extendEmptyMarkRange:i=!1}=e,{selection:r}=t,l=ao(o,n.schema),{$from:p,empty:c,ranges:m}=r;if(!a)return!0;if(c&&i){let{from:d,to:u}=r;const g=(s=p.marks().find(b=>b.type===l))===null||s===void 0?void 0:s.attrs,h=Aa(p,l,g);h&&(d=h.from,u=h.to),t.removeMark(d,u,l)}else m.forEach(d=>{t.removeMark(d.$from.pos,d.$to.pos,l)});return t.removeStoredMark(l),!0},updateAttributes:(o,e={})=>({tr:t,state:n,dispatch:a})=>{let s=null,i=null;const r=Ba(typeof o=="string"?o:o.name,n.schema);return r?(r==="node"&&(s=Ee(o,n.schema)),r==="mark"&&(i=ao(o,n.schema)),a&&t.selection.ranges.forEach(l=>{const p=l.$from.pos,c=l.$to.pos;let m,d,u,g;t.selection.empty?n.doc.nodesBetween(p,c,(h,b)=>{s&&s===h.type&&(u=Math.max(b,p),g=Math.min(b+h.nodeSize,c),m=b,d=h)}):n.doc.nodesBetween(p,c,(h,b)=>{b<p&&s&&s===h.type&&(u=Math.max(b,p),g=Math.min(b+h.nodeSize,c),m=b,d=h),b>=p&&b<=c&&(s&&s===h.type&&t.setNodeMarkup(b,void 0,{...h.attrs,...e}),i&&h.marks.length&&h.marks.forEach(k=>{if(i===k.type){const I=Math.max(b,p),S=Math.min(b+h.nodeSize,c);t.addMark(I,S,i.create({...k.attrs,...e}))}}))}),d&&(m!==void 0&&t.setNodeMarkup(m,void 0,{...d.attrs,...e}),i&&d.marks.length&&d.marks.forEach(h=>{i===h.type&&t.addMark(u,g,i.create({...h.attrs,...e}))}))}),!0):!1},wrapIn:(o,e={})=>({state:t,dispatch:n})=>{const a=Ee(o,t.schema);return rh(a,e)(t,n)},wrapInList:(o,e={})=>({state:t,dispatch:n})=>{const a=Ee(o,t.schema);return lh(a,e)(t,n)}});const Nb=Ce.create({name:"commands",addCommands(){return{...Tb}}}),Bb=Ce.create({name:"drop",addProseMirrorPlugins(){return[new ue({key:new ye("tiptapDrop"),props:{handleDrop:(o,e,t,n)=>{this.editor.emit("drop",{editor:this.editor,event:e,slice:t,moved:n})}}})]}}),Rb=Ce.create({name:"editable",addProseMirrorPlugins(){return[new ue({key:new ye("editable"),props:{editable:()=>this.editor.options.editable}})]}}),Lb=Ce.create({name:"focusEvents",addProseMirrorPlugins(){const{editor:o}=this;return[new ue({key:new ye("focusEvents"),props:{handleDOMEvents:{focus:(e,t)=>{o.isFocused=!0;const n=o.state.tr.setMeta("focus",{event:t}).setMeta("addToHistory",!1);return e.dispatch(n),!1},blur:(e,t)=>{o.isFocused=!1;const n=o.state.tr.setMeta("blur",{event:t}).setMeta("addToHistory",!1);return e.dispatch(n),!1}}}})]}}),Pb=Ce.create({name:"keymap",addKeyboardShortcuts(){const o=()=>this.editor.commands.first(({commands:i})=>[()=>i.undoInputRule(),()=>i.command(({tr:r})=>{const{selection:l,doc:p}=r,{empty:c,$anchor:m}=l,{pos:d,parent:u}=m,g=m.parent.isTextblock&&d>0?r.doc.resolve(d-1):m,h=g.parent.type.spec.isolating,b=m.pos-m.parentOffset,k=h&&g.parent.childCount===1?b===m.pos:Z.atStart(p).from===d;return!c||!u.type.isTextblock||u.textContent.length||!k||k&&m.parent.type.name==="paragraph"?!1:i.clearNodes()}),()=>i.deleteSelection(),()=>i.joinBackward(),()=>i.selectNodeBackward()]),e=()=>this.editor.commands.first(({commands:i})=>[()=>i.deleteSelection(),()=>i.deleteCurrentNode(),()=>i.joinForward(),()=>i.selectNodeForward()]),n={Enter:()=>this.editor.commands.first(({commands:i})=>[()=>i.newlineInCode(),()=>i.createParagraphNear(),()=>i.liftEmptyBlock(),()=>i.splitBlock()]),"Mod-Enter":()=>this.editor.commands.exitCode(),Backspace:o,"Mod-Backspace":o,"Shift-Backspace":o,Delete:e,"Mod-Delete":e,"Mod-a":()=>this.editor.commands.selectAll()},a={...n},s={...n,"Ctrl-h":o,"Alt-Backspace":o,"Ctrl-d":e,"Ctrl-Alt-Backspace":e,"Alt-Delete":e,"Alt-d":e,"Ctrl-a":()=>this.editor.commands.selectTextblockStart(),"Ctrl-e":()=>this.editor.commands.selectTextblockEnd()};return Bi()||$c()?s:a},addProseMirrorPlugins(){return[new ue({key:new ye("clearDocument"),appendTransaction:(o,e,t)=>{const n=o.some(h=>h.docChanged)&&!e.doc.eq(t.doc),a=o.some(h=>h.getMeta("preventClearDocument"));if(!n||a)return;const{empty:s,from:i,to:r}=e.selection,l=Z.atStart(e.doc).from,p=Z.atEnd(e.doc).to;if(s||!(i===l&&r===p)||!La(t.doc))return;const d=t.tr,u=Ea({state:t,transaction:d}),{commands:g}=new Ca({editor:this.editor,state:u});if(g.clearNodes(),!!d.steps.length)return d}})]}}),zb=Ce.create({name:"paste",addProseMirrorPlugins(){return[new ue({key:new ye("tiptapPaste"),props:{handlePaste:(o,e,t)=>{this.editor.emit("paste",{editor:this.editor,event:e,slice:t})}}})]}}),$b=Ce.create({name:"tabindex",addProseMirrorPlugins(){return[new ue({key:new ye("tabindex"),props:{attributes:()=>this.editor.isEditable?{tabindex:"0"}:{}}})]}});class Io{get name(){return this.node.type.name}constructor(e,t,n=!1,a=null){this.currentNode=null,this.actualDepth=null,this.isBlock=n,this.resolvedPos=e,this.editor=t,this.currentNode=a}get node(){return this.currentNode||this.resolvedPos.node()}get element(){return this.editor.view.domAtPos(this.pos).node}get depth(){var e;return(e=this.actualDepth)!==null&&e!==void 0?e:this.resolvedPos.depth}get pos(){return this.resolvedPos.pos}get content(){return this.node.content}set content(e){let t=this.from,n=this.to;if(this.isBlock){if(this.content.size===0){console.error(`You can’t set content on a block node. Tried to set content on ${this.name} at ${this.pos}`);return}t=this.from+1,n=this.to-1}this.editor.commands.insertContentAt({from:t,to:n},e)}get attributes(){return this.node.attrs}get textContent(){return this.node.textContent}get size(){return this.node.nodeSize}get from(){return this.isBlock?this.pos:this.resolvedPos.start(this.resolvedPos.depth)}get range(){return{from:this.from,to:this.to}}get to(){return this.isBlock?this.pos+this.size:this.resolvedPos.end(this.resolvedPos.depth)+(this.node.isText?0:1)}get parent(){if(this.depth===0)return null;const e=this.resolvedPos.start(this.resolvedPos.depth-1),t=this.resolvedPos.doc.resolve(e);return new Io(t,this.editor)}get before(){let e=this.resolvedPos.doc.resolve(this.from-(this.isBlock?1:2));return e.depth!==this.depth&&(e=this.resolvedPos.doc.resolve(this.from-3)),new Io(e,this.editor)}get after(){let e=this.resolvedPos.doc.resolve(this.to+(this.isBlock?2:1));return e.depth!==this.depth&&(e=this.resolvedPos.doc.resolve(this.to+3)),new Io(e,this.editor)}get children(){const e=[];return this.node.content.forEach((t,n)=>{const a=t.isBlock&&!t.isTextblock,s=t.isAtom&&!t.isText,i=this.pos+n+(s?0:1),r=this.resolvedPos.doc.resolve(i);if(!a&&r.depth<=this.depth)return;const l=new Io(r,this.editor,a,a?t:null);a&&(l.actualDepth=this.depth+1),e.push(new Io(r,this.editor,a,a?t:null))}),e}get firstChild(){return this.children[0]||null}get lastChild(){const e=this.children;return e[e.length-1]||null}closest(e,t={}){let n=null,a=this.parent;for(;a&&!n;){if(a.node.type.name===e)if(Object.keys(t).length>0){const s=a.node.attrs,i=Object.keys(t);for(let r=0;r<i.length;r+=1){const l=i[r];if(s[l]!==t[l])break}}else n=a;a=a.parent}return n}querySelector(e,t={}){return this.querySelectorAll(e,t,!0)[0]||null}querySelectorAll(e,t={},n=!1){let a=[];if(!this.children||this.children.length===0)return a;const s=Object.keys(t);return this.children.forEach(i=>{n&&a.length>0||(i.node.type.name===e&&s.every(l=>t[l]===i.node.attrs[l])&&a.push(i),!(n&&a.length>0)&&(a=a.concat(i.querySelectorAll(e,t,n))))}),a}setAttribute(e){const{tr:t}=this.editor.state;t.setNodeMarkup(this.from,void 0,{...this.node.attrs,...e}),this.editor.view.dispatch(t)}}const Hb=`.ProseMirror {
|
|
14
|
-
position: relative;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
.ProseMirror {
|
|
18
|
-
word-wrap: break-word;
|
|
19
|
-
white-space: pre-wrap;
|
|
20
|
-
white-space: break-spaces;
|
|
21
|
-
-webkit-font-variant-ligatures: none;
|
|
22
|
-
font-variant-ligatures: none;
|
|
23
|
-
font-feature-settings: "liga" 0; /* the above doesn't seem to work in Edge */
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
.ProseMirror [contenteditable="false"] {
|
|
27
|
-
white-space: normal;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
.ProseMirror [contenteditable="false"] [contenteditable="true"] {
|
|
31
|
-
white-space: pre-wrap;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
.ProseMirror pre {
|
|
35
|
-
white-space: pre-wrap;
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
img.ProseMirror-separator {
|
|
39
|
-
display: inline !important;
|
|
40
|
-
border: none !important;
|
|
41
|
-
margin: 0 !important;
|
|
42
|
-
width: 0 !important;
|
|
43
|
-
height: 0 !important;
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
.ProseMirror-gapcursor {
|
|
47
|
-
display: none;
|
|
48
|
-
pointer-events: none;
|
|
49
|
-
position: absolute;
|
|
50
|
-
margin: 0;
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
.ProseMirror-gapcursor:after {
|
|
54
|
-
content: "";
|
|
55
|
-
display: block;
|
|
56
|
-
position: absolute;
|
|
57
|
-
top: -2px;
|
|
58
|
-
width: 20px;
|
|
59
|
-
border-top: 1px solid black;
|
|
60
|
-
animation: ProseMirror-cursor-blink 1.1s steps(2, start) infinite;
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
@keyframes ProseMirror-cursor-blink {
|
|
64
|
-
to {
|
|
65
|
-
visibility: hidden;
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
.ProseMirror-hideselection *::selection {
|
|
70
|
-
background: transparent;
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
.ProseMirror-hideselection *::-moz-selection {
|
|
74
|
-
background: transparent;
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
.ProseMirror-hideselection * {
|
|
78
|
-
caret-color: transparent;
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
.ProseMirror-focused .ProseMirror-gapcursor {
|
|
82
|
-
display: block;
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
.tippy-box[data-animation=fade][data-state=hidden] {
|
|
86
|
-
opacity: 0
|
|
87
|
-
}`;function Vb(o,e,t){const n=document.querySelector("style[data-tiptap-style]");if(n!==null)return n;const a=document.createElement("style");return e&&a.setAttribute("nonce",e),a.setAttribute("data-tiptap-style",""),a.innerHTML=o,document.getElementsByTagName("head")[0].appendChild(a),a}let qb=class extends gh{constructor(e={}){super(),this.isFocused=!1,this.isInitialized=!1,this.extensionStorage={},this.options={element:document.createElement("div"),content:"",injectCSS:!0,injectNonce:void 0,extensions:[],autofocus:!1,editable:!0,editorProps:{},parseOptions:{},coreExtensionOptions:{},enableInputRules:!0,enablePasteRules:!0,enableCoreExtensions:!0,enableContentCheck:!1,onBeforeCreate:()=>null,onCreate:()=>null,onUpdate:()=>null,onSelectionUpdate:()=>null,onTransaction:()=>null,onFocus:()=>null,onBlur:()=>null,onDestroy:()=>null,onContentError:({error:t})=>{throw t},onPaste:()=>null,onDrop:()=>null},this.isCapturingTransaction=!1,this.capturedTransaction=null,this.setOptions(e),this.createExtensionManager(),this.createCommandManager(),this.createSchema(),this.on("beforeCreate",this.options.onBeforeCreate),this.emit("beforeCreate",{editor:this}),this.on("contentError",this.options.onContentError),this.createView(),this.injectCSS(),this.on("create",this.options.onCreate),this.on("update",this.options.onUpdate),this.on("selectionUpdate",this.options.onSelectionUpdate),this.on("transaction",this.options.onTransaction),this.on("focus",this.options.onFocus),this.on("blur",this.options.onBlur),this.on("destroy",this.options.onDestroy),this.on("drop",({event:t,slice:n,moved:a})=>this.options.onDrop(t,n,a)),this.on("paste",({event:t,slice:n})=>this.options.onPaste(t,n)),window.setTimeout(()=>{this.isDestroyed||(this.commands.focus(this.options.autofocus),this.emit("create",{editor:this}),this.isInitialized=!0)},0)}get storage(){return this.extensionStorage}get commands(){return this.commandManager.commands}chain(){return this.commandManager.chain()}can(){return this.commandManager.can()}injectCSS(){this.options.injectCSS&&document&&(this.css=Vb(Hb,this.options.injectNonce))}setOptions(e={}){this.options={...this.options,...e},!(!this.view||!this.state||this.isDestroyed)&&(this.options.editorProps&&this.view.setProps(this.options.editorProps),this.view.updateState(this.state))}setEditable(e,t=!0){this.setOptions({editable:e}),t&&this.emit("update",{editor:this,transaction:this.state.tr})}get isEditable(){return this.options.editable&&this.view&&this.view.editable}get state(){return this.view.state}registerPlugin(e,t){const n=Mc(t)?t(e,[...this.state.plugins]):[...this.state.plugins,e],a=this.state.reconfigure({plugins:n});return this.view.updateState(a),a}unregisterPlugin(e){if(this.isDestroyed)return;const t=this.state.plugins;let n=t;if([].concat(e).forEach(s=>{const i=typeof s=="string"?`${s}$`:s.key;n=t.filter(r=>!r.key.startsWith(i))}),t.length===n.length)return;const a=this.state.reconfigure({plugins:n});return this.view.updateState(a),a}createExtensionManager(){var e,t;const a=[...this.options.enableCoreExtensions?[Rb,xh.configure({blockSeparator:(t=(e=this.options.coreExtensionOptions)===null||e===void 0?void 0:e.clipboardTextSerializer)===null||t===void 0?void 0:t.blockSeparator}),Nb,Lb,Pb,$b,Bb,zb].filter(s=>typeof this.options.enableCoreExtensions=="object"?this.options.enableCoreExtensions[s.name]!==!1:!0):[],...this.options.extensions].filter(s=>["extension","node","mark"].includes(s==null?void 0:s.type));this.extensionManager=new Yo(a,this)}createCommandManager(){this.commandManager=new Ca({editor:this})}createSchema(){this.schema=this.extensionManager.schema}createView(){var e;let t;try{t=Ri(this.options.content,this.schema,this.options.parseOptions,{errorOnInvalidContent:this.options.enableContentCheck})}catch(i){if(!(i instanceof Error)||!["[tiptap error]: Invalid JSON content","[tiptap error]: Invalid HTML content"].includes(i.message))throw i;this.emit("contentError",{editor:this,error:i,disableCollaboration:()=>{this.storage.collaboration&&(this.storage.collaboration.isDisabled=!0),this.options.extensions=this.options.extensions.filter(r=>r.name!=="collaboration"),this.createExtensionManager()}}),t=Ri(this.options.content,this.schema,this.options.parseOptions,{errorOnInvalidContent:!1})}const n=Pc(t,this.options.autofocus);this.view=new Pf(this.options.element,{...this.options.editorProps,attributes:{role:"textbox",...(e=this.options.editorProps)===null||e===void 0?void 0:e.attributes},dispatchTransaction:this.dispatchTransaction.bind(this),state:Vo.create({doc:t,selection:n||void 0})});const a=this.state.reconfigure({plugins:this.extensionManager.plugins});this.view.updateState(a),this.createNodeViews(),this.prependClass();const s=this.view.dom;s.editor=this}createNodeViews(){this.view.isDestroyed||this.view.setProps({nodeViews:this.extensionManager.nodeViews})}prependClass(){this.view.dom.className=`tiptap ${this.view.dom.className}`}captureTransaction(e){this.isCapturingTransaction=!0,e(),this.isCapturingTransaction=!1;const t=this.capturedTransaction;return this.capturedTransaction=null,t}dispatchTransaction(e){if(this.view.isDestroyed)return;if(this.isCapturingTransaction){if(!this.capturedTransaction){this.capturedTransaction=e;return}e.steps.forEach(i=>{var r;return(r=this.capturedTransaction)===null||r===void 0?void 0:r.step(i)});return}const t=this.state.apply(e),n=!this.state.selection.eq(t.selection);this.emit("beforeTransaction",{editor:this,transaction:e,nextState:t}),this.view.updateState(t),this.emit("transaction",{editor:this,transaction:e}),n&&this.emit("selectionUpdate",{editor:this,transaction:e});const a=e.getMeta("focus"),s=e.getMeta("blur");a&&this.emit("focus",{editor:this,event:a.event,transaction:e}),s&&this.emit("blur",{editor:this,event:s.event,transaction:e}),!(!e.docChanged||e.getMeta("preventUpdate"))&&this.emit("update",{editor:this,transaction:e})}getAttributes(e){return $i(this.state,e)}isActive(e,t){const n=typeof e=="string"?e:null,a=typeof e=="string"?t:e;return wb(this.state,n,a)}getJSON(){return this.state.doc.toJSON()}getHTML(){return Ai(this.state.doc.content,this.schema)}getText(e){const{blockSeparator:t=`
|
|
88
|
-
|
|
89
|
-
`,textSerializers:n={}}=e||{};return kb(this.state.doc,{blockSeparator:t,textSerializers:{...Bc(this.schema),...n}})}get isEmpty(){return La(this.state.doc)}getCharacterCount(){return console.warn('[tiptap warn]: "editor.getCharacterCount()" is deprecated. Please use "editor.storage.characterCount.characters()" instead.'),this.state.doc.content.size-2}destroy(){if(this.emit("destroy"),this.view){const e=this.view.dom;e&&e.editor&&delete e.editor,this.view.destroy()}this.removeAllListeners()}get isDestroyed(){var e;return!(!((e=this.view)===null||e===void 0)&&e.docView)}$node(e,t){var n;return((n=this.$doc)===null||n===void 0?void 0:n.querySelector(e,t))||null}$nodes(e,t){var n;return((n=this.$doc)===null||n===void 0?void 0:n.querySelectorAll(e,t))||null}$pos(e){const t=this.state.doc.resolve(e);return new Io(t,this)}get $doc(){return this.$pos(0)}};function Xo(o){return new Fn({find:o.find,handler:({state:e,range:t,match:n})=>{const a=ee(o.getAttributes,void 0,n);if(a===!1||a===null)return null;const{tr:s}=e,i=n[n.length-1],r=n[0];if(i){const l=r.search(/\S/),p=t.from+r.indexOf(i),c=p+i.length;if(Hi(t.from,t.to,e.doc).filter(u=>u.mark.type.excluded.find(h=>h===o.type&&h!==u.mark.type)).filter(u=>u.to>p).length)return null;c<t.to&&s.delete(c,t.to),p>t.from&&s.delete(t.from+l,p);const d=t.from+l+i.length;s.addMark(t.from+l,d,o.type.create(a||{})),s.removeStoredMark(o.type)}}})}function Ui(o){return new Fn({find:o.find,handler:({state:e,range:t,match:n})=>{const a=ee(o.getAttributes,void 0,n)||{},{tr:s}=e,i=t.from;let r=t.to;const l=o.type.create(a);if(n[1]){const p=n[0].lastIndexOf(n[1]);let c=i+p;c>r?c=r:r=c+n[1].length;const m=n[0][n[0].length-1];s.insertText(m,i+n[0].length-1),s.replaceWith(c,r,l)}else if(n[0]){const p=o.type.isInline?i:i-1;s.insert(p,o.type.create(a)).delete(s.mapping.map(i),s.mapping.map(r))}s.scrollIntoView()}})}function Ki(o){return new Fn({find:o.find,handler:({state:e,range:t,match:n})=>{const a=e.doc.resolve(t.from),s=ee(o.getAttributes,void 0,n)||{};if(!a.node(-1).canReplaceWith(a.index(-1),a.indexAfter(-1),o.type))return null;e.tr.delete(t.from,t.to).setBlockType(t.from,t.from,o.type,s)}})}function An(o){return new Fn({find:o.find,handler:({state:e,range:t,match:n,chain:a})=>{const s=ee(o.getAttributes,void 0,n)||{},i=e.tr.delete(t.from,t.to),l=i.doc.resolve(t.from).blockRange(),p=l&&Js(l,o.type,s);if(!p)return null;if(i.wrap(l,p),o.keepMarks&&o.editor){const{selection:m,storedMarks:d}=e,{splittableMarks:u}=o.editor.extensionManager,g=d||m.$to.parentOffset&&m.$from.marks();if(g){const h=g.filter(b=>u.includes(b.type.name));i.ensureMarks(h)}}if(o.keepAttributes){const m=o.type.name==="bulletList"||o.type.name==="orderedList"?"listItem":"taskList";a().updateAttributes(m,s).run()}const c=i.doc.resolve(t.from-1).nodeBefore;c&&c.type===o.type&&Gt(i.doc,t.from-1)&&(!o.joinPredicate||o.joinPredicate(n,c))&&i.join(t.from-1)}})}class Be{constructor(e={}){this.type="node",this.name="node",this.parent=null,this.child=null,this.config={name:this.name,defaultOptions:{}},this.config={...this.config,...e},this.name=this.config.name,e.defaultOptions&&Object.keys(e.defaultOptions).length>0&&console.warn(`[tiptap warn]: BREAKING CHANGE: "defaultOptions" is deprecated. Please use "addOptions" instead. Found in extension: "${this.name}".`),this.options=this.config.defaultOptions,this.config.addOptions&&(this.options=ee(R(this,"addOptions",{name:this.name}))),this.storage=ee(R(this,"addStorage",{name:this.name,options:this.options}))||{}}static create(e={}){return new Be(e)}configure(e={}){const t=this.extend({...this.config,addOptions:()=>Fa(this.options,e)});return t.name=this.name,t.parent=this.parent,t}extend(e={}){const t=new Be(e);return t.parent=this,this.child=t,t.name=e.name?e.name:t.parent.name,e.defaultOptions&&Object.keys(e.defaultOptions).length>0&&console.warn(`[tiptap warn]: BREAKING CHANGE: "defaultOptions" is deprecated. Please use "addOptions" instead. Found in extension: "${t.name}".`),t.options=ee(R(t,"addOptions",{name:t.name})),t.storage=ee(R(t,"addStorage",{name:t.name,options:t.options})),t}}function Eo(o){return new Tc({find:o.find,handler:({state:e,range:t,match:n,pasteEvent:a})=>{const s=ee(o.getAttributes,void 0,n,a);if(s===!1||s===null)return null;const{tr:i}=e,r=n[n.length-1],l=n[0];let p=t.to;if(r){const c=l.search(/\S/),m=t.from+l.indexOf(r),d=m+r.length;if(Hi(t.from,t.to,e.doc).filter(g=>g.mark.type.excluded.find(b=>b===o.type&&b!==g.mark.type)).filter(g=>g.to>m).length)return null;d<t.to&&i.delete(d,t.to),m>t.from&&i.delete(t.from+c,m),p=t.from+c+r.length,i.addMark(t.from+c,p,o.type.create(s||{})),i.removeStoredMark(o.type)}}})}function Yc(o){return o.replace(/[-/\\^$*+?.()|[\]{}]/g,"\\$&")}var We="top",ot="bottom",nt="right",Ue="left",Gi="auto",Tn=[We,ot,nt,Ue],Zo="start",Nn="end",Wb="clippingParents",Xc="viewport",Bn="popper",Ub="reference",Zc=Tn.reduce(function(o,e){return o.concat([e+"-"+Zo,e+"-"+Nn])},[]),Qc=[].concat(Tn,[Gi]).reduce(function(o,e){return o.concat([e,e+"-"+Zo,e+"-"+Nn])},[]),Kb="beforeRead",Gb="read",Jb="afterRead",Yb="beforeMain",Xb="main",Zb="afterMain",Qb="beforeWrite",ej="write",tj="afterWrite",oj=[Kb,Gb,Jb,Yb,Xb,Zb,Qb,ej,tj];function _t(o){return o?(o.nodeName||"").toLowerCase():null}function Ye(o){if(o==null)return window;if(o.toString()!=="[object Window]"){var e=o.ownerDocument;return e&&e.defaultView||window}return o}function Co(o){var e=Ye(o).Element;return o instanceof e||o instanceof Element}function at(o){var e=Ye(o).HTMLElement;return o instanceof e||o instanceof HTMLElement}function Ji(o){if(typeof ShadowRoot>"u")return!1;var e=Ye(o).ShadowRoot;return o instanceof e||o instanceof ShadowRoot}function nj(o){var e=o.state;Object.keys(e.elements).forEach(function(t){var n=e.styles[t]||{},a=e.attributes[t]||{},s=e.elements[t];!at(s)||!_t(s)||(Object.assign(s.style,n),Object.keys(a).forEach(function(i){var r=a[i];r===!1?s.removeAttribute(i):s.setAttribute(i,r===!0?"":r)}))})}function aj(o){var e=o.state,t={popper:{position:e.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(e.elements.popper.style,t.popper),e.styles=t,e.elements.arrow&&Object.assign(e.elements.arrow.style,t.arrow),function(){Object.keys(e.elements).forEach(function(n){var a=e.elements[n],s=e.attributes[n]||{},i=Object.keys(e.styles.hasOwnProperty(n)?e.styles[n]:t[n]),r=i.reduce(function(l,p){return l[p]="",l},{});!at(a)||!_t(a)||(Object.assign(a.style,r),Object.keys(s).forEach(function(l){a.removeAttribute(l)}))})}}const em={name:"applyStyles",enabled:!0,phase:"write",fn:nj,effect:aj,requires:["computeStyles"]};function Dt(o){return o.split("-")[0]}var xo=Math.max,Pa=Math.min,Qo=Math.round;function Yi(){var o=navigator.userAgentData;return o!=null&&o.brands&&Array.isArray(o.brands)?o.brands.map(function(e){return e.brand+"/"+e.version}).join(" "):navigator.userAgent}function tm(){return!/^((?!chrome|android).)*safari/i.test(Yi())}function en(o,e,t){e===void 0&&(e=!1),t===void 0&&(t=!1);var n=o.getBoundingClientRect(),a=1,s=1;e&&at(o)&&(a=o.offsetWidth>0&&Qo(n.width)/o.offsetWidth||1,s=o.offsetHeight>0&&Qo(n.height)/o.offsetHeight||1);var i=Co(o)?Ye(o):window,r=i.visualViewport,l=!tm()&&t,p=(n.left+(l&&r?r.offsetLeft:0))/a,c=(n.top+(l&&r?r.offsetTop:0))/s,m=n.width/a,d=n.height/s;return{width:m,height:d,top:c,right:p+m,bottom:c+d,left:p,x:p,y:c}}function Xi(o){var e=en(o),t=o.offsetWidth,n=o.offsetHeight;return Math.abs(e.width-t)<=1&&(t=e.width),Math.abs(e.height-n)<=1&&(n=e.height),{x:o.offsetLeft,y:o.offsetTop,width:t,height:n}}function om(o,e){var t=e.getRootNode&&e.getRootNode();if(o.contains(e))return!0;if(t&&Ji(t)){var n=e;do{if(n&&o.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}function Rt(o){return Ye(o).getComputedStyle(o)}function sj(o){return["table","td","th"].indexOf(_t(o))>=0}function so(o){return((Co(o)?o.ownerDocument:o.document)||window.document).documentElement}function za(o){return _t(o)==="html"?o:o.assignedSlot||o.parentNode||(Ji(o)?o.host:null)||so(o)}function nm(o){return!at(o)||Rt(o).position==="fixed"?null:o.offsetParent}function ij(o){var e=/firefox/i.test(Yi()),t=/Trident/i.test(Yi());if(t&&at(o)){var n=Rt(o);if(n.position==="fixed")return null}var a=za(o);for(Ji(a)&&(a=a.host);at(a)&&["html","body"].indexOf(_t(a))<0;){var s=Rt(a);if(s.transform!=="none"||s.perspective!=="none"||s.contain==="paint"||["transform","perspective"].indexOf(s.willChange)!==-1||e&&s.willChange==="filter"||e&&s.filter&&s.filter!=="none")return a;a=a.parentNode}return null}function Rn(o){for(var e=Ye(o),t=nm(o);t&&sj(t)&&Rt(t).position==="static";)t=nm(t);return t&&(_t(t)==="html"||_t(t)==="body"&&Rt(t).position==="static")?e:t||ij(o)||e}function Zi(o){return["top","bottom"].indexOf(o)>=0?"x":"y"}function Ln(o,e,t){return xo(o,Pa(e,t))}function rj(o,e,t){var n=Ln(o,e,t);return n>t?t:n}function am(){return{top:0,right:0,bottom:0,left:0}}function sm(o){return Object.assign({},am(),o)}function im(o,e){return e.reduce(function(t,n){return t[n]=o,t},{})}var lj=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,sm(typeof e!="number"?e:im(e,Tn))};function pj(o){var e,t=o.state,n=o.name,a=o.options,s=t.elements.arrow,i=t.modifiersData.popperOffsets,r=Dt(t.placement),l=Zi(r),p=[Ue,nt].indexOf(r)>=0,c=p?"height":"width";if(!(!s||!i)){var m=lj(a.padding,t),d=Xi(s),u=l==="y"?We:Ue,g=l==="y"?ot:nt,h=t.rects.reference[c]+t.rects.reference[l]-i[l]-t.rects.popper[c],b=i[l]-t.rects.reference[l],k=Rn(s),I=k?l==="y"?k.clientHeight||0:k.clientWidth||0:0,S=h/2-b/2,j=m[u],T=I-d[c]-m[g],D=I/2-d[c]/2+S,P=Ln(j,D,T),U=l;t.modifiersData[n]=(e={},e[U]=P,e.centerOffset=P-D,e)}}function cj(o){var e=o.state,t=o.options,n=t.element,a=n===void 0?"[data-popper-arrow]":n;a!=null&&(typeof a=="string"&&(a=e.elements.popper.querySelector(a),!a)||om(e.elements.popper,a)&&(e.elements.arrow=a))}const mj={name:"arrow",enabled:!0,phase:"main",fn:pj,effect:cj,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function tn(o){return o.split("-")[1]}var dj={top:"auto",right:"auto",bottom:"auto",left:"auto"};function uj(o,e){var t=o.x,n=o.y,a=e.devicePixelRatio||1;return{x:Qo(t*a)/a||0,y:Qo(n*a)/a||0}}function rm(o){var e,t=o.popper,n=o.popperRect,a=o.placement,s=o.variation,i=o.offsets,r=o.position,l=o.gpuAcceleration,p=o.adaptive,c=o.roundOffsets,m=o.isFixed,d=i.x,u=d===void 0?0:d,g=i.y,h=g===void 0?0:g,b=typeof c=="function"?c({x:u,y:h}):{x:u,y:h};u=b.x,h=b.y;var k=i.hasOwnProperty("x"),I=i.hasOwnProperty("y"),S=Ue,j=We,T=window;if(p){var D=Rn(t),P="clientHeight",U="clientWidth";if(D===Ye(t)&&(D=so(t),Rt(D).position!=="static"&&r==="absolute"&&(P="scrollHeight",U="scrollWidth")),D=D,a===We||(a===Ue||a===nt)&&s===Nn){j=ot;var C=m&&D===T&&T.visualViewport?T.visualViewport.height:D[P];h-=C-n.height,h*=l?1:-1}if(a===Ue||(a===We||a===ot)&&s===Nn){S=nt;var q=m&&D===T&&T.visualViewport?T.visualViewport.width:D[U];u-=q-n.width,u*=l?1:-1}}var X=Object.assign({position:r},p&&dj),ae=c===!0?uj({x:u,y:h},Ye(t)):{x:u,y:h};if(u=ae.x,h=ae.y,l){var ne;return Object.assign({},X,(ne={},ne[j]=I?"0":"",ne[S]=k?"0":"",ne.transform=(T.devicePixelRatio||1)<=1?"translate("+u+"px, "+h+"px)":"translate3d("+u+"px, "+h+"px, 0)",ne))}return Object.assign({},X,(e={},e[j]=I?h+"px":"",e[S]=k?u+"px":"",e.transform="",e))}function gj(o){var e=o.state,t=o.options,n=t.gpuAcceleration,a=n===void 0?!0:n,s=t.adaptive,i=s===void 0?!0:s,r=t.roundOffsets,l=r===void 0?!0:r,p={placement:Dt(e.placement),variation:tn(e.placement),popper:e.elements.popper,popperRect:e.rects.popper,gpuAcceleration:a,isFixed:e.options.strategy==="fixed"};e.modifiersData.popperOffsets!=null&&(e.styles.popper=Object.assign({},e.styles.popper,rm(Object.assign({},p,{offsets:e.modifiersData.popperOffsets,position:e.options.strategy,adaptive:i,roundOffsets:l})))),e.modifiersData.arrow!=null&&(e.styles.arrow=Object.assign({},e.styles.arrow,rm(Object.assign({},p,{offsets:e.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-placement":e.placement})}const fj={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:gj,data:{}};var $a={passive:!0};function hj(o){var e=o.state,t=o.instance,n=o.options,a=n.scroll,s=a===void 0?!0:a,i=n.resize,r=i===void 0?!0:i,l=Ye(e.elements.popper),p=[].concat(e.scrollParents.reference,e.scrollParents.popper);return s&&p.forEach(function(c){c.addEventListener("scroll",t.update,$a)}),r&&l.addEventListener("resize",t.update,$a),function(){s&&p.forEach(function(c){c.removeEventListener("scroll",t.update,$a)}),r&&l.removeEventListener("resize",t.update,$a)}}const bj={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:hj,data:{}};var jj={left:"right",right:"left",bottom:"top",top:"bottom"};function Ha(o){return o.replace(/left|right|bottom|top/g,function(e){return jj[e]})}var vj={start:"end",end:"start"};function lm(o){return o.replace(/start|end/g,function(e){return vj[e]})}function Qi(o){var e=Ye(o),t=e.pageXOffset,n=e.pageYOffset;return{scrollLeft:t,scrollTop:n}}function er(o){return en(so(o)).left+Qi(o).scrollLeft}function kj(o,e){var t=Ye(o),n=so(o),a=t.visualViewport,s=n.clientWidth,i=n.clientHeight,r=0,l=0;if(a){s=a.width,i=a.height;var p=tm();(p||!p&&e==="fixed")&&(r=a.offsetLeft,l=a.offsetTop)}return{width:s,height:i,x:r+er(o),y:l}}function yj(o){var e,t=so(o),n=Qi(o),a=(e=o.ownerDocument)==null?void 0:e.body,s=xo(t.scrollWidth,t.clientWidth,a?a.scrollWidth:0,a?a.clientWidth:0),i=xo(t.scrollHeight,t.clientHeight,a?a.scrollHeight:0,a?a.clientHeight:0),r=-n.scrollLeft+er(o),l=-n.scrollTop;return Rt(a||t).direction==="rtl"&&(r+=xo(t.clientWidth,a?a.clientWidth:0)-s),{width:s,height:i,x:r,y:l}}function tr(o){var e=Rt(o),t=e.overflow,n=e.overflowX,a=e.overflowY;return/auto|scroll|overlay|hidden/.test(t+a+n)}function pm(o){return["html","body","#document"].indexOf(_t(o))>=0?o.ownerDocument.body:at(o)&&tr(o)?o:pm(za(o))}function Pn(o,e){var t;e===void 0&&(e=[]);var n=pm(o),a=n===((t=o.ownerDocument)==null?void 0:t.body),s=Ye(n),i=a?[s].concat(s.visualViewport||[],tr(n)?n:[]):n,r=e.concat(i);return a?r:r.concat(Pn(za(i)))}function or(o){return Object.assign({},o,{left:o.x,top:o.y,right:o.x+o.width,bottom:o.y+o.height})}function _j(o,e){var t=en(o,!1,e==="fixed");return t.top=t.top+o.clientTop,t.left=t.left+o.clientLeft,t.bottom=t.top+o.clientHeight,t.right=t.left+o.clientWidth,t.width=o.clientWidth,t.height=o.clientHeight,t.x=t.left,t.y=t.top,t}function cm(o,e,t){return e===Xc?or(kj(o,t)):Co(e)?_j(e,t):or(yj(so(o)))}function Dj(o){var e=Pn(za(o)),t=["absolute","fixed"].indexOf(Rt(o).position)>=0,n=t&&at(o)?Rn(o):o;return Co(n)?e.filter(function(a){return Co(a)&&om(a,n)&&_t(a)!=="body"}):[]}function wj(o,e,t,n){var a=e==="clippingParents"?Dj(o):[].concat(e),s=[].concat(a,[t]),i=s[0],r=s.reduce(function(l,p){var c=cm(o,p,n);return l.top=xo(c.top,l.top),l.right=Pa(c.right,l.right),l.bottom=Pa(c.bottom,l.bottom),l.left=xo(c.left,l.left),l},cm(o,i,n));return r.width=r.right-r.left,r.height=r.bottom-r.top,r.x=r.left,r.y=r.top,r}function mm(o){var e=o.reference,t=o.element,n=o.placement,a=n?Dt(n):null,s=n?tn(n):null,i=e.x+e.width/2-t.width/2,r=e.y+e.height/2-t.height/2,l;switch(a){case We:l={x:i,y:e.y-t.height};break;case ot:l={x:i,y:e.y+e.height};break;case nt:l={x:e.x+e.width,y:r};break;case Ue:l={x:e.x-t.width,y:r};break;default:l={x:e.x,y:e.y}}var p=a?Zi(a):null;if(p!=null){var c=p==="y"?"height":"width";switch(s){case Zo:l[p]=l[p]-(e[c]/2-t[c]/2);break;case Nn:l[p]=l[p]+(e[c]/2-t[c]/2);break}}return l}function zn(o,e){e===void 0&&(e={});var t=e,n=t.placement,a=n===void 0?o.placement:n,s=t.strategy,i=s===void 0?o.strategy:s,r=t.boundary,l=r===void 0?Wb:r,p=t.rootBoundary,c=p===void 0?Xc:p,m=t.elementContext,d=m===void 0?Bn:m,u=t.altBoundary,g=u===void 0?!1:u,h=t.padding,b=h===void 0?0:h,k=sm(typeof b!="number"?b:im(b,Tn)),I=d===Bn?Ub:Bn,S=o.rects.popper,j=o.elements[g?I:d],T=wj(Co(j)?j:j.contextElement||so(o.elements.popper),l,c,i),D=en(o.elements.reference),P=mm({reference:D,element:S,placement:a}),U=or(Object.assign({},S,P)),C=d===Bn?U:D,q={top:T.top-C.top+k.top,bottom:C.bottom-T.bottom+k.bottom,left:T.left-C.left+k.left,right:C.right-T.right+k.right},X=o.modifiersData.offset;if(d===Bn&&X){var ae=X[a];Object.keys(q).forEach(function(ne){var ce=[nt,ot].indexOf(ne)>=0?1:-1,L=[We,ot].indexOf(ne)>=0?"y":"x";q[ne]+=ae[L]*ce})}return q}function Ij(o,e){e===void 0&&(e={});var t=e,n=t.placement,a=t.boundary,s=t.rootBoundary,i=t.padding,r=t.flipVariations,l=t.allowedAutoPlacements,p=l===void 0?Qc:l,c=tn(n),m=c?r?Zc:Zc.filter(function(g){return tn(g)===c}):Tn,d=m.filter(function(g){return p.indexOf(g)>=0});d.length===0&&(d=m);var u=d.reduce(function(g,h){return g[h]=zn(o,{placement:h,boundary:a,rootBoundary:s,padding:i})[Dt(h)],g},{});return Object.keys(u).sort(function(g,h){return u[g]-u[h]})}function Ej(o){if(Dt(o)===Gi)return[];var e=Ha(o);return[lm(o),e,lm(e)]}function Cj(o){var e=o.state,t=o.options,n=o.name;if(!e.modifiersData[n]._skip){for(var a=t.mainAxis,s=a===void 0?!0:a,i=t.altAxis,r=i===void 0?!0:i,l=t.fallbackPlacements,p=t.padding,c=t.boundary,m=t.rootBoundary,d=t.altBoundary,u=t.flipVariations,g=u===void 0?!0:u,h=t.allowedAutoPlacements,b=e.options.placement,k=Dt(b),I=k===b,S=l||(I||!g?[Ha(b)]:Ej(b)),j=[b].concat(S).reduce(function(De,te){return De.concat(Dt(te)===Gi?Ij(e,{placement:te,boundary:c,rootBoundary:m,padding:p,flipVariations:g,allowedAutoPlacements:h}):te)},[]),T=e.rects.reference,D=e.rects.popper,P=new Map,U=!0,C=j[0],q=0;q<j.length;q++){var X=j[q],ae=Dt(X),ne=tn(X)===Zo,ce=[We,ot].indexOf(ae)>=0,L=ce?"width":"height",H=zn(e,{placement:X,boundary:c,rootBoundary:m,altBoundary:d,padding:p}),v=ce?ne?nt:Ue:ne?ot:We;T[L]>D[L]&&(v=Ha(v));var _=Ha(v),F=[];if(s&&F.push(H[ae]<=0),r&&F.push(H[v]<=0,H[_]<=0),F.every(function(De){return De})){C=X,U=!1;break}P.set(X,F)}if(U)for(var B=g?3:1,K=function(te){var re=j.find(function(rt){var $e=P.get(rt);if($e)return $e.slice(0,te).every(function(lt){return lt})});if(re)return C=re,"break"},oe=B;oe>0;oe--){var de=K(oe);if(de==="break")break}e.placement!==C&&(e.modifiersData[n]._skip=!0,e.placement=C,e.reset=!0)}}const xj={name:"flip",enabled:!0,phase:"main",fn:Cj,requiresIfExists:["offset"],data:{_skip:!1}};function dm(o,e,t){return t===void 0&&(t={x:0,y:0}),{top:o.top-e.height-t.y,right:o.right-e.width+t.x,bottom:o.bottom-e.height+t.y,left:o.left-e.width-t.x}}function um(o){return[We,nt,ot,Ue].some(function(e){return o[e]>=0})}function Sj(o){var e=o.state,t=o.name,n=e.rects.reference,a=e.rects.popper,s=e.modifiersData.preventOverflow,i=zn(e,{elementContext:"reference"}),r=zn(e,{altBoundary:!0}),l=dm(i,n),p=dm(r,a,s),c=um(l),m=um(p);e.modifiersData[t]={referenceClippingOffsets:l,popperEscapeOffsets:p,isReferenceHidden:c,hasPopperEscaped:m},e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-reference-hidden":c,"data-popper-escaped":m})}const Mj={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:Sj};function Fj(o,e,t){var n=Dt(o),a=[Ue,We].indexOf(n)>=0?-1:1,s=typeof t=="function"?t(Object.assign({},e,{placement:o})):t,i=s[0],r=s[1];return i=i||0,r=(r||0)*a,[Ue,nt].indexOf(n)>=0?{x:r,y:i}:{x:i,y:r}}function Oj(o){var e=o.state,t=o.options,n=o.name,a=t.offset,s=a===void 0?[0,0]:a,i=Qc.reduce(function(c,m){return c[m]=Fj(m,e.rects,s),c},{}),r=i[e.placement],l=r.x,p=r.y;e.modifiersData.popperOffsets!=null&&(e.modifiersData.popperOffsets.x+=l,e.modifiersData.popperOffsets.y+=p),e.modifiersData[n]=i}const Aj={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:Oj};function Tj(o){var e=o.state,t=o.name;e.modifiersData[t]=mm({reference:e.rects.reference,element:e.rects.popper,placement:e.placement})}const Nj={name:"popperOffsets",enabled:!0,phase:"read",fn:Tj,data:{}};function Bj(o){return o==="x"?"y":"x"}function Rj(o){var e=o.state,t=o.options,n=o.name,a=t.mainAxis,s=a===void 0?!0:a,i=t.altAxis,r=i===void 0?!1:i,l=t.boundary,p=t.rootBoundary,c=t.altBoundary,m=t.padding,d=t.tether,u=d===void 0?!0:d,g=t.tetherOffset,h=g===void 0?0:g,b=zn(e,{boundary:l,rootBoundary:p,padding:m,altBoundary:c}),k=Dt(e.placement),I=tn(e.placement),S=!I,j=Zi(k),T=Bj(j),D=e.modifiersData.popperOffsets,P=e.rects.reference,U=e.rects.popper,C=typeof h=="function"?h(Object.assign({},e.rects,{placement:e.placement})):h,q=typeof C=="number"?{mainAxis:C,altAxis:C}:Object.assign({mainAxis:0,altAxis:0},C),X=e.modifiersData.offset?e.modifiersData.offset[e.placement]:null,ae={x:0,y:0};if(D){if(s){var ne,ce=j==="y"?We:Ue,L=j==="y"?ot:nt,H=j==="y"?"height":"width",v=D[j],_=v+b[ce],F=v-b[L],B=u?-U[H]/2:0,K=I===Zo?P[H]:U[H],oe=I===Zo?-U[H]:-P[H],de=e.elements.arrow,De=u&&de?Xi(de):{width:0,height:0},te=e.modifiersData["arrow#persistent"]?e.modifiersData["arrow#persistent"].padding:am(),re=te[ce],rt=te[L],$e=Ln(0,P[H],De[H]),lt=S?P[H]/2-B-$e-re-q.mainAxis:K-$e-re-q.mainAxis,pt=S?-P[H]/2+B+$e+rt+q.mainAxis:oe+$e+rt+q.mainAxis,Mt=e.elements.arrow&&Rn(e.elements.arrow),uo=Mt?j==="y"?Mt.clientTop||0:Mt.clientLeft||0:0,Ht=(ne=X==null?void 0:X[j])!=null?ne:0,Ge=v+lt-Ht-uo,Ft=v+pt-Ht,me=Ln(u?Pa(_,Ge):_,v,u?xo(F,Ft):F);D[j]=me,ae[j]=me-v}if(r){var Vt,ct=j==="x"?We:Ue,M=j==="x"?ot:nt,He=D[T],Y=T==="y"?"height":"width",V=He+b[ct],Oe=He-b[M],je=[We,Ue].indexOf(k)!==-1,mt=(Vt=X==null?void 0:X[T])!=null?Vt:0,dt=je?V:He-P[Y]-U[Y]-mt+q.altAxis,y=je?He+P[Y]+U[Y]-mt-q.altAxis:Oe,E=u&&je?rj(dt,He,y):Ln(u?dt:V,He,u?y:Oe);D[T]=E,ae[T]=E-He}e.modifiersData[n]=ae}}const Lj={name:"preventOverflow",enabled:!0,phase:"main",fn:Rj,requiresIfExists:["offset"]};function Pj(o){return{scrollLeft:o.scrollLeft,scrollTop:o.scrollTop}}function zj(o){return o===Ye(o)||!at(o)?Qi(o):Pj(o)}function $j(o){var e=o.getBoundingClientRect(),t=Qo(e.width)/o.offsetWidth||1,n=Qo(e.height)/o.offsetHeight||1;return t!==1||n!==1}function Hj(o,e,t){t===void 0&&(t=!1);var n=at(e),a=at(e)&&$j(e),s=so(e),i=en(o,a,t),r={scrollLeft:0,scrollTop:0},l={x:0,y:0};return(n||!n&&!t)&&((_t(e)!=="body"||tr(s))&&(r=zj(e)),at(e)?(l=en(e,!0),l.x+=e.clientLeft,l.y+=e.clientTop):s&&(l.x=er(s))),{x:i.left+r.scrollLeft-l.x,y:i.top+r.scrollTop-l.y,width:i.width,height:i.height}}function Vj(o){var e=new Map,t=new Set,n=[];o.forEach(function(s){e.set(s.name,s)});function a(s){t.add(s.name);var i=[].concat(s.requires||[],s.requiresIfExists||[]);i.forEach(function(r){if(!t.has(r)){var l=e.get(r);l&&a(l)}}),n.push(s)}return o.forEach(function(s){t.has(s.name)||a(s)}),n}function qj(o){var e=Vj(o);return oj.reduce(function(t,n){return t.concat(e.filter(function(a){return a.phase===n}))},[])}function Wj(o){var e;return function(){return e||(e=new Promise(function(t){Promise.resolve().then(function(){e=void 0,t(o())})})),e}}function Uj(o){var e=o.reduce(function(t,n){var a=t[n.name];return t[n.name]=a?Object.assign({},a,n,{options:Object.assign({},a.options,n.options),data:Object.assign({},a.data,n.data)}):n,t},{});return Object.keys(e).map(function(t){return e[t]})}var gm={placement:"bottom",modifiers:[],strategy:"absolute"};function fm(){for(var o=arguments.length,e=new Array(o),t=0;t<o;t++)e[t]=arguments[t];return!e.some(function(n){return!(n&&typeof n.getBoundingClientRect=="function")})}function Kj(o){o===void 0&&(o={});var e=o,t=e.defaultModifiers,n=t===void 0?[]:t,a=e.defaultOptions,s=a===void 0?gm:a;return function(r,l,p){p===void 0&&(p=s);var c={placement:"bottom",orderedModifiers:[],options:Object.assign({},gm,s),modifiersData:{},elements:{reference:r,popper:l},attributes:{},styles:{}},m=[],d=!1,u={state:c,setOptions:function(k){var I=typeof k=="function"?k(c.options):k;h(),c.options=Object.assign({},s,c.options,I),c.scrollParents={reference:Co(r)?Pn(r):r.contextElement?Pn(r.contextElement):[],popper:Pn(l)};var S=qj(Uj([].concat(n,c.options.modifiers)));return c.orderedModifiers=S.filter(function(j){return j.enabled}),g(),u.update()},forceUpdate:function(){if(!d){var k=c.elements,I=k.reference,S=k.popper;if(fm(I,S)){c.rects={reference:Hj(I,Rn(S),c.options.strategy==="fixed"),popper:Xi(S)},c.reset=!1,c.placement=c.options.placement,c.orderedModifiers.forEach(function(q){return c.modifiersData[q.name]=Object.assign({},q.data)});for(var j=0;j<c.orderedModifiers.length;j++){if(c.reset===!0){c.reset=!1,j=-1;continue}var T=c.orderedModifiers[j],D=T.fn,P=T.options,U=P===void 0?{}:P,C=T.name;typeof D=="function"&&(c=D({state:c,options:U,name:C,instance:u})||c)}}}},update:Wj(function(){return new Promise(function(b){u.forceUpdate(),b(c)})}),destroy:function(){h(),d=!0}};if(!fm(r,l))return u;u.setOptions(p).then(function(b){!d&&p.onFirstUpdate&&p.onFirstUpdate(b)});function g(){c.orderedModifiers.forEach(function(b){var k=b.name,I=b.options,S=I===void 0?{}:I,j=b.effect;if(typeof j=="function"){var T=j({state:c,name:k,instance:u,options:S}),D=function(){};m.push(T||D)}})}function h(){m.forEach(function(b){return b()}),m=[]}return u}}var Gj=[bj,Nj,fj,em,Aj,xj,Lj,mj,Mj],Jj=Kj({defaultModifiers:Gj}),Yj="tippy-box",hm="tippy-content",Xj="tippy-backdrop",bm="tippy-arrow",jm="tippy-svg-arrow",So={passive:!0,capture:!0},vm=function(){return document.body};function Zj(o,e){return{}.hasOwnProperty.call(o,e)}function nr(o,e,t){if(Array.isArray(o)){var n=o[e];return n??(Array.isArray(t)?t[e]:t)}return o}function ar(o,e){var t={}.toString.call(o);return t.indexOf("[object")===0&&t.indexOf(e+"]")>-1}function km(o,e){return typeof o=="function"?o.apply(void 0,e):o}function ym(o,e){if(e===0)return o;var t;return function(n){clearTimeout(t),t=setTimeout(function(){o(n)},e)}}function Qj(o,e){var t=Object.assign({},o);return e.forEach(function(n){delete t[n]}),t}function ev(o){return o.split(/\s+/).filter(Boolean)}function on(o){return[].concat(o)}function _m(o,e){o.indexOf(e)===-1&&o.push(e)}function tv(o){return o.filter(function(e,t){return o.indexOf(e)===t})}function ov(o){return o.split("-")[0]}function Va(o){return[].slice.call(o)}function Dm(o){return Object.keys(o).reduce(function(e,t){return o[t]!==void 0&&(e[t]=o[t]),e},{})}function $n(){return document.createElement("div")}function Hn(o){return["Element","Fragment"].some(function(e){return ar(o,e)})}function nv(o){return ar(o,"NodeList")}function av(o){return ar(o,"MouseEvent")}function sv(o){return!!(o&&o._tippy&&o._tippy.reference===o)}function iv(o){return Hn(o)?[o]:nv(o)?Va(o):Array.isArray(o)?o:Va(document.querySelectorAll(o))}function sr(o,e){o.forEach(function(t){t&&(t.style.transitionDuration=e+"ms")})}function wm(o,e){o.forEach(function(t){t&&t.setAttribute("data-state",e)})}function rv(o){var e,t=on(o),n=t[0];return n!=null&&(e=n.ownerDocument)!=null&&e.body?n.ownerDocument:document}function lv(o,e){var t=e.clientX,n=e.clientY;return o.every(function(a){var s=a.popperRect,i=a.popperState,r=a.props,l=r.interactiveBorder,p=ov(i.placement),c=i.modifiersData.offset;if(!c)return!0;var m=p==="bottom"?c.top.y:0,d=p==="top"?c.bottom.y:0,u=p==="right"?c.left.x:0,g=p==="left"?c.right.x:0,h=s.top-n+m>l,b=n-s.bottom-d>l,k=s.left-t+u>l,I=t-s.right-g>l;return h||b||k||I})}function ir(o,e,t){var n=e+"EventListener";["transitionend","webkitTransitionEnd"].forEach(function(a){o[n](a,t)})}function Im(o,e){for(var t=e;t;){var n;if(o.contains(t))return!0;t=t.getRootNode==null||(n=t.getRootNode())==null?void 0:n.host}return!1}var wt={isTouch:!1},Em=0;function pv(){wt.isTouch||(wt.isTouch=!0,window.performance&&document.addEventListener("mousemove",Cm))}function Cm(){var o=performance.now();o-Em<20&&(wt.isTouch=!1,document.removeEventListener("mousemove",Cm)),Em=o}function cv(){var o=document.activeElement;if(sv(o)){var e=o._tippy;o.blur&&!e.state.isVisible&&o.blur()}}function mv(){document.addEventListener("touchstart",pv,So),window.addEventListener("blur",cv)}var dv=typeof window<"u"&&typeof document<"u",uv=dv?!!window.msCrypto:!1;function nn(o){var e=o==="destroy"?"n already-":" ";return[o+"() was called on a"+e+"destroyed instance. This is a no-op but","indicates a potential memory leak."].join(" ")}function xm(o){var e=/[ \t]{2,}/g,t=/^[ \t]*/gm;return o.replace(e," ").replace(t,"").trim()}function gv(o){return xm(`
|
|
90
|
-
%ctippy.js
|
|
91
|
-
|
|
92
|
-
%c`+xm(o)+`
|
|
93
|
-
|
|
94
|
-
%c👷 This is a development-only message. It will be removed in production.
|
|
95
|
-
`)}function Sm(o){return[gv(o),"color: #00C584; font-size: 1.3em; font-weight: bold;","line-height: 1.5","color: #a6a095;"]}var Vn;process.env.NODE_ENV!=="production"&&fv();function fv(){Vn=new Set}function Lt(o,e){if(o&&!Vn.has(e)){var t;Vn.add(e),(t=console).warn.apply(t,Sm(e))}}function rr(o,e){if(o&&!Vn.has(e)){var t;Vn.add(e),(t=console).error.apply(t,Sm(e))}}function hv(o){var e=!o,t=Object.prototype.toString.call(o)==="[object Object]"&&!o.addEventListener;rr(e,["tippy() was passed","`"+String(o)+"`","as its targets (first) argument. Valid types are: String, Element,","Element[], or NodeList."].join(" ")),rr(t,["tippy() was passed a plain object which is not supported as an argument","for virtual positioning. Use props.getReferenceClientRect instead."].join(" "))}var Mm={animateFill:!1,followCursor:!1,inlinePositioning:!1,sticky:!1},bv={allowHTML:!1,animation:"fade",arrow:!0,content:"",inertia:!1,maxWidth:350,role:"tooltip",theme:"",zIndex:9999},Xe=Object.assign({appendTo:vm,aria:{content:"auto",expanded:"auto"},delay:0,duration:[300,250],getReferenceClientRect:null,hideOnClick:!0,ignoreAttributes:!1,interactive:!1,interactiveBorder:2,interactiveDebounce:0,moveTransition:"",offset:[0,10],onAfterUpdate:function(){},onBeforeUpdate:function(){},onCreate:function(){},onDestroy:function(){},onHidden:function(){},onHide:function(){},onMount:function(){},onShow:function(){},onShown:function(){},onTrigger:function(){},onUntrigger:function(){},onClickOutside:function(){},placement:"top",plugins:[],popperOptions:{},render:null,showOnCreate:!1,touch:!0,trigger:"mouseenter focus",triggerTarget:null},Mm,bv),jv=Object.keys(Xe),vv=function(e){process.env.NODE_ENV!=="production"&&Am(e,[]);var t=Object.keys(e);t.forEach(function(n){Xe[n]=e[n]})};function Fm(o){var e=o.plugins||[],t=e.reduce(function(n,a){var s=a.name,i=a.defaultValue;if(s){var r;n[s]=o[s]!==void 0?o[s]:(r=Xe[s])!=null?r:i}return n},{});return Object.assign({},o,t)}function kv(o,e){var t=e?Object.keys(Fm(Object.assign({},Xe,{plugins:e}))):jv,n=t.reduce(function(a,s){var i=(o.getAttribute("data-tippy-"+s)||"").trim();if(!i)return a;if(s==="content")a[s]=i;else try{a[s]=JSON.parse(i)}catch{a[s]=i}return a},{});return n}function Om(o,e){var t=Object.assign({},e,{content:km(e.content,[o])},e.ignoreAttributes?{}:kv(o,e.plugins));return t.aria=Object.assign({},Xe.aria,t.aria),t.aria={expanded:t.aria.expanded==="auto"?e.interactive:t.aria.expanded,content:t.aria.content==="auto"?e.interactive?null:"describedby":t.aria.content},t}function Am(o,e){o===void 0&&(o={}),e===void 0&&(e=[]);var t=Object.keys(o);t.forEach(function(n){var a=Qj(Xe,Object.keys(Mm)),s=!Zj(a,n);s&&(s=e.filter(function(i){return i.name===n}).length===0),Lt(s,["`"+n+"`","is not a valid prop. You may have spelled it incorrectly, or if it's","a plugin, forgot to pass it in an array as props.plugins.",`
|
|
96
|
-
|
|
97
|
-
`,`All props: https://atomiks.github.io/tippyjs/v6/all-props/
|
|
98
|
-
`,"Plugins: https://atomiks.github.io/tippyjs/v6/plugins/"].join(" "))})}var yv=function(){return"innerHTML"};function lr(o,e){o[yv()]=e}function Tm(o){var e=$n();return o===!0?e.className=bm:(e.className=jm,Hn(o)?e.appendChild(o):lr(e,o)),e}function Nm(o,e){Hn(e.content)?(lr(o,""),o.appendChild(e.content)):typeof e.content!="function"&&(e.allowHTML?lr(o,e.content):o.textContent=e.content)}function pr(o){var e=o.firstElementChild,t=Va(e.children);return{box:e,content:t.find(function(n){return n.classList.contains(hm)}),arrow:t.find(function(n){return n.classList.contains(bm)||n.classList.contains(jm)}),backdrop:t.find(function(n){return n.classList.contains(Xj)})}}function Bm(o){var e=$n(),t=$n();t.className=Yj,t.setAttribute("data-state","hidden"),t.setAttribute("tabindex","-1");var n=$n();n.className=hm,n.setAttribute("data-state","hidden"),Nm(n,o.props),e.appendChild(t),t.appendChild(n),a(o.props,o.props);function a(s,i){var r=pr(e),l=r.box,p=r.content,c=r.arrow;i.theme?l.setAttribute("data-theme",i.theme):l.removeAttribute("data-theme"),typeof i.animation=="string"?l.setAttribute("data-animation",i.animation):l.removeAttribute("data-animation"),i.inertia?l.setAttribute("data-inertia",""):l.removeAttribute("data-inertia"),l.style.maxWidth=typeof i.maxWidth=="number"?i.maxWidth+"px":i.maxWidth,i.role?l.setAttribute("role",i.role):l.removeAttribute("role"),(s.content!==i.content||s.allowHTML!==i.allowHTML)&&Nm(p,o.props),i.arrow?c?s.arrow!==i.arrow&&(l.removeChild(c),l.appendChild(Tm(i.arrow))):l.appendChild(Tm(i.arrow)):c&&l.removeChild(c)}return{popper:e,onUpdate:a}}Bm.$$tippy=!0;var _v=1,qa=[],cr=[];function Dv(o,e){var t=Om(o,Object.assign({},Xe,Fm(Dm(e)))),n,a,s,i=!1,r=!1,l=!1,p=!1,c,m,d,u=[],g=ym(Ge,t.interactiveDebounce),h,b=_v++,k=null,I=tv(t.plugins),S={isEnabled:!0,isVisible:!1,isDestroyed:!1,isMounted:!1,isShown:!1},j={id:b,reference:o,popper:$n(),popperInstance:k,props:t,state:S,plugins:I,clearDelayTimeouts:dt,setProps:y,setContent:E,show:A,hide:z,hideWithInteractivity:se,enable:je,disable:mt,unmount:ve,destroy:ea};if(!t.render)return process.env.NODE_ENV!=="production"&&rr(!0,"render() function has not been supplied."),j;var T=t.render(j),D=T.popper,P=T.onUpdate;D.setAttribute("data-tippy-root",""),D.id="tippy-"+j.id,j.popper=D,o._tippy=j,D._tippy=j;var U=I.map(function(w){return w.fn(j)}),C=o.hasAttribute("aria-expanded");return Mt(),B(),v(),_("onCreate",[j]),t.showOnCreate&&V(),D.addEventListener("mouseenter",function(){j.props.interactive&&j.state.isVisible&&j.clearDelayTimeouts()}),D.addEventListener("mouseleave",function(){j.props.interactive&&j.props.trigger.indexOf("mouseenter")>=0&&ce().addEventListener("mousemove",g)}),j;function q(){var w=j.props.touch;return Array.isArray(w)?w:[w,0]}function X(){return q()[0]==="hold"}function ae(){var w;return!!((w=j.props.render)!=null&&w.$$tippy)}function ne(){return h||o}function ce(){var w=ne().parentNode;return w?rv(w):document}function L(){return pr(D)}function H(w){return j.state.isMounted&&!j.state.isVisible||wt.isTouch||c&&c.type==="focus"?0:nr(j.props.delay,w?0:1,Xe.delay)}function v(w){w===void 0&&(w=!1),D.style.pointerEvents=j.props.interactive&&!w?"":"none",D.style.zIndex=""+j.props.zIndex}function _(w,$,G){if(G===void 0&&(G=!0),U.forEach(function(ie){ie[w]&&ie[w].apply(ie,$)}),G){var le;(le=j.props)[w].apply(le,$)}}function F(){var w=j.props.aria;if(w.content){var $="aria-"+w.content,G=D.id,le=on(j.props.triggerTarget||o);le.forEach(function(ie){var Ve=ie.getAttribute($);if(j.state.isVisible)ie.setAttribute($,Ve?Ve+" "+G:G);else{var ut=Ve&&Ve.replace(G,"").trim();ut?ie.setAttribute($,ut):ie.removeAttribute($)}})}}function B(){if(!(C||!j.props.aria.expanded)){var w=on(j.props.triggerTarget||o);w.forEach(function($){j.props.interactive?$.setAttribute("aria-expanded",j.state.isVisible&&$===ne()?"true":"false"):$.removeAttribute("aria-expanded")})}}function K(){ce().removeEventListener("mousemove",g),qa=qa.filter(function(w){return w!==g})}function oe(w){if(!(wt.isTouch&&(l||w.type==="mousedown"))){var $=w.composedPath&&w.composedPath()[0]||w.target;if(!(j.props.interactive&&Im(D,$))){if(on(j.props.triggerTarget||o).some(function(G){return Im(G,$)})){if(wt.isTouch||j.state.isVisible&&j.props.trigger.indexOf("click")>=0)return}else _("onClickOutside",[j,w]);j.props.hideOnClick===!0&&(j.clearDelayTimeouts(),j.hide(),r=!0,setTimeout(function(){r=!1}),j.state.isMounted||re())}}}function de(){l=!0}function De(){l=!1}function te(){var w=ce();w.addEventListener("mousedown",oe,!0),w.addEventListener("touchend",oe,So),w.addEventListener("touchstart",De,So),w.addEventListener("touchmove",de,So)}function re(){var w=ce();w.removeEventListener("mousedown",oe,!0),w.removeEventListener("touchend",oe,So),w.removeEventListener("touchstart",De,So),w.removeEventListener("touchmove",de,So)}function rt(w,$){lt(w,function(){!j.state.isVisible&&D.parentNode&&D.parentNode.contains(D)&&$()})}function $e(w,$){lt(w,$)}function lt(w,$){var G=L().box;function le(ie){ie.target===G&&(ir(G,"remove",le),$())}if(w===0)return $();ir(G,"remove",m),ir(G,"add",le),m=le}function pt(w,$,G){G===void 0&&(G=!1);var le=on(j.props.triggerTarget||o);le.forEach(function(ie){ie.addEventListener(w,$,G),u.push({node:ie,eventType:w,handler:$,options:G})})}function Mt(){X()&&(pt("touchstart",Ht,{passive:!0}),pt("touchend",Ft,{passive:!0})),ev(j.props.trigger).forEach(function(w){if(w!=="manual")switch(pt(w,Ht),w){case"mouseenter":pt("mouseleave",Ft);break;case"focus":pt(uv?"focusout":"blur",me);break;case"focusin":pt("focusout",me);break}})}function uo(){u.forEach(function(w){var $=w.node,G=w.eventType,le=w.handler,ie=w.options;$.removeEventListener(G,le,ie)}),u=[]}function Ht(w){var $,G=!1;if(!(!j.state.isEnabled||Vt(w)||r)){var le=(($=c)==null?void 0:$.type)==="focus";c=w,h=w.currentTarget,B(),!j.state.isVisible&&av(w)&&qa.forEach(function(ie){return ie(w)}),w.type==="click"&&(j.props.trigger.indexOf("mouseenter")<0||i)&&j.props.hideOnClick!==!1&&j.state.isVisible?G=!0:V(w),w.type==="click"&&(i=!G),G&&!le&&Oe(w)}}function Ge(w){var $=w.target,G=ne().contains($)||D.contains($);if(!(w.type==="mousemove"&&G)){var le=Y().concat(D).map(function(ie){var Ve,ut=ie._tippy,un=(Ve=ut.popperInstance)==null?void 0:Ve.state;return un?{popperRect:ie.getBoundingClientRect(),popperState:un,props:t}:null}).filter(Boolean);lv(le,w)&&(K(),Oe(w))}}function Ft(w){var $=Vt(w)||j.props.trigger.indexOf("click")>=0&&i;if(!$){if(j.props.interactive){j.hideWithInteractivity(w);return}Oe(w)}}function me(w){j.props.trigger.indexOf("focusin")<0&&w.target!==ne()||j.props.interactive&&w.relatedTarget&&D.contains(w.relatedTarget)||Oe(w)}function Vt(w){return wt.isTouch?X()!==w.type.indexOf("touch")>=0:!1}function ct(){M();var w=j.props,$=w.popperOptions,G=w.placement,le=w.offset,ie=w.getReferenceClientRect,Ve=w.moveTransition,ut=ae()?pr(D).arrow:null,un=ie?{getBoundingClientRect:ie,contextElement:ie.contextElement||ne()}:o,lu={name:"$$tippy",enabled:!0,phase:"beforeWrite",requires:["computeStyles"],fn:function(zs){var gn=zs.state;if(ae()){var O_=L(),tl=O_.box;["placement","reference-hidden","escaped"].forEach(function($s){$s==="placement"?tl.setAttribute("data-placement",gn.placement):gn.attributes.popper["data-popper-"+$s]?tl.setAttribute("data-"+$s,""):tl.removeAttribute("data-"+$s)}),gn.attributes.popper={}}}},Bo=[{name:"offset",options:{offset:le}},{name:"preventOverflow",options:{padding:{top:2,bottom:2,left:5,right:5}}},{name:"flip",options:{padding:5}},{name:"computeStyles",options:{adaptive:!Ve}},lu];ae()&&ut&&Bo.push({name:"arrow",options:{element:ut,padding:3}}),Bo.push.apply(Bo,($==null?void 0:$.modifiers)||[]),j.popperInstance=Jj(un,D,Object.assign({},$,{placement:G,onFirstUpdate:d,modifiers:Bo}))}function M(){j.popperInstance&&(j.popperInstance.destroy(),j.popperInstance=null)}function He(){var w=j.props.appendTo,$,G=ne();j.props.interactive&&w===vm||w==="parent"?$=G.parentNode:$=km(w,[G]),$.contains(D)||$.appendChild(D),j.state.isMounted=!0,ct(),process.env.NODE_ENV!=="production"&&Lt(j.props.interactive&&w===Xe.appendTo&&G.nextElementSibling!==D,["Interactive tippy element may not be accessible via keyboard","navigation because it is not directly after the reference element","in the DOM source order.",`
|
|
99
|
-
|
|
100
|
-
`,"Using a wrapper <div> or <span> tag around the reference element","solves this by creating a new parentNode context.",`
|
|
101
|
-
|
|
102
|
-
`,"Specifying `appendTo: document.body` silences this warning, but it","assumes you are using a focus management solution to handle","keyboard navigation.",`
|
|
103
|
-
|
|
104
|
-
`,"See: https://atomiks.github.io/tippyjs/v6/accessibility/#interactivity"].join(" "))}function Y(){return Va(D.querySelectorAll("[data-tippy-root]"))}function V(w){j.clearDelayTimeouts(),w&&_("onTrigger",[j,w]),te();var $=H(!0),G=q(),le=G[0],ie=G[1];wt.isTouch&&le==="hold"&&ie&&($=ie),$?n=setTimeout(function(){j.show()},$):j.show()}function Oe(w){if(j.clearDelayTimeouts(),_("onUntrigger",[j,w]),!j.state.isVisible){re();return}if(!(j.props.trigger.indexOf("mouseenter")>=0&&j.props.trigger.indexOf("click")>=0&&["mouseleave","mousemove"].indexOf(w.type)>=0&&i)){var $=H(!1);$?a=setTimeout(function(){j.state.isVisible&&j.hide()},$):s=requestAnimationFrame(function(){j.hide()})}}function je(){j.state.isEnabled=!0}function mt(){j.hide(),j.state.isEnabled=!1}function dt(){clearTimeout(n),clearTimeout(a),cancelAnimationFrame(s)}function y(w){if(process.env.NODE_ENV!=="production"&&Lt(j.state.isDestroyed,nn("setProps")),!j.state.isDestroyed){_("onBeforeUpdate",[j,w]),uo();var $=j.props,G=Om(o,Object.assign({},$,Dm(w),{ignoreAttributes:!0}));j.props=G,Mt(),$.interactiveDebounce!==G.interactiveDebounce&&(K(),g=ym(Ge,G.interactiveDebounce)),$.triggerTarget&&!G.triggerTarget?on($.triggerTarget).forEach(function(le){le.removeAttribute("aria-expanded")}):G.triggerTarget&&o.removeAttribute("aria-expanded"),B(),v(),P&&P($,G),j.popperInstance&&(ct(),Y().forEach(function(le){requestAnimationFrame(le._tippy.popperInstance.forceUpdate)})),_("onAfterUpdate",[j,w])}}function E(w){j.setProps({content:w})}function A(){process.env.NODE_ENV!=="production"&&Lt(j.state.isDestroyed,nn("show"));var w=j.state.isVisible,$=j.state.isDestroyed,G=!j.state.isEnabled,le=wt.isTouch&&!j.props.touch,ie=nr(j.props.duration,0,Xe.duration);if(!(w||$||G||le)&&!ne().hasAttribute("disabled")&&(_("onShow",[j],!1),j.props.onShow(j)!==!1)){if(j.state.isVisible=!0,ae()&&(D.style.visibility="visible"),v(),te(),j.state.isMounted||(D.style.transition="none"),ae()){var Ve=L(),ut=Ve.box,un=Ve.content;sr([ut,un],0)}d=function(){var Bo;if(!(!j.state.isVisible||p)){if(p=!0,D.offsetHeight,D.style.transition=j.props.moveTransition,ae()&&j.props.animation){var el=L(),zs=el.box,gn=el.content;sr([zs,gn],ie),wm([zs,gn],"visible")}F(),B(),_m(cr,j),(Bo=j.popperInstance)==null||Bo.forceUpdate(),_("onMount",[j]),j.props.animation&&ae()&&$e(ie,function(){j.state.isShown=!0,_("onShown",[j])})}},He()}}function z(){process.env.NODE_ENV!=="production"&&Lt(j.state.isDestroyed,nn("hide"));var w=!j.state.isVisible,$=j.state.isDestroyed,G=!j.state.isEnabled,le=nr(j.props.duration,1,Xe.duration);if(!(w||$||G)&&(_("onHide",[j],!1),j.props.onHide(j)!==!1)){if(j.state.isVisible=!1,j.state.isShown=!1,p=!1,i=!1,ae()&&(D.style.visibility="hidden"),K(),re(),v(!0),ae()){var ie=L(),Ve=ie.box,ut=ie.content;j.props.animation&&(sr([Ve,ut],le),wm([Ve,ut],"hidden"))}F(),B(),j.props.animation?ae()&&rt(le,j.unmount):j.unmount()}}function se(w){process.env.NODE_ENV!=="production"&&Lt(j.state.isDestroyed,nn("hideWithInteractivity")),ce().addEventListener("mousemove",g),_m(qa,g),g(w)}function ve(){process.env.NODE_ENV!=="production"&&Lt(j.state.isDestroyed,nn("unmount")),j.state.isVisible&&j.hide(),j.state.isMounted&&(M(),Y().forEach(function(w){w._tippy.unmount()}),D.parentNode&&D.parentNode.removeChild(D),cr=cr.filter(function(w){return w!==j}),j.state.isMounted=!1,_("onHidden",[j]))}function ea(){process.env.NODE_ENV!=="production"&&Lt(j.state.isDestroyed,nn("destroy")),!j.state.isDestroyed&&(j.clearDelayTimeouts(),j.unmount(),uo(),delete o._tippy,j.state.isDestroyed=!0,_("onDestroy",[j]))}}function Pt(o,e){e===void 0&&(e={});var t=Xe.plugins.concat(e.plugins||[]);process.env.NODE_ENV!=="production"&&(hv(o),Am(e,t)),mv();var n=Object.assign({},e,{plugins:t}),a=iv(o);if(process.env.NODE_ENV!=="production"){var s=Hn(n.content),i=a.length>1;Lt(s&&i,["tippy() was passed an Element as the `content` prop, but more than","one tippy instance was created by this invocation. This means the","content element will only be appended to the last tippy instance.",`
|
|
105
|
-
|
|
106
|
-
`,"Instead, pass the .innerHTML of the element, or use a function that","returns a cloned version of the element instead.",`
|
|
107
|
-
|
|
108
|
-
`,`1) content: element.innerHTML
|
|
109
|
-
`,"2) content: () => element.cloneNode(true)"].join(" "))}var r=a.reduce(function(l,p){var c=p&&Dv(p,n);return c&&l.push(c),l},[]);return Hn(o)?r[0]:r}Pt.defaultProps=Xe,Pt.setDefaultProps=vv,Pt.currentInput=wt,Object.assign({},em,{effect:function(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow)}}),Pt.setDefaultProps({render:Bm});class wv{constructor({editor:e,element:t,view:n,tippyOptions:a={},updateDelay:s=250,shouldShow:i}){this.preventHide=!1,this.shouldShow=({view:r,state:l,from:p,to:c})=>{const{doc:m,selection:d}=l,{empty:u}=d,g=!m.textBetween(p,c).length&&Ni(l.selection),h=this.element.contains(document.activeElement);return!(!(r.hasFocus()||h)||u||g||!this.editor.isEditable)},this.mousedownHandler=()=>{this.preventHide=!0},this.dragstartHandler=()=>{this.hide()},this.focusHandler=()=>{setTimeout(()=>this.update(this.editor.view))},this.blurHandler=({event:r})=>{var l;if(this.preventHide){this.preventHide=!1;return}r!=null&&r.relatedTarget&&(!((l=this.element.parentNode)===null||l===void 0)&&l.contains(r.relatedTarget))||this.hide()},this.tippyBlurHandler=r=>{this.blurHandler({event:r})},this.handleDebouncedUpdate=(r,l)=>{const p=!(l!=null&&l.selection.eq(r.state.selection)),c=!(l!=null&&l.doc.eq(r.state.doc));!p&&!c||(this.updateDebounceTimer&&clearTimeout(this.updateDebounceTimer),this.updateDebounceTimer=window.setTimeout(()=>{this.updateHandler(r,p,c,l)},this.updateDelay))},this.updateHandler=(r,l,p,c)=>{var m,d,u;const{state:g,composing:h}=r,{selection:b}=g;if(h||!l&&!p)return;this.createTooltip();const{ranges:I}=b,S=Math.min(...I.map(D=>D.$from.pos)),j=Math.max(...I.map(D=>D.$to.pos));if(!((m=this.shouldShow)===null||m===void 0?void 0:m.call(this,{editor:this.editor,view:r,state:g,oldState:c,from:S,to:j}))){this.hide();return}(d=this.tippy)===null||d===void 0||d.setProps({getReferenceClientRect:((u=this.tippyOptions)===null||u===void 0?void 0:u.getReferenceClientRect)||(()=>{if(Kc(g.selection)){let D=r.nodeDOM(S);const P=D.dataset.nodeViewWrapper?D:D.querySelector("[data-node-view-wrapper]");if(P&&(D=P.firstChild),D)return D.getBoundingClientRect()}return Gc(r,S,j)})}),this.show()},this.editor=e,this.element=t,this.view=n,this.updateDelay=s,i&&(this.shouldShow=i),this.element.addEventListener("mousedown",this.mousedownHandler,{capture:!0}),this.view.dom.addEventListener("dragstart",this.dragstartHandler),this.editor.on("focus",this.focusHandler),this.editor.on("blur",this.blurHandler),this.tippyOptions=a,this.element.remove(),this.element.style.visibility="visible"}createTooltip(){const{element:e}=this.editor.options,t=!!e.parentElement;this.tippy||!t||(this.tippy=Pt(e,{duration:0,getReferenceClientRect:null,content:this.element,interactive:!0,trigger:"manual",placement:"top",hideOnClick:"toggle",...this.tippyOptions}),this.tippy.popper.firstChild&&this.tippy.popper.firstChild.addEventListener("blur",this.tippyBlurHandler))}update(e,t){const{state:n}=e,a=n.selection.from!==n.selection.to;if(this.updateDelay>0&&a){this.handleDebouncedUpdate(e,t);return}const s=!(t!=null&&t.selection.eq(e.state.selection)),i=!(t!=null&&t.doc.eq(e.state.doc));this.updateHandler(e,s,i,t)}show(){var e;(e=this.tippy)===null||e===void 0||e.show()}hide(){var e;(e=this.tippy)===null||e===void 0||e.hide()}destroy(){var e,t;!((e=this.tippy)===null||e===void 0)&&e.popper.firstChild&&this.tippy.popper.firstChild.removeEventListener("blur",this.tippyBlurHandler),(t=this.tippy)===null||t===void 0||t.destroy(),this.element.removeEventListener("mousedown",this.mousedownHandler,{capture:!0}),this.view.dom.removeEventListener("dragstart",this.dragstartHandler),this.editor.off("focus",this.focusHandler),this.editor.off("blur",this.blurHandler)}}const Rm=o=>new ue({key:typeof o.pluginKey=="string"?new ye(o.pluginKey):o.pluginKey,view:e=>new wv({view:e,...o})});Ce.create({name:"bubbleMenu",addOptions(){return{element:null,tippyOptions:{},pluginKey:"bubbleMenu",updateDelay:void 0,shouldShow:null}},addProseMirrorPlugins(){return this.options.element?[Rm({pluginKey:this.options.pluginKey,editor:this.editor,element:this.options.element,tippyOptions:this.options.tippyOptions,updateDelay:this.options.updateDelay,shouldShow:this.options.shouldShow})]:[]}});class Iv{constructor({editor:e,element:t,view:n,tippyOptions:a={},shouldShow:s}){this.preventHide=!1,this.shouldShow=({view:i,state:r})=>{const{selection:l}=r,{$anchor:p,empty:c}=l,m=p.depth===1,d=p.parent.isTextblock&&!p.parent.type.spec.code&&!p.parent.textContent;return!(!i.hasFocus()||!c||!m||!d||!this.editor.isEditable)},this.mousedownHandler=()=>{this.preventHide=!0},this.focusHandler=()=>{setTimeout(()=>this.update(this.editor.view))},this.blurHandler=({event:i})=>{var r;if(this.preventHide){this.preventHide=!1;return}i!=null&&i.relatedTarget&&(!((r=this.element.parentNode)===null||r===void 0)&&r.contains(i.relatedTarget))||this.hide()},this.tippyBlurHandler=i=>{this.blurHandler({event:i})},this.editor=e,this.element=t,this.view=n,s&&(this.shouldShow=s),this.element.addEventListener("mousedown",this.mousedownHandler,{capture:!0}),this.editor.on("focus",this.focusHandler),this.editor.on("blur",this.blurHandler),this.tippyOptions=a,this.element.remove(),this.element.style.visibility="visible"}createTooltip(){const{element:e}=this.editor.options,t=!!e.parentElement;this.tippy||!t||(this.tippy=Pt(e,{duration:0,getReferenceClientRect:null,content:this.element,interactive:!0,trigger:"manual",placement:"right",hideOnClick:"toggle",...this.tippyOptions}),this.tippy.popper.firstChild&&this.tippy.popper.firstChild.addEventListener("blur",this.tippyBlurHandler))}update(e,t){var n,a,s;const{state:i}=e,{doc:r,selection:l}=i,{from:p,to:c}=l;if(t&&t.doc.eq(r)&&t.selection.eq(l))return;if(this.createTooltip(),!((n=this.shouldShow)===null||n===void 0?void 0:n.call(this,{editor:this.editor,view:e,state:i,oldState:t}))){this.hide();return}(a=this.tippy)===null||a===void 0||a.setProps({getReferenceClientRect:((s=this.tippyOptions)===null||s===void 0?void 0:s.getReferenceClientRect)||(()=>Gc(e,p,c))}),this.show()}show(){var e;(e=this.tippy)===null||e===void 0||e.show()}hide(){var e;(e=this.tippy)===null||e===void 0||e.hide()}destroy(){var e,t;!((e=this.tippy)===null||e===void 0)&&e.popper.firstChild&&this.tippy.popper.firstChild.removeEventListener("blur",this.tippyBlurHandler),(t=this.tippy)===null||t===void 0||t.destroy(),this.element.removeEventListener("mousedown",this.mousedownHandler,{capture:!0}),this.editor.off("focus",this.focusHandler),this.editor.off("blur",this.blurHandler)}}const Lm=o=>new ue({key:typeof o.pluginKey=="string"?new ye(o.pluginKey):o.pluginKey,view:e=>new Iv({view:e,...o})});Ce.create({name:"floatingMenu",addOptions(){return{element:null,tippyOptions:{},pluginKey:"floatingMenu",shouldShow:null}},addProseMirrorPlugins(){return this.options.element?[Lm({pluginKey:this.options.pluginKey,editor:this.editor,element:this.options.element,tippyOptions:this.options.tippyOptions,shouldShow:this.options.shouldShow})]:[]}}),f.defineComponent({name:"BubbleMenu",props:{pluginKey:{type:[String,Object],default:"bubbleMenu"},editor:{type:Object,required:!0},updateDelay:{type:Number,default:void 0},tippyOptions:{type:Object,default:()=>({})},shouldShow:{type:Function,default:null}},setup(o,{slots:e}){const t=f.ref(null);return f.onMounted(()=>{const{updateDelay:n,editor:a,pluginKey:s,shouldShow:i,tippyOptions:r}=o;a.registerPlugin(Rm({updateDelay:n,editor:a,element:t.value,pluginKey:s,shouldShow:i,tippyOptions:r}))}),f.onBeforeUnmount(()=>{const{pluginKey:n,editor:a}=o;a.unregisterPlugin(n)}),()=>{var n;return f.h("div",{ref:t},(n=e.default)===null||n===void 0?void 0:n.call(e))}}});function Pm(o){return f.customRef((e,t)=>({get(){return e(),o},set(n){o=n,requestAnimationFrame(()=>{requestAnimationFrame(()=>{t()})})}}))}class Ev extends qb{constructor(e={}){return super(e),this.contentComponent=null,this.appContext=null,this.reactiveState=Pm(this.view.state),this.reactiveExtensionStorage=Pm(this.extensionStorage),this.on("beforeTransaction",({nextState:t})=>{this.reactiveState.value=t,this.reactiveExtensionStorage.value=this.extensionStorage}),f.markRaw(this)}get state(){return this.reactiveState?this.reactiveState.value:this.view.state}get storage(){return this.reactiveExtensionStorage?this.reactiveExtensionStorage.value:super.storage}registerPlugin(e,t){const n=super.registerPlugin(e,t);return this.reactiveState&&(this.reactiveState.value=n),n}unregisterPlugin(e){const t=super.unregisterPlugin(e);return this.reactiveState&&t&&(this.reactiveState.value=t),t}}const Cv=f.defineComponent({name:"EditorContent",props:{editor:{default:null,type:Object}},setup(o){const e=f.ref(),t=f.getCurrentInstance();return f.watchEffect(()=>{const n=o.editor;n&&n.options.element&&e.value&&f.nextTick(()=>{if(!e.value||!n.options.element.firstChild)return;const a=f.unref(e.value);e.value.append(...n.options.element.childNodes),n.contentComponent=t.ctx._,t&&(n.appContext={...t.appContext,provides:t.provides}),n.setOptions({element:a}),n.createNodeViews()})}),f.onBeforeUnmount(()=>{const n=o.editor;if(!n||(n.isDestroyed||n.view.setProps({nodeViews:{}}),n.contentComponent=null,n.appContext=null,!n.options.element.firstChild))return;const a=document.createElement("div");a.append(...n.options.element.childNodes),n.setOptions({element:a})}),{rootEl:e}},render(){return f.h("div",{ref:o=>{this.rootEl=o}})}});f.defineComponent({name:"FloatingMenu",props:{pluginKey:{type:null,default:"floatingMenu"},editor:{type:Object,required:!0},tippyOptions:{type:Object,default:()=>({})},shouldShow:{type:Function,default:null}},setup(o,{slots:e}){const t=f.ref(null);return f.onMounted(()=>{const{pluginKey:n,editor:a,tippyOptions:s,shouldShow:i}=o;a.registerPlugin(Lm({pluginKey:n,editor:a,element:t.value,tippyOptions:s,shouldShow:i}))}),f.onBeforeUnmount(()=>{const{pluginKey:n,editor:a}=o;a.unregisterPlugin(n)}),()=>{var n;return f.h("div",{ref:t},(n=e.default)===null||n===void 0?void 0:n.call(e))}}}),f.defineComponent({name:"NodeViewContent",props:{as:{type:String,default:"div"}},render(){return f.h(this.as,{style:{whiteSpace:"pre-wrap"},"data-node-view-content":""})}}),f.defineComponent({name:"NodeViewWrapper",props:{as:{type:String,default:"div"}},inject:["onDragStart","decorationClasses"],render(){var o,e;return f.h(this.as,{class:this.decorationClasses,style:{whiteSpace:"normal"},"data-node-view-wrapper":"",onDragstart:this.onDragStart},(e=(o=this.$slots).default)===null||e===void 0?void 0:e.call(o))}});const xv=(o={})=>{const e=f.shallowRef();return f.onMounted(()=>{e.value=new Ev(o)}),f.onBeforeUnmount(()=>{var t;(t=e.value)===null||t===void 0||t.destroy()}),e};class Sv{constructor(e,{props:t={},editor:n}){this.editor=n,this.component=f.markRaw(e),this.el=document.createElement("div"),this.props=f.reactive(t),this.renderedComponent=this.renderComponent()}get element(){return this.renderedComponent.el}get ref(){var e,t,n,a;return!((t=(e=this.renderedComponent.vNode)===null||e===void 0?void 0:e.component)===null||t===void 0)&&t.exposed?this.renderedComponent.vNode.component.exposed:(a=(n=this.renderedComponent.vNode)===null||n===void 0?void 0:n.component)===null||a===void 0?void 0:a.proxy}renderComponent(){let e=f.h(this.component,this.props);return this.editor.appContext&&(e.appContext=this.editor.appContext),typeof document<"u"&&this.el&&f.render(e,this.el),{vNode:e,destroy:()=>{this.el&&f.render(null,this.el),this.el=null,e=null},el:this.el?this.el.firstElementChild:null}}updateProps(e={}){Object.entries(e).forEach(([t,n])=>{this.props[t]=n}),this.renderComponent()}destroy(){this.renderedComponent.destroy()}}const Mv={class:"sus-emoji-panel grid"},Fv=["onClick","src","alt","title"],Ov=f.defineComponent({__name:"index",props:{emojiList:{}},setup(o){return(e,t)=>(f.openBlock(),f.createElementBlock("div",Mv,[(f.openBlock(!0),f.createElementBlock(f.Fragment,null,f.renderList(e.emojiList,n=>(f.openBlock(),f.createElementBlock("div",null,[f.createElementVNode("img",{onClick:a=>e.$emit("onselect",n),class:"sus-emoji-item",src:n.fallbackImage,alt:n.name,title:`:${n.name}:`},null,8,Fv)]))),256))]))}}),an=(o,e)=>{const t=o.__vccOpts||o;for(const[n,a]of e)t[n]=a;return t},Av=an(Ov,[["__scopeId","data-v-d14b8129"]]),Tv=/^\s*>\s$/,Nv=Be.create({name:"blockquote",addOptions(){return{HTMLAttributes:{}}},content:"block+",group:"block",defining:!0,parseHTML(){return[{tag:"blockquote"}]},renderHTML({HTMLAttributes:o}){return["blockquote",_e(this.options.HTMLAttributes,o),0]},addCommands(){return{setBlockquote:()=>({commands:o})=>o.wrapIn(this.name),toggleBlockquote:()=>({commands:o})=>o.toggleWrap(this.name),unsetBlockquote:()=>({commands:o})=>o.lift(this.name)}},addKeyboardShortcuts(){return{"Mod-Shift-b":()=>this.editor.commands.toggleBlockquote()}},addInputRules(){return[An({find:Tv,type:this.type})]}}),Bv=/(?:^|\s)(\*\*(?!\s+\*\*)((?:[^*]+))\*\*(?!\s+\*\*))$/,Rv=/(?:^|\s)(\*\*(?!\s+\*\*)((?:[^*]+))\*\*(?!\s+\*\*))/g,Lv=/(?:^|\s)(__(?!\s+__)((?:[^_]+))__(?!\s+__))$/,Pv=/(?:^|\s)(__(?!\s+__)((?:[^_]+))__(?!\s+__))/g,zv=yt.create({name:"bold",addOptions(){return{HTMLAttributes:{}}},parseHTML(){return[{tag:"strong"},{tag:"b",getAttrs:o=>o.style.fontWeight!=="normal"&&null},{style:"font-weight",getAttrs:o=>/^(bold(er)?|[5-9]\d{2,})$/.test(o)&&null}]},renderHTML({HTMLAttributes:o}){return["strong",_e(this.options.HTMLAttributes,o),0]},addCommands(){return{setBold:()=>({commands:o})=>o.setMark(this.name),toggleBold:()=>({commands:o})=>o.toggleMark(this.name),unsetBold:()=>({commands:o})=>o.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-b":()=>this.editor.commands.toggleBold(),"Mod-B":()=>this.editor.commands.toggleBold()}},addInputRules(){return[Xo({find:Bv,type:this.type}),Xo({find:Lv,type:this.type})]},addPasteRules(){return[Eo({find:Rv,type:this.type}),Eo({find:Pv,type:this.type})]}}),mr=Be.create({name:"listItem",addOptions(){return{HTMLAttributes:{},bulletListTypeName:"bulletList",orderedListTypeName:"orderedList"}},content:"paragraph block*",defining:!0,parseHTML(){return[{tag:"li"}]},renderHTML({HTMLAttributes:o}){return["li",_e(this.options.HTMLAttributes,o),0]},addKeyboardShortcuts(){return{Enter:()=>this.editor.commands.splitListItem(this.name),Tab:()=>this.editor.commands.sinkListItem(this.name),"Shift-Tab":()=>this.editor.commands.liftListItem(this.name)}}}),Wa=yt.create({name:"textStyle",priority:101,addOptions(){return{HTMLAttributes:{}}},parseHTML(){return[{tag:"span",getAttrs:o=>o.hasAttribute("style")?{}:!1}]},renderHTML({HTMLAttributes:o}){return["span",_e(this.options.HTMLAttributes,o),0]},addCommands(){return{removeEmptyTextStyle:()=>({state:o,commands:e})=>{const t=Li(o,this.type);return Object.entries(t).some(([,a])=>!!a)?!0:e.unsetMark(this.name)}}}}),zm=/^\s*([-+*])\s$/,$v=Be.create({name:"bulletList",addOptions(){return{itemTypeName:"listItem",HTMLAttributes:{},keepMarks:!1,keepAttributes:!1}},group:"block list",content(){return`${this.options.itemTypeName}+`},parseHTML(){return[{tag:"ul"}]},renderHTML({HTMLAttributes:o}){return["ul",_e(this.options.HTMLAttributes,o),0]},addCommands(){return{toggleBulletList:()=>({commands:o,chain:e})=>this.options.keepAttributes?e().toggleList(this.name,this.options.itemTypeName,this.options.keepMarks).updateAttributes(mr.name,this.editor.getAttributes(Wa.name)).run():o.toggleList(this.name,this.options.itemTypeName,this.options.keepMarks)}},addKeyboardShortcuts(){return{"Mod-Shift-8":()=>this.editor.commands.toggleBulletList()}},addInputRules(){let o=An({find:zm,type:this.type});return(this.options.keepMarks||this.options.keepAttributes)&&(o=An({find:zm,type:this.type,keepMarks:this.options.keepMarks,keepAttributes:this.options.keepAttributes,getAttributes:()=>this.editor.getAttributes(Wa.name),editor:this.editor})),[o]}}),Hv=/(?:^|\s)(`(?!\s+`)((?:[^`]+))`(?!\s+`))$/,Vv=/(?:^|\s)(`(?!\s+`)((?:[^`]+))`(?!\s+`))/g,qv=yt.create({name:"code",addOptions(){return{HTMLAttributes:{}}},excludes:"_",code:!0,exitable:!0,parseHTML(){return[{tag:"code"}]},renderHTML({HTMLAttributes:o}){return["code",_e(this.options.HTMLAttributes,o),0]},addCommands(){return{setCode:()=>({commands:o})=>o.setMark(this.name),toggleCode:()=>({commands:o})=>o.toggleMark(this.name),unsetCode:()=>({commands:o})=>o.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-e":()=>this.editor.commands.toggleCode()}},addInputRules(){return[Xo({find:Hv,type:this.type})]},addPasteRules(){return[Eo({find:Vv,type:this.type})]}}),Wv=/^```([a-z]+)?[\s\n]$/,Uv=/^~~~([a-z]+)?[\s\n]$/,$m=Be.create({name:"codeBlock",addOptions(){return{languageClassPrefix:"language-",exitOnTripleEnter:!0,exitOnArrowDown:!0,defaultLanguage:null,HTMLAttributes:{}}},content:"text*",marks:"",group:"block",code:!0,defining:!0,addAttributes(){return{language:{default:this.options.defaultLanguage,parseHTML:o=>{var e;const{languageClassPrefix:t}=this.options,s=[...((e=o.firstElementChild)===null||e===void 0?void 0:e.classList)||[]].filter(i=>i.startsWith(t)).map(i=>i.replace(t,""))[0];return s||null},rendered:!1}}},parseHTML(){return[{tag:"pre",preserveWhitespace:"full"}]},renderHTML({node:o,HTMLAttributes:e}){return["pre",_e(this.options.HTMLAttributes,e),["code",{class:o.attrs.language?this.options.languageClassPrefix+o.attrs.language:null},0]]},addCommands(){return{setCodeBlock:o=>({commands:e})=>e.setNode(this.name,o),toggleCodeBlock:o=>({commands:e})=>e.toggleNode(this.name,"paragraph",o)}},addKeyboardShortcuts(){return{"Mod-Alt-c":()=>this.editor.commands.toggleCodeBlock(),Backspace:()=>{const{empty:o,$anchor:e}=this.editor.state.selection,t=e.pos===1;return!o||e.parent.type.name!==this.name?!1:t||!e.parent.textContent.length?this.editor.commands.clearNodes():!1},Enter:({editor:o})=>{if(!this.options.exitOnTripleEnter)return!1;const{state:e}=o,{selection:t}=e,{$from:n,empty:a}=t;if(!a||n.parent.type!==this.type)return!1;const s=n.parentOffset===n.parent.nodeSize-2,i=n.parent.textContent.endsWith(`
|
|
110
|
-
|
|
111
|
-
`);return!s||!i?!1:o.chain().command(({tr:r})=>(r.delete(n.pos-2,n.pos),!0)).exitCode().run()},ArrowDown:({editor:o})=>{if(!this.options.exitOnArrowDown)return!1;const{state:e}=o,{selection:t,doc:n}=e,{$from:a,empty:s}=t;if(!s||a.parent.type!==this.type||!(a.parentOffset===a.parent.nodeSize-2))return!1;const r=a.after();return r===void 0?!1:n.nodeAt(r)?o.commands.command(({tr:p})=>(p.setSelection(Z.near(n.resolve(r))),!0)):o.commands.exitCode()}}},addInputRules(){return[Ki({find:Wv,type:this.type,getAttributes:o=>({language:o[1]})}),Ki({find:Uv,type:this.type,getAttributes:o=>({language:o[1]})})]},addProseMirrorPlugins(){return[new ue({key:new ye("codeBlockVSCodeHandler"),props:{handlePaste:(o,e)=>{if(!e.clipboardData||this.editor.isActive(this.type.name))return!1;const t=e.clipboardData.getData("text/plain"),n=e.clipboardData.getData("vscode-editor-data"),a=n?JSON.parse(n):void 0,s=a==null?void 0:a.mode;if(!t||!s)return!1;const{tr:i,schema:r}=o.state,l=r.text(t.replace(/\r\n?/g,`
|
|
112
|
-
`));return i.replaceSelectionWith(this.type.create({language:s},l)),i.selection.$from.parent.type!==this.type&&i.setSelection(J.near(i.doc.resolve(Math.max(0,i.selection.from-2)))),i.setMeta("paste",!0),o.dispatch(i),!0}}})]}}),Kv=Be.create({name:"doc",topNode:!0,content:"block+"});function Gv(o={}){return new ue({view(e){return new Jv(e,o)}})}class Jv{constructor(e,t){var n;this.editorView=e,this.cursorPos=null,this.element=null,this.timeout=-1,this.width=(n=t.width)!==null&&n!==void 0?n:1,this.color=t.color===!1?void 0:t.color||"black",this.class=t.class,this.handlers=["dragover","dragend","drop","dragleave"].map(a=>{let s=i=>{this[a](i)};return e.dom.addEventListener(a,s),{name:a,handler:s}})}destroy(){this.handlers.forEach(({name:e,handler:t})=>this.editorView.dom.removeEventListener(e,t))}update(e,t){this.cursorPos!=null&&t.doc!=e.state.doc&&(this.cursorPos>e.state.doc.content.size?this.setCursor(null):this.updateOverlay())}setCursor(e){e!=this.cursorPos&&(this.cursorPos=e,e==null?(this.element.parentNode.removeChild(this.element),this.element=null):this.updateOverlay())}updateOverlay(){let e=this.editorView.state.doc.resolve(this.cursorPos),t=!e.parent.inlineContent,n;if(t){let r=e.nodeBefore,l=e.nodeAfter;if(r||l){let p=this.editorView.nodeDOM(this.cursorPos-(r?r.nodeSize:0));if(p){let c=p.getBoundingClientRect(),m=r?c.bottom:c.top;r&&l&&(m=(m+this.editorView.nodeDOM(this.cursorPos).getBoundingClientRect().top)/2),n={left:c.left,right:c.right,top:m-this.width/2,bottom:m+this.width/2}}}}if(!n){let r=this.editorView.coordsAtPos(this.cursorPos);n={left:r.left-this.width/2,right:r.left+this.width/2,top:r.top,bottom:r.bottom}}let a=this.editorView.dom.offsetParent;this.element||(this.element=a.appendChild(document.createElement("div")),this.class&&(this.element.className=this.class),this.element.style.cssText="position: absolute; z-index: 50; pointer-events: none;",this.color&&(this.element.style.backgroundColor=this.color)),this.element.classList.toggle("prosemirror-dropcursor-block",t),this.element.classList.toggle("prosemirror-dropcursor-inline",!t);let s,i;if(!a||a==document.body&&getComputedStyle(a).position=="static")s=-pageXOffset,i=-pageYOffset;else{let r=a.getBoundingClientRect();s=r.left-a.scrollLeft,i=r.top-a.scrollTop}this.element.style.left=n.left-s+"px",this.element.style.top=n.top-i+"px",this.element.style.width=n.right-n.left+"px",this.element.style.height=n.bottom-n.top+"px"}scheduleRemoval(e){clearTimeout(this.timeout),this.timeout=setTimeout(()=>this.setCursor(null),e)}dragover(e){if(!this.editorView.editable)return;let t=this.editorView.posAtCoords({left:e.clientX,top:e.clientY}),n=t&&t.inside>=0&&this.editorView.state.doc.nodeAt(t.inside),a=n&&n.type.spec.disableDropCursor,s=typeof a=="function"?a(this.editorView,t,e):a;if(t&&!s){let i=t.pos;if(this.editorView.dragging&&this.editorView.dragging.slice){let r=$l(this.editorView.state.doc,i,this.editorView.dragging.slice);r!=null&&(i=r)}this.setCursor(i),this.scheduleRemoval(5e3)}}dragend(){this.scheduleRemoval(20)}drop(){this.scheduleRemoval(20)}dragleave(e){(e.target==this.editorView.dom||!this.editorView.dom.contains(e.relatedTarget))&&this.setCursor(null)}}const Yv=Ce.create({name:"dropCursor",addOptions(){return{color:"currentColor",width:1,class:void 0}},addProseMirrorPlugins(){return[Gv(this.options)]}});class be extends Z{constructor(e){super(e,e)}map(e,t){let n=e.resolve(t.map(this.head));return be.valid(n)?new be(n):Z.near(n)}content(){return N.empty}eq(e){return e instanceof be&&e.head==this.head}toJSON(){return{type:"gapcursor",pos:this.head}}static fromJSON(e,t){if(typeof t.pos!="number")throw new RangeError("Invalid input for GapCursor.fromJSON");return new be(e.resolve(t.pos))}getBookmark(){return new dr(this.anchor)}static valid(e){let t=e.parent;if(t.isTextblock||!Xv(e)||!Zv(e))return!1;let n=t.type.spec.allowGapCursor;if(n!=null)return n;let a=t.contentMatchAt(e.index()).defaultType;return a&&a.isTextblock}static findGapCursorFrom(e,t,n=!1){e:for(;;){if(!n&&be.valid(e))return e;let a=e.pos,s=null;for(let i=e.depth;;i--){let r=e.node(i);if(t>0?e.indexAfter(i)<r.childCount:e.index(i)>0){s=r.child(t>0?e.indexAfter(i):e.index(i)-1);break}else if(i==0)return null;a+=t;let l=e.doc.resolve(a);if(be.valid(l))return l}for(;;){let i=t>0?s.firstChild:s.lastChild;if(!i){if(s.isAtom&&!s.isText&&!W.isSelectable(s)){e=e.doc.resolve(a+s.nodeSize*t),n=!1;continue e}break}s=i,a+=t;let r=e.doc.resolve(a);if(be.valid(r))return r}return null}}}be.prototype.visible=!1,be.findFrom=be.findGapCursorFrom,Z.jsonID("gapcursor",be);class dr{constructor(e){this.pos=e}map(e){return new dr(e.map(this.pos))}resolve(e){let t=e.resolve(this.pos);return be.valid(t)?new be(t):Z.near(t)}}function Xv(o){for(let e=o.depth;e>=0;e--){let t=o.index(e),n=o.node(e);if(t==0){if(n.type.spec.isolating)return!0;continue}for(let a=n.child(t-1);;a=a.lastChild){if(a.childCount==0&&!a.inlineContent||a.isAtom||a.type.spec.isolating)return!0;if(a.inlineContent)return!1}}return!0}function Zv(o){for(let e=o.depth;e>=0;e--){let t=o.indexAfter(e),n=o.node(e);if(t==n.childCount){if(n.type.spec.isolating)return!0;continue}for(let a=n.child(t);;a=a.firstChild){if(a.childCount==0&&!a.inlineContent||a.isAtom||a.type.spec.isolating)return!0;if(a.inlineContent)return!1}}return!0}function Qv(){return new ue({props:{decorations:n1,createSelectionBetween(o,e,t){return e.pos==t.pos&&be.valid(t)?new be(t):null},handleClick:t1,handleKeyDown:e1,handleDOMEvents:{beforeinput:o1}}})}const e1=fc({ArrowLeft:Ua("horiz",-1),ArrowRight:Ua("horiz",1),ArrowUp:Ua("vert",-1),ArrowDown:Ua("vert",1)});function Ua(o,e){const t=o=="vert"?e>0?"down":"up":e>0?"right":"left";return function(n,a,s){let i=n.selection,r=e>0?i.$to:i.$from,l=i.empty;if(i instanceof J){if(!s.endOfTextblock(t)||r.depth==0)return!1;l=!1,r=n.doc.resolve(e>0?r.after():r.before())}let p=be.findGapCursorFrom(r,e,l);return p?(a&&a(n.tr.setSelection(new be(p))),!0):!1}}function t1(o,e,t){if(!o||!o.editable)return!1;let n=o.state.doc.resolve(e);if(!be.valid(n))return!1;let a=o.posAtCoords({left:t.clientX,top:t.clientY});return a&&a.inside>-1&&W.isSelectable(o.state.doc.nodeAt(a.inside))?!1:(o.dispatch(o.state.tr.setSelection(new be(n))),!0)}function o1(o,e){if(e.inputType!="insertCompositionText"||!(o.state.selection instanceof be))return!1;let{$from:t}=o.state.selection,n=t.parent.contentMatchAt(t.index()).findWrapping(o.state.schema.nodes.text);if(!n)return!1;let a=x.empty;for(let i=n.length-1;i>=0;i--)a=x.from(n[i].createAndFill(null,a));let s=o.state.tr.replace(t.pos,t.pos,new N(a,0,0));return s.setSelection(J.near(s.doc.resolve(t.pos+1))),o.dispatch(s),!1}function n1(o){if(!(o.selection instanceof be))return null;let e=document.createElement("div");return e.className="ProseMirror-gapcursor",he.create(o.doc,[ze.widget(o.selection.head,e,{key:"gapcursor"})])}const a1=Ce.create({name:"gapCursor",addProseMirrorPlugins(){return[Qv()]},extendNodeSchema(o){var e;const t={name:o.name,options:o.options,storage:o.storage};return{allowGapCursor:(e=ee(R(o,"allowGapCursor",t)))!==null&&e!==void 0?e:null}}}),s1=Be.create({name:"hardBreak",addOptions(){return{keepMarks:!0,HTMLAttributes:{}}},inline:!0,group:"inline",selectable:!1,parseHTML(){return[{tag:"br"}]},renderHTML({HTMLAttributes:o}){return["br",_e(this.options.HTMLAttributes,o)]},renderText(){return`
|
|
113
|
-
`},addCommands(){return{setHardBreak:()=>({commands:o,chain:e,state:t,editor:n})=>o.first([()=>o.exitCode(),()=>o.command(()=>{const{selection:a,storedMarks:s}=t;if(a.$from.parent.type.spec.isolating)return!1;const{keepMarks:i}=this.options,{splittableMarks:r}=n.extensionManager,l=s||a.$to.parentOffset&&a.$from.marks();return e().insertContent({type:this.name}).command(({tr:p,dispatch:c})=>{if(c&&l&&i){const m=l.filter(d=>r.includes(d.type.name));p.ensureMarks(m)}return!0}).run()})])}},addKeyboardShortcuts(){return{"Mod-Enter":()=>this.editor.commands.setHardBreak(),"Shift-Enter":()=>this.editor.commands.setHardBreak()}}}),i1=Be.create({name:"heading",addOptions(){return{levels:[1,2,3,4,5,6],HTMLAttributes:{}}},content:"inline*",group:"block",defining:!0,addAttributes(){return{level:{default:1,rendered:!1}}},parseHTML(){return this.options.levels.map(o=>({tag:`h${o}`,attrs:{level:o}}))},renderHTML({node:o,HTMLAttributes:e}){return[`h${this.options.levels.includes(o.attrs.level)?o.attrs.level:this.options.levels[0]}`,_e(this.options.HTMLAttributes,e),0]},addCommands(){return{setHeading:o=>({commands:e})=>this.options.levels.includes(o.level)?e.setNode(this.name,o):!1,toggleHeading:o=>({commands:e})=>this.options.levels.includes(o.level)?e.toggleNode(this.name,"paragraph",o):!1}},addKeyboardShortcuts(){return this.options.levels.reduce((o,e)=>({...o,[`Mod-Alt-${e}`]:()=>this.editor.commands.toggleHeading({level:e})}),{})},addInputRules(){return this.options.levels.map(o=>Ki({find:new RegExp(`^(#{1,${o}})\\s$`),type:this.type,getAttributes:{level:o}}))}});var Ka=200,xe=function(){};xe.prototype.append=function(e){return e.length?(e=xe.from(e),!this.length&&e||e.length<Ka&&this.leafAppend(e)||this.length<Ka&&e.leafPrepend(this)||this.appendInner(e)):this},xe.prototype.prepend=function(e){return e.length?xe.from(e).append(this):this},xe.prototype.appendInner=function(e){return new r1(this,e)},xe.prototype.slice=function(e,t){return e===void 0&&(e=0),t===void 0&&(t=this.length),e>=t?xe.empty:this.sliceInner(Math.max(0,e),Math.min(this.length,t))},xe.prototype.get=function(e){if(!(e<0||e>=this.length))return this.getInner(e)},xe.prototype.forEach=function(e,t,n){t===void 0&&(t=0),n===void 0&&(n=this.length),t<=n?this.forEachInner(e,t,n,0):this.forEachInvertedInner(e,t,n,0)},xe.prototype.map=function(e,t,n){t===void 0&&(t=0),n===void 0&&(n=this.length);var a=[];return this.forEach(function(s,i){return a.push(e(s,i))},t,n),a},xe.from=function(e){return e instanceof xe?e:e&&e.length?new Hm(e):xe.empty};var Hm=function(o){function e(n){o.call(this),this.values=n}o&&(e.__proto__=o),e.prototype=Object.create(o&&o.prototype),e.prototype.constructor=e;var t={length:{configurable:!0},depth:{configurable:!0}};return e.prototype.flatten=function(){return this.values},e.prototype.sliceInner=function(a,s){return a==0&&s==this.length?this:new e(this.values.slice(a,s))},e.prototype.getInner=function(a){return this.values[a]},e.prototype.forEachInner=function(a,s,i,r){for(var l=s;l<i;l++)if(a(this.values[l],r+l)===!1)return!1},e.prototype.forEachInvertedInner=function(a,s,i,r){for(var l=s-1;l>=i;l--)if(a(this.values[l],r+l)===!1)return!1},e.prototype.leafAppend=function(a){if(this.length+a.length<=Ka)return new e(this.values.concat(a.flatten()))},e.prototype.leafPrepend=function(a){if(this.length+a.length<=Ka)return new e(a.flatten().concat(this.values))},t.length.get=function(){return this.values.length},t.depth.get=function(){return 0},Object.defineProperties(e.prototype,t),e}(xe);xe.empty=new Hm([]);var r1=function(o){function e(t,n){o.call(this),this.left=t,this.right=n,this.length=t.length+n.length,this.depth=Math.max(t.depth,n.depth)+1}return o&&(e.__proto__=o),e.prototype=Object.create(o&&o.prototype),e.prototype.constructor=e,e.prototype.flatten=function(){return this.left.flatten().concat(this.right.flatten())},e.prototype.getInner=function(n){return n<this.left.length?this.left.get(n):this.right.get(n-this.left.length)},e.prototype.forEachInner=function(n,a,s,i){var r=this.left.length;if(a<r&&this.left.forEachInner(n,a,Math.min(s,r),i)===!1||s>r&&this.right.forEachInner(n,Math.max(a-r,0),Math.min(this.length,s)-r,i+r)===!1)return!1},e.prototype.forEachInvertedInner=function(n,a,s,i){var r=this.left.length;if(a>r&&this.right.forEachInvertedInner(n,a-r,Math.max(s,r)-r,i+r)===!1||s<r&&this.left.forEachInvertedInner(n,Math.min(a,r),s,i)===!1)return!1},e.prototype.sliceInner=function(n,a){if(n==0&&a==this.length)return this;var s=this.left.length;return a<=s?this.left.slice(n,a):n>=s?this.right.slice(n-s,a-s):this.left.slice(n,s).append(this.right.slice(0,a-s))},e.prototype.leafAppend=function(n){var a=this.right.leafAppend(n);if(a)return new e(this.left,a)},e.prototype.leafPrepend=function(n){var a=this.left.leafPrepend(n);if(a)return new e(a,this.right)},e.prototype.appendInner=function(n){return this.left.depth>=Math.max(this.right.depth,n.depth)+1?new e(this.left,new e(this.right,n)):new e(this,n)},e}(xe);const l1=500;class bt{constructor(e,t){this.items=e,this.eventCount=t}popEvent(e,t){if(this.eventCount==0)return null;let n=this.items.length;for(;;n--)if(this.items.get(n-1).selection){--n;break}let a,s;t&&(a=this.remapping(n,this.items.length),s=a.maps.length);let i=e.tr,r,l,p=[],c=[];return this.items.forEach((m,d)=>{if(!m.step){a||(a=this.remapping(n,d+1),s=a.maps.length),s--,c.push(m);return}if(a){c.push(new It(m.map));let u=m.step.map(a.slice(s)),g;u&&i.maybeStep(u).doc&&(g=i.mapping.maps[i.mapping.maps.length-1],p.push(new It(g,void 0,void 0,p.length+c.length))),s--,g&&a.appendMap(g,s)}else i.maybeStep(m.step);if(m.selection)return r=a?m.selection.map(a.slice(s)):m.selection,l=new bt(this.items.slice(0,n).append(c.reverse().concat(p)),this.eventCount-1),!1},this.items.length,0),{remaining:l,transform:i,selection:r}}addTransform(e,t,n,a){let s=[],i=this.eventCount,r=this.items,l=!a&&r.length?r.get(r.length-1):null;for(let c=0;c<e.steps.length;c++){let m=e.steps[c].invert(e.docs[c]),d=new It(e.mapping.maps[c],m,t),u;(u=l&&l.merge(d))&&(d=u,c?s.pop():r=r.slice(0,r.length-1)),s.push(d),t&&(i++,t=void 0),a||(l=d)}let p=i-n.depth;return p>c1&&(r=p1(r,p),i-=p),new bt(r.append(s),i)}remapping(e,t){let n=new Ro;return this.items.forEach((a,s)=>{let i=a.mirrorOffset!=null&&s-a.mirrorOffset>=e?n.maps.length-a.mirrorOffset:void 0;n.appendMap(a.map,i)},e,t),n}addMaps(e){return this.eventCount==0?this:new bt(this.items.append(e.map(t=>new It(t))),this.eventCount)}rebased(e,t){if(!this.eventCount)return this;let n=[],a=Math.max(0,this.items.length-t),s=e.mapping,i=e.steps.length,r=this.eventCount;this.items.forEach(d=>{d.selection&&r--},a);let l=t;this.items.forEach(d=>{let u=s.getMirror(--l);if(u==null)return;i=Math.min(i,u);let g=s.maps[u];if(d.step){let h=e.steps[u].invert(e.docs[u]),b=d.selection&&d.selection.map(s.slice(l+1,u));b&&r++,n.push(new It(g,h,b))}else n.push(new It(g))},a);let p=[];for(let d=t;d<i;d++)p.push(new It(s.maps[d]));let c=this.items.slice(0,a).append(p).append(n),m=new bt(c,r);return m.emptyItemCount()>l1&&(m=m.compress(this.items.length-n.length)),m}emptyItemCount(){let e=0;return this.items.forEach(t=>{t.step||e++}),e}compress(e=this.items.length){let t=this.remapping(0,e),n=t.maps.length,a=[],s=0;return this.items.forEach((i,r)=>{if(r>=e)a.push(i),i.selection&&s++;else if(i.step){let l=i.step.map(t.slice(n)),p=l&&l.getMap();if(n--,p&&t.appendMap(p,n),l){let c=i.selection&&i.selection.map(t.slice(n));c&&s++;let m=new It(p.invert(),l,c),d,u=a.length-1;(d=a.length&&a[u].merge(m))?a[u]=d:a.push(m)}}else i.map&&n--},this.items.length,0),new bt(xe.from(a.reverse()),s)}}bt.empty=new bt(xe.empty,0);function p1(o,e){let t;return o.forEach((n,a)=>{if(n.selection&&e--==0)return t=a,!1}),o.slice(t)}class It{constructor(e,t,n,a){this.map=e,this.step=t,this.selection=n,this.mirrorOffset=a}merge(e){if(this.step&&e.step&&!e.selection){let t=e.step.merge(this.step);if(t)return new It(t.getMap().invert(),t,this.selection)}}}class io{constructor(e,t,n,a,s){this.done=e,this.undone=t,this.prevRanges=n,this.prevTime=a,this.prevComposition=s}}const c1=20;function m1(o,e,t,n){let a=t.getMeta(Mo),s;if(a)return a.historyState;t.getMeta(g1)&&(o=new io(o.done,o.undone,null,0,-1));let i=t.getMeta("appendedTransaction");if(t.steps.length==0)return o;if(i&&i.getMeta(Mo))return i.getMeta(Mo).redo?new io(o.done.addTransform(t,void 0,n,Ga(e)),o.undone,Vm(t.mapping.maps),o.prevTime,o.prevComposition):new io(o.done,o.undone.addTransform(t,void 0,n,Ga(e)),null,o.prevTime,o.prevComposition);if(t.getMeta("addToHistory")!==!1&&!(i&&i.getMeta("addToHistory")===!1)){let r=t.getMeta("composition"),l=o.prevTime==0||!i&&o.prevComposition!=r&&(o.prevTime<(t.time||0)-n.newGroupDelay||!d1(t,o.prevRanges)),p=i?ur(o.prevRanges,t.mapping):Vm(t.mapping.maps);return new io(o.done.addTransform(t,l?e.selection.getBookmark():void 0,n,Ga(e)),bt.empty,p,t.time,r??o.prevComposition)}else return(s=t.getMeta("rebased"))?new io(o.done.rebased(t,s),o.undone.rebased(t,s),ur(o.prevRanges,t.mapping),o.prevTime,o.prevComposition):new io(o.done.addMaps(t.mapping.maps),o.undone.addMaps(t.mapping.maps),ur(o.prevRanges,t.mapping),o.prevTime,o.prevComposition)}function d1(o,e){if(!e)return!1;if(!o.docChanged)return!0;let t=!1;return o.mapping.maps[0].forEach((n,a)=>{for(let s=0;s<e.length;s+=2)n<=e[s+1]&&a>=e[s]&&(t=!0)}),t}function Vm(o){let e=[];for(let t=o.length-1;t>=0&&e.length==0;t--)o[t].forEach((n,a,s,i)=>e.push(s,i));return e}function ur(o,e){if(!o)return null;let t=[];for(let n=0;n<o.length;n+=2){let a=e.map(o[n],1),s=e.map(o[n+1],-1);a<=s&&t.push(a,s)}return t}function u1(o,e,t){let n=Ga(e),a=Mo.get(e).spec.config,s=(t?o.undone:o.done).popEvent(e,n);if(!s)return null;let i=s.selection.resolve(s.transform.doc),r=(t?o.done:o.undone).addTransform(s.transform,e.selection.getBookmark(),a,n),l=new io(t?r:s.remaining,t?s.remaining:r,null,0,-1);return s.transform.setSelection(i).setMeta(Mo,{redo:t,historyState:l})}let gr=!1,qm=null;function Ga(o){let e=o.plugins;if(qm!=e){gr=!1,qm=e;for(let t=0;t<e.length;t++)if(e[t].spec.historyPreserveItems){gr=!0;break}}return gr}const Mo=new ye("history"),g1=new ye("closeHistory");function f1(o={}){return o={depth:o.depth||100,newGroupDelay:o.newGroupDelay||500},new ue({key:Mo,state:{init(){return new io(bt.empty,bt.empty,null,0,-1)},apply(e,t,n){return m1(t,n,e,o)}},config:o,props:{handleDOMEvents:{beforeinput(e,t){let n=t.inputType,a=n=="historyUndo"?Um:n=="historyRedo"?Km:null;return a?(t.preventDefault(),a(e.state,e.dispatch)):!1}}}})}function Wm(o,e){return(t,n)=>{let a=Mo.getState(t);if(!a||(o?a.undone:a.done).eventCount==0)return!1;if(n){let s=u1(a,t,o);s&&n(e?s.scrollIntoView():s)}return!0}}const Um=Wm(!1,!0),Km=Wm(!0,!0),h1=Ce.create({name:"history",addOptions(){return{depth:100,newGroupDelay:500}},addCommands(){return{undo:()=>({state:o,dispatch:e})=>Um(o,e),redo:()=>({state:o,dispatch:e})=>Km(o,e)}},addProseMirrorPlugins(){return[f1(this.options)]},addKeyboardShortcuts(){return{"Mod-z":()=>this.editor.commands.undo(),"Shift-Mod-z":()=>this.editor.commands.redo(),"Mod-y":()=>this.editor.commands.redo(),"Mod-я":()=>this.editor.commands.undo(),"Shift-Mod-я":()=>this.editor.commands.redo()}}}),b1=Be.create({name:"horizontalRule",addOptions(){return{HTMLAttributes:{}}},group:"block",parseHTML(){return[{tag:"hr"}]},renderHTML({HTMLAttributes:o}){return["hr",_e(this.options.HTMLAttributes,o)]},addCommands(){return{setHorizontalRule:()=>({chain:o,state:e})=>{const{selection:t}=e,{$from:n,$to:a}=t,s=o();return n.parentOffset===0?s.insertContentAt({from:Math.max(n.pos-1,0),to:a.pos},{type:this.name}):Kc(t)?s.insertContentAt(a.pos,{type:this.name}):s.insertContent({type:this.name}),s.command(({tr:i,dispatch:r})=>{var l;if(r){const{$to:p}=i.selection,c=p.end();if(p.nodeAfter)p.nodeAfter.isTextblock?i.setSelection(J.create(i.doc,p.pos+1)):p.nodeAfter.isBlock?i.setSelection(W.create(i.doc,p.pos)):i.setSelection(J.create(i.doc,p.pos));else{const m=(l=p.parent.type.contentMatch.defaultType)===null||l===void 0?void 0:l.create();m&&(i.insert(c,m),i.setSelection(J.create(i.doc,c+1)))}i.scrollIntoView()}return!0}).run()}}},addInputRules(){return[Ui({find:/^(?:---|—-|___\s|\*\*\*\s)$/,type:this.type})]}}),j1=/(?:^|\s)(\*(?!\s+\*)((?:[^*]+))\*(?!\s+\*))$/,v1=/(?:^|\s)(\*(?!\s+\*)((?:[^*]+))\*(?!\s+\*))/g,k1=/(?:^|\s)(_(?!\s+_)((?:[^_]+))_(?!\s+_))$/,y1=/(?:^|\s)(_(?!\s+_)((?:[^_]+))_(?!\s+_))/g,_1=yt.create({name:"italic",addOptions(){return{HTMLAttributes:{}}},parseHTML(){return[{tag:"em"},{tag:"i",getAttrs:o=>o.style.fontStyle!=="normal"&&null},{style:"font-style=italic"}]},renderHTML({HTMLAttributes:o}){return["em",_e(this.options.HTMLAttributes,o),0]},addCommands(){return{setItalic:()=>({commands:o})=>o.setMark(this.name),toggleItalic:()=>({commands:o})=>o.toggleMark(this.name),unsetItalic:()=>({commands:o})=>o.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-i":()=>this.editor.commands.toggleItalic(),"Mod-I":()=>this.editor.commands.toggleItalic()}},addInputRules(){return[Xo({find:j1,type:this.type}),Xo({find:k1,type:this.type})]},addPasteRules(){return[Eo({find:v1,type:this.type}),Eo({find:y1,type:this.type})]}}),Gm=/^(\d+)\.\s$/,D1=Be.create({name:"orderedList",addOptions(){return{itemTypeName:"listItem",HTMLAttributes:{},keepMarks:!1,keepAttributes:!1}},group:"block list",content(){return`${this.options.itemTypeName}+`},addAttributes(){return{start:{default:1,parseHTML:o=>o.hasAttribute("start")?parseInt(o.getAttribute("start")||"",10):1},type:{default:void 0,parseHTML:o=>o.getAttribute("type")}}},parseHTML(){return[{tag:"ol"}]},renderHTML({HTMLAttributes:o}){const{start:e,...t}=o;return e===1?["ol",_e(this.options.HTMLAttributes,t),0]:["ol",_e(this.options.HTMLAttributes,o),0]},addCommands(){return{toggleOrderedList:()=>({commands:o,chain:e})=>this.options.keepAttributes?e().toggleList(this.name,this.options.itemTypeName,this.options.keepMarks).updateAttributes(mr.name,this.editor.getAttributes(Wa.name)).run():o.toggleList(this.name,this.options.itemTypeName,this.options.keepMarks)}},addKeyboardShortcuts(){return{"Mod-Shift-7":()=>this.editor.commands.toggleOrderedList()}},addInputRules(){let o=An({find:Gm,type:this.type,getAttributes:e=>({start:+e[1]}),joinPredicate:(e,t)=>t.childCount+t.attrs.start===+e[1]});return(this.options.keepMarks||this.options.keepAttributes)&&(o=An({find:Gm,type:this.type,keepMarks:this.options.keepMarks,keepAttributes:this.options.keepAttributes,getAttributes:e=>({start:+e[1],...this.editor.getAttributes(Wa.name)}),joinPredicate:(e,t)=>t.childCount+t.attrs.start===+e[1],editor:this.editor})),[o]}}),w1=Be.create({name:"paragraph",priority:1e3,addOptions(){return{HTMLAttributes:{}}},group:"block",content:"inline*",parseHTML(){return[{tag:"p"}]},renderHTML({HTMLAttributes:o}){return["p",_e(this.options.HTMLAttributes,o),0]},addCommands(){return{setParagraph:()=>({commands:o})=>o.setNode(this.name)}},addKeyboardShortcuts(){return{"Mod-Alt-0":()=>this.editor.commands.setParagraph()}}}),I1=/(?:^|\s)(~~(?!\s+~~)((?:[^~]+))~~(?!\s+~~))$/,E1=/(?:^|\s)(~~(?!\s+~~)((?:[^~]+))~~(?!\s+~~))/g,C1=yt.create({name:"strike",addOptions(){return{HTMLAttributes:{}}},parseHTML(){return[{tag:"s"},{tag:"del"},{tag:"strike"},{style:"text-decoration",consuming:!1,getAttrs:o=>o.includes("line-through")?{}:!1}]},renderHTML({HTMLAttributes:o}){return["s",_e(this.options.HTMLAttributes,o),0]},addCommands(){return{setStrike:()=>({commands:o})=>o.setMark(this.name),toggleStrike:()=>({commands:o})=>o.toggleMark(this.name),unsetStrike:()=>({commands:o})=>o.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-Shift-s":()=>this.editor.commands.toggleStrike()}},addInputRules(){return[Xo({find:I1,type:this.type})]},addPasteRules(){return[Eo({find:E1,type:this.type})]}}),x1=Be.create({name:"text",group:"inline"}),S1=Ce.create({name:"starterKit",addExtensions(){var o,e,t,n,a,s,i,r,l,p,c,m,d,u,g,h,b,k;const I=[];return this.options.bold!==!1&&I.push(zv.configure((o=this.options)===null||o===void 0?void 0:o.bold)),this.options.blockquote!==!1&&I.push(Nv.configure((e=this.options)===null||e===void 0?void 0:e.blockquote)),this.options.bulletList!==!1&&I.push($v.configure((t=this.options)===null||t===void 0?void 0:t.bulletList)),this.options.code!==!1&&I.push(qv.configure((n=this.options)===null||n===void 0?void 0:n.code)),this.options.codeBlock!==!1&&I.push($m.configure((a=this.options)===null||a===void 0?void 0:a.codeBlock)),this.options.document!==!1&&I.push(Kv.configure((s=this.options)===null||s===void 0?void 0:s.document)),this.options.dropcursor!==!1&&I.push(Yv.configure((i=this.options)===null||i===void 0?void 0:i.dropcursor)),this.options.gapcursor!==!1&&I.push(a1.configure((r=this.options)===null||r===void 0?void 0:r.gapcursor)),this.options.hardBreak!==!1&&I.push(s1.configure((l=this.options)===null||l===void 0?void 0:l.hardBreak)),this.options.heading!==!1&&I.push(i1.configure((p=this.options)===null||p===void 0?void 0:p.heading)),this.options.history!==!1&&I.push(h1.configure((c=this.options)===null||c===void 0?void 0:c.history)),this.options.horizontalRule!==!1&&I.push(b1.configure((m=this.options)===null||m===void 0?void 0:m.horizontalRule)),this.options.italic!==!1&&I.push(_1.configure((d=this.options)===null||d===void 0?void 0:d.italic)),this.options.listItem!==!1&&I.push(mr.configure((u=this.options)===null||u===void 0?void 0:u.listItem)),this.options.orderedList!==!1&&I.push(D1.configure((g=this.options)===null||g===void 0?void 0:g.orderedList)),this.options.paragraph!==!1&&I.push(w1.configure((h=this.options)===null||h===void 0?void 0:h.paragraph)),this.options.strike!==!1&&I.push(C1.configure((b=this.options)===null||b===void 0?void 0:b.strike)),this.options.text!==!1&&I.push(x1.configure((k=this.options)===null||k===void 0?void 0:k.text)),I}}),M1=/(?:^|\s)(!\[(.+|:?)]\((\S+)(?:(?:\s+)["'](\S+)["'])?\))$/,F1=Be.create({name:"image",addOptions(){return{inline:!1,allowBase64:!1,HTMLAttributes:{}}},inline(){return this.options.inline},group(){return this.options.inline?"inline":"block"},draggable:!0,addAttributes(){return{src:{default:null},alt:{default:null},title:{default:null}}},parseHTML(){return[{tag:this.options.allowBase64?"img[src]":'img[src]:not([src^="data:"])'}]},renderHTML({HTMLAttributes:o}){return["img",_e(this.options.HTMLAttributes,o)]},addCommands(){return{setImage:o=>({commands:e})=>e.insertContent({type:this.name,attrs:o})}},addInputRules(){return[Ui({find:M1,type:this.type,getAttributes:o=>{const[,,e,t,n]=o;return{src:t,alt:e,title:n}}})]}}),O1=Ce.create({name:"placeholder",addOptions(){return{emptyEditorClass:"is-editor-empty",emptyNodeClass:"is-empty",placeholder:"Write something …",showOnlyWhenEditable:!0,showOnlyCurrent:!0,includeChildren:!1}},addProseMirrorPlugins(){return[new ue({key:new ye("placeholder"),props:{decorations:({doc:o,selection:e})=>{const t=this.editor.isEditable||!this.options.showOnlyWhenEditable,{anchor:n}=e,a=[];if(!t)return null;const s=this.editor.isEmpty;return o.descendants((i,r)=>{const l=n>=r&&n<=r+i.nodeSize,p=!i.isLeaf&&La(i);if((l||!this.options.showOnlyCurrent)&&p){const c=[this.options.emptyNodeClass];s&&c.push(this.options.emptyEditorClass);const m=ze.node(r,r+i.nodeSize,{class:c.join(" "),"data-placeholder":typeof this.options.placeholder=="function"?this.options.placeholder({editor:this.editor,node:i,pos:r,hasAnchor:l}):this.options.placeholder});a.push(m)}return this.options.includeChildren}),he.create(o,a)}}})]}});function A1(o){var e;const{char:t,allowSpaces:n,allowedPrefixes:a,startOfLine:s,$position:i}=o,r=Yc(t),l=new RegExp(`\\s${r}$`),p=s?"^":"",c=n?new RegExp(`${p}${r}.*?(?=\\s${r}|$)`,"gm"):new RegExp(`${p}(?:^)?${r}[^\\s${r}]*`,"gm"),m=((e=i.nodeBefore)===null||e===void 0?void 0:e.isText)&&i.nodeBefore.text;if(!m)return null;const d=i.pos-m.length,u=Array.from(m.matchAll(c)).pop();if(!u||u.input===void 0||u.index===void 0)return null;const g=u.input.slice(Math.max(0,u.index-1),u.index),h=new RegExp(`^[${a==null?void 0:a.join("")}\0]?$`).test(g);if(a!==null&&!h)return null;const b=d+u.index;let k=b+u[0].length;return n&&l.test(m.slice(k-1,k+1))&&(u[0]+=" ",k+=1),b<i.pos&&k>=i.pos?{range:{from:b,to:k},query:u[0].slice(t.length),text:u[0]}:null}const T1=new ye("suggestion");function N1({pluginKey:o=T1,editor:e,char:t="@",allowSpaces:n=!1,allowedPrefixes:a=[" "],startOfLine:s=!1,decorationTag:i="span",decorationClass:r="suggestion",command:l=()=>null,items:p=()=>[],render:c=()=>({}),allow:m=()=>!0,findSuggestionMatch:d=A1}){let u;const g=c==null?void 0:c(),h=new ue({key:o,view(){return{update:async(b,k)=>{var I,S,j,T,D,P,U;const C=(I=this.key)===null||I===void 0?void 0:I.getState(k),q=(S=this.key)===null||S===void 0?void 0:S.getState(b.state),X=C.active&&q.active&&C.range.from!==q.range.from,ae=!C.active&&q.active,ne=C.active&&!q.active,ce=!ae&&!ne&&C.query!==q.query,L=ae||X&&ce,H=ce||X,v=ne||X&&ce;if(!L&&!H&&!v)return;const _=v&&!L?C:q,F=b.dom.querySelector(`[data-decoration-id="${_.decorationId}"]`);u={editor:e,range:_.range,query:_.query,text:_.text,items:[],command:B=>l({editor:e,range:_.range,props:B}),decorationNode:F,clientRect:F?()=>{var B;const{decorationId:K}=(B=this.key)===null||B===void 0?void 0:B.getState(e.state),oe=b.dom.querySelector(`[data-decoration-id="${K}"]`);return(oe==null?void 0:oe.getBoundingClientRect())||null}:null},L&&((j=g==null?void 0:g.onBeforeStart)===null||j===void 0||j.call(g,u)),H&&((T=g==null?void 0:g.onBeforeUpdate)===null||T===void 0||T.call(g,u)),(H||L)&&(u.items=await p({editor:e,query:_.query})),v&&((D=g==null?void 0:g.onExit)===null||D===void 0||D.call(g,u)),H&&((P=g==null?void 0:g.onUpdate)===null||P===void 0||P.call(g,u)),L&&((U=g==null?void 0:g.onStart)===null||U===void 0||U.call(g,u))},destroy:()=>{var b;u&&((b=g==null?void 0:g.onExit)===null||b===void 0||b.call(g,u))}}},state:{init(){return{active:!1,range:{from:0,to:0},query:null,text:null,composing:!1}},apply(b,k,I,S){const{isEditable:j}=e,{composing:T}=e.view,{selection:D}=b,{empty:P,from:U}=D,C={...k};if(C.composing=T,j&&(P||e.view.composing)){(U<k.range.from||U>k.range.to)&&!T&&!k.composing&&(C.active=!1);const q=d({char:t,allowSpaces:n,allowedPrefixes:a,startOfLine:s,$position:D.$from}),X=`id_${Math.floor(Math.random()*4294967295)}`;q&&m({editor:e,state:S,range:q.range,isActive:k.active})?(C.active=!0,C.decorationId=k.decorationId?k.decorationId:X,C.range=q.range,C.query=q.query,C.text=q.text):C.active=!1}else C.active=!1;return C.active||(C.decorationId=null,C.range={from:0,to:0},C.query=null,C.text=null),C}},props:{handleKeyDown(b,k){var I;const{active:S,range:j}=h.getState(b.state);return S&&((I=g==null?void 0:g.onKeyDown)===null||I===void 0?void 0:I.call(g,{view:b,event:k,range:j}))||!1},decorations(b){const{active:k,range:I,decorationId:S}=h.getState(b);return k?he.create(b.doc,[ze.inline(I.from,I.to,{nodeName:i,class:r,"data-decoration-id":S})]):null}}});return h}const B1=()=>/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\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]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;var fr=new Map;function R1(o){if(fr.has(o))return fr.get(o);var e=L1(o);return fr.set(o,e),e}var L1=function(){var o=null;try{o=document.createElement("canvas").getContext("2d")}catch{}if(!o)return function(){return!1};var e=25,t=20,n=Math.floor(e/2);return o.font=n+"px Arial, Sans-Serif",o.textBaseline="top",o.canvas.width=t*2,o.canvas.height=e,function(a){o.clearRect(0,0,t*2,e),o.fillStyle="#FF0000",o.fillText(a,0,22),o.fillStyle="#0000FF",o.fillText(a,t,22);for(var s=o.getImageData(0,0,t,e).data,i=s.length,r=0;r<i&&!s[r+3];r+=4);if(r>=i)return!1;var l=t+r/4%t,p=Math.floor(r/4/t),c=o.getImageData(l,p,1,1).data;return!(s[r]!==c[0]||s[r+2]!==c[2]||o.measureText(a).width>=t)}}();const hr=[{emoji:"😀",name:"grinning",shortcodes:["grinning","grinning_face"],tags:["face","grin"],group:"smileys & emotion",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f600.png"},{emoji:"😃",name:"smiley",shortcodes:["grinning_face_with_big_eyes","smiley"],tags:["face","mouth","open","smile"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f603.png"},{emoji:"😄",name:"smile",shortcodes:["grinning_face_with_closed_eyes","smile"],tags:["eye","face","mouth","open","smile"],group:"smileys & emotion",emoticons:[":D"],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f604.png"},{emoji:"😁",name:"grin",shortcodes:["beaming_face","grin"],tags:["eye","face","grin","smile"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f601.png"},{emoji:"😆",name:"laughing",shortcodes:["laughing","lol","satisfied","squinting_face"],tags:["face","laugh","mouth","satisfied","smile"],group:"smileys & emotion",emoticons:["xD","XD"],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f606.png"},{emoji:"😅",name:"sweat_smile",shortcodes:["grinning_face_with_sweat","sweat_smile"],tags:["cold","face","open","smile","sweat"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f605.png"},{emoji:"🤣",name:"rofl",shortcodes:["rofl"],tags:["face","floor","laugh","rofl","rolling","rotfl"],group:"smileys & emotion",emoticons:[":'D"],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f923.png"},{emoji:"😂",name:"joy",shortcodes:["joy","lmao","tears_of_joy"],tags:["face","joy","laugh","tear"],group:"smileys & emotion",emoticons:[":')"],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f602.png"},{emoji:"🙂",name:"slightly_smiling_face",shortcodes:["slightly_smiling_face"],tags:["face","smile"],group:"smileys & emotion",emoticons:[":)"],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f642.png"},{emoji:"🙃",name:"upside_down_face",shortcodes:["upside_down_face"],tags:["face","upside-down"],group:"smileys & emotion",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f643.png"},{emoji:"😉",name:"wink",shortcodes:["wink","winking_face"],tags:["face","wink"],group:"smileys & emotion",emoticons:[";)"],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f609.png"},{emoji:"😊",name:"blush",shortcodes:["blush","smiling_face_with_closed_eyes"],tags:["blush","eye","face","smile"],group:"smileys & emotion",emoticons:[":>"],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f60a.png"},{emoji:"😇",name:"innocent",shortcodes:["halo","innocent"],tags:["angel","face","fantasy","halo","innocent"],group:"smileys & emotion",emoticons:["o:)","O:)"],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f607.png"},{emoji:"🥰",name:"smiling_face_with_three_hearts",shortcodes:["smiling_face_with_3_hearts"],tags:["adore","crush","hearts","in love"],group:"smileys & emotion",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f970.png"},{emoji:"😍",name:"heart_eyes",shortcodes:["heart_eyes","smiling_face_with_heart_eyes"],tags:["eye","face","love","smile"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f60d.png"},{emoji:"🤩",name:"star_struck",shortcodes:["star_struck"],tags:["eyes","face","grinning","star"],group:"smileys & emotion",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f929.png"},{emoji:"😘",name:"kissing_heart",shortcodes:["blowing_a_kiss","kissing_heart"],tags:["face","kiss"],group:"smileys & emotion",emoticons:[":x",":X"],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f618.png"},{emoji:"😗",name:"kissing",shortcodes:["kissing","kissing_face"],tags:["face","kiss"],group:"smileys & emotion",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f617.png"},{emoji:"☺",name:"relaxed",shortcodes:["relaxed","smiling_face"],tags:["face","outlined","relaxed","smile"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/263a-fe0f.png"},{emoji:"😚",name:"kissing_closed_eyes",shortcodes:["kissing_closed_eyes","kissing_face_with_closed_eyes"],tags:["closed","eye","face","kiss"],group:"smileys & emotion",emoticons:[":*"],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f61a.png"},{emoji:"😙",name:"kissing_smiling_eyes",shortcodes:["kissing_face_with_smiling_eyes","kissing_smiling_eyes"],tags:["eye","face","kiss","smile"],group:"smileys & emotion",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f619.png"},{emoji:"🥲",name:"smiling_face_with_tear",shortcodes:["smiling_face_with_tear"],tags:["grateful","proud","relieved","smiling","tear","touched"],group:"smileys & emotion",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f972.png"},{emoji:"😋",name:"yum",shortcodes:["savoring_food","yum"],tags:["delicious","face","savouring","smile","yum"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f60b.png"},{emoji:"😛",name:"stuck_out_tongue",shortcodes:["face_with_tongue","stuck_out_tongue"],tags:["face","tongue"],group:"smileys & emotion",emoticons:[":p",":P"],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f61b.png"},{emoji:"😜",name:"stuck_out_tongue_winking_eye",shortcodes:["stuck_out_tongue_winking_eye"],tags:["eye","face","joke","tongue","wink"],group:"smileys & emotion",emoticons:[";p",";P"],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f61c.png"},{emoji:"🤪",name:"zany_face",shortcodes:["zany","zany_face"],tags:["eye","goofy","large","small"],group:"smileys & emotion",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f92a.png"},{emoji:"😝",name:"stuck_out_tongue_closed_eyes",shortcodes:["stuck_out_tongue_closed_eyes"],tags:["eye","face","horrible","taste","tongue"],group:"smileys & emotion",emoticons:["xp","xP","XP"],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f61d.png"},{emoji:"🤑",name:"money_mouth_face",shortcodes:["money_mouth_face"],tags:["face","money","mouth"],group:"smileys & emotion",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f911.png"},{emoji:"🤗",name:"hugs",shortcodes:["hug","hugging","hugging_face"],tags:["face","hug","hugging","open hands","smiling face"],group:"smileys & emotion",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f917.png"},{emoji:"🤭",name:"hand_over_mouth",shortcodes:["face_with_hand_over_mouth","hand_over_mouth"],tags:["whoops"],group:"smileys & emotion",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f92d.png"},{emoji:"🤫",name:"shushing_face",shortcodes:["shush","shushing_face"],tags:["quiet","shush"],group:"smileys & emotion",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f92b.png"},{emoji:"🤔",name:"thinking",shortcodes:["thinking","thinking_face","wtf"],tags:["face","thinking"],group:"smileys & emotion",emoticons:[":l",":L"],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f914.png"},{emoji:"🤐",name:"zipper_mouth_face",shortcodes:["zipper_mouth","zipper_mouth_face"],tags:["face","mouth","zipper"],group:"smileys & emotion",emoticons:[":z",":Z"],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f910.png"},{emoji:"🤨",name:"raised_eyebrow",shortcodes:["face_with_raised_eyebrow","raised_eyebrow"],tags:["distrust","skeptic"],group:"smileys & emotion",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f928.png"},{emoji:"😐",name:"neutral_face",shortcodes:["neutral","neutral_face"],tags:["deadpan","face","meh","neutral"],group:"smileys & emotion",emoticons:[":|"],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f610.png"},{emoji:"😑",name:"expressionless",shortcodes:["expressionless","expressionless_face"],tags:["expressionless","face","inexpressive","meh","unexpressive"],group:"smileys & emotion",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f611.png"},{emoji:"😶",name:"no_mouth",shortcodes:["no_mouth"],tags:["face","mouth","quiet","silent"],group:"smileys & emotion",emoticons:[":#"],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f636.png"},{emoji:"😶🌫",name:"face_in_clouds",shortcodes:["in_clouds"],tags:["absentminded","face in the fog","head in clouds"],group:"smileys & emotion",emoticons:[],version:13.1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f636-200d-1f32b-fe0f.png"},{emoji:"😏",name:"smirk",shortcodes:["smirk","smirking","smirking_face"],tags:["face","smirk"],group:"smileys & emotion",emoticons:[":j"],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f60f.png"},{emoji:"😒",name:"unamused",shortcodes:["unamused","unamused_face"],tags:["face","unamused","unhappy"],group:"smileys & emotion",emoticons:[":?"],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f612.png"},{emoji:"🙄",name:"roll_eyes",shortcodes:["rolling_eyes"],tags:["eyeroll","eyes","face","rolling"],group:"smileys & emotion",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f644.png"},{emoji:"😬",name:"grimacing",shortcodes:["grimacing","grimacing_face"],tags:["face","grimace"],group:"smileys & emotion",emoticons:["8D"],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f62c.png"},{emoji:"😮💨",name:"face_exhaling",shortcodes:["exhale","exhaling"],tags:["exhale","gasp","groan","relief","whisper","whistle"],group:"smileys & emotion",emoticons:[],version:13.1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f62e-200d-1f4a8.png"},{emoji:"🤥",name:"lying_face",shortcodes:["lying","lying_face"],tags:["face","lie","pinocchio"],group:"smileys & emotion",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f925.png"},{emoji:"😌",name:"relieved",shortcodes:["relieved","relieved_face"],tags:["face","relieved"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f60c.png"},{emoji:"😔",name:"pensive",shortcodes:["pensive","pensive_face"],tags:["dejected","face","pensive"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f614.png"},{emoji:"😪",name:"sleepy",shortcodes:["sleepy","sleepy_face"],tags:["face","good night","sleep"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f62a.png"},{emoji:"🤤",name:"drooling_face",shortcodes:["drooling","drooling_face"],tags:["drooling","face"],group:"smileys & emotion",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f924.png"},{emoji:"😴",name:"sleeping",shortcodes:["sleeping","sleeping_face"],tags:["face","good night","sleep","zzz"],group:"smileys & emotion",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f634.png"},{emoji:"😷",name:"mask",shortcodes:["mask","medical_mask"],tags:["cold","doctor","face","mask","sick"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f637.png"},{emoji:"🤒",name:"face_with_thermometer",shortcodes:["face_with_thermometer"],tags:["face","ill","sick","thermometer"],group:"smileys & emotion",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f912.png"},{emoji:"🤕",name:"face_with_head_bandage",shortcodes:["face_with_head_bandage"],tags:["bandage","face","hurt","injury"],group:"smileys & emotion",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f915.png"},{emoji:"🤢",name:"nauseated_face",shortcodes:["nauseated","nauseated_face"],tags:["face","nauseated","vomit"],group:"smileys & emotion",emoticons:["%("],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f922.png"},{emoji:"🤮",name:"vomiting_face",shortcodes:["face_vomiting","vomiting"],tags:["puke","sick","vomit"],group:"smileys & emotion",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f92e.png"},{emoji:"🤧",name:"sneezing_face",shortcodes:["sneezing","sneezing_face"],tags:["face","gesundheit","sneeze"],group:"smileys & emotion",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f927.png"},{emoji:"🥵",name:"hot_face",shortcodes:["hot","hot_face"],tags:["feverish","heat stroke","hot","red-faced","sweating"],group:"smileys & emotion",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f975.png"},{emoji:"🥶",name:"cold_face",shortcodes:["cold","cold_face"],tags:["blue-faced","cold","freezing","frostbite","icicles"],group:"smileys & emotion",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f976.png"},{emoji:"🥴",name:"woozy_face",shortcodes:["woozy","woozy_face"],tags:["dizzy","intoxicated","tipsy","uneven eyes","wavy mouth"],group:"smileys & emotion",emoticons:[":&"],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f974.png"},{emoji:"😵",name:"dizzy_face",shortcodes:["dizzy_face","knocked_out"],tags:["crossed-out eyes","dead","face","knocked out"],group:"smileys & emotion",emoticons:["xo","XO"],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f635.png"},{emoji:"😵💫",name:"face_with_spiral_eyes",shortcodes:["dizzy_eyes"],tags:["dizzy","hypnotized","spiral","trouble","whoa"],group:"smileys & emotion",emoticons:[],version:13.1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f635-200d-1f4ab.png"},{emoji:"🤯",name:"exploding_head",shortcodes:["exploding_head"],tags:["mind blown","shocked"],group:"smileys & emotion",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f92f.png"},{emoji:"🤠",name:"cowboy_hat_face",shortcodes:["cowboy","cowboy_face"],tags:["cowboy","cowgirl","face","hat"],group:"smileys & emotion",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f920.png"},{emoji:"🥳",name:"partying_face",shortcodes:["hooray","partying","partying_face"],tags:["celebration","hat","horn","party"],group:"smileys & emotion",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f973.png"},{emoji:"🥸",name:"disguised_face",shortcodes:["disguised","disguised_face"],tags:["disguise","face","glasses","incognito","nose"],group:"smileys & emotion",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f978.png"},{emoji:"😎",name:"sunglasses",shortcodes:["smiling_face_with_sunglasses","sunglasses_cool","too_cool"],tags:["bright","cool","face","sun","sunglasses"],group:"smileys & emotion",emoticons:["8)"],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f60e.png"},{emoji:"🤓",name:"nerd_face",shortcodes:["nerd","nerd_face"],tags:["face","geek","nerd"],group:"smileys & emotion",emoticons:[":B"],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f913.png"},{emoji:"🧐",name:"monocle_face",shortcodes:["face_with_monocle"],tags:["face","monocle","stuffy"],group:"smileys & emotion",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d0.png"},{emoji:"😕",name:"confused",shortcodes:["confused","confused_face"],tags:["confused","face","meh"],group:"smileys & emotion",emoticons:[":/"],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f615.png"},{emoji:"😟",name:"worried",shortcodes:["worried","worried_face"],tags:["face","worried"],group:"smileys & emotion",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f61f.png"},{emoji:"🙁",name:"slightly_frowning_face",shortcodes:["slightly_frowning_face"],tags:["face","frown"],group:"smileys & emotion",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f641.png"},{emoji:"☹",name:"frowning_face",shortcodes:["white_frowning_face"],tags:["face","frown"],group:"smileys & emotion",emoticons:[":("],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2639-fe0f.png"},{emoji:"😮",name:"open_mouth",shortcodes:["face_with_open_mouth","open_mouth"],tags:["face","mouth","open","sympathy"],group:"smileys & emotion",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f62e.png"},{emoji:"😯",name:"hushed",shortcodes:["hushed","hushed_face"],tags:["face","hushed","stunned","surprised"],group:"smileys & emotion",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f62f.png"},{emoji:"😲",name:"astonished",shortcodes:["astonished","astonished_face"],tags:["astonished","face","shocked","totally"],group:"smileys & emotion",emoticons:[":o",":O"],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f632.png"},{emoji:"😳",name:"flushed",shortcodes:["flushed","flushed_face"],tags:["dazed","face","flushed"],group:"smileys & emotion",emoticons:[":$"],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f633.png"},{emoji:"🥺",name:"pleading_face",shortcodes:["pleading","pleading_face"],tags:["begging","mercy","puppy eyes"],group:"smileys & emotion",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f97a.png"},{emoji:"😦",name:"frowning",shortcodes:["frowning","frowning_face"],tags:["face","frown","mouth","open"],group:"smileys & emotion",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f626.png"},{emoji:"😧",name:"anguished",shortcodes:["anguished","anguished_face"],tags:["anguished","face"],group:"smileys & emotion",emoticons:[":s",":S"],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f627.png"},{emoji:"😨",name:"fearful",shortcodes:["fearful","fearful_face"],tags:["face","fear","fearful","scared"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f628.png"},{emoji:"😰",name:"cold_sweat",shortcodes:["anxious","anxious_face","cold_sweat"],tags:["blue","cold","face","rushed","sweat"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f630.png"},{emoji:"😥",name:"disappointed_relieved",shortcodes:["disappointed_relieved","sad_relieved_face"],tags:["disappointed","face","relieved","whew"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f625.png"},{emoji:"😢",name:"cry",shortcodes:["cry","crying_face"],tags:["cry","face","sad","tear"],group:"smileys & emotion",emoticons:[":'("],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f622.png"},{emoji:"😭",name:"sob",shortcodes:["loudly_crying_face","sob"],tags:["cry","face","sad","sob","tear"],group:"smileys & emotion",emoticons:[":'o"],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f62d.png"},{emoji:"😱",name:"scream",shortcodes:["scream","screaming_in_fear"],tags:["face","fear","munch","scared","scream"],group:"smileys & emotion",emoticons:["Dx"],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f631.png"},{emoji:"😖",name:"confounded",shortcodes:["confounded","confounded_face"],tags:["confounded","face"],group:"smileys & emotion",emoticons:["x(","X("],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f616.png"},{emoji:"😣",name:"persevere",shortcodes:["persevere","persevering_face"],tags:["face","persevere"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f623.png"},{emoji:"😞",name:"disappointed",shortcodes:["disappointed","disappointed_face"],tags:["disappointed","face"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f61e.png"},{emoji:"😓",name:"sweat",shortcodes:["downcast_face","sweat"],tags:["cold","face","sweat"],group:"smileys & emotion",emoticons:[":<"],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f613.png"},{emoji:"😩",name:"weary",shortcodes:["weary","weary_face"],tags:["face","tired","weary"],group:"smileys & emotion",emoticons:["D:"],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f629.png"},{emoji:"😫",name:"tired_face",shortcodes:["tired","tired_face"],tags:["face","tired"],group:"smileys & emotion",emoticons:[":c",":C"],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f62b.png"},{emoji:"🥱",name:"yawning_face",shortcodes:["yawn","yawning","yawning_face"],tags:["bored","tired","yawn"],group:"smileys & emotion",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f971.png"},{emoji:"😤",name:"triumph",shortcodes:["nose_steam","triumph"],tags:["face","triumph","won"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f624.png"},{emoji:"😡",name:"pout",shortcodes:["pout","pouting_face","rage"],tags:["angry","enraged","face","mad","pouting","rage","red"],group:"smileys & emotion",emoticons:[">:/"],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f621.png"},{emoji:"😠",name:"angry",shortcodes:["angry","angry_face"],tags:["anger","angry","face","mad"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f620.png"},{emoji:"🤬",name:"cursing_face",shortcodes:["censored","face_with_symbols_on_mouth"],tags:["swearing"],group:"smileys & emotion",emoticons:[":@"],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f92c.png"},{emoji:"😈",name:"smiling_imp",shortcodes:["smiling_imp"],tags:["face","fairy tale","fantasy","horns","smile"],group:"smileys & emotion",emoticons:[">:)"],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f608.png"},{emoji:"👿",name:"imp",shortcodes:["angry_imp","imp"],tags:["demon","devil","face","fantasy","imp"],group:"smileys & emotion",emoticons:[">:("],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f47f.png"},{emoji:"💀",name:"skull",shortcodes:["skull"],tags:["death","face","fairy tale","monster"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f480.png"},{emoji:"☠",name:"skull_and_crossbones",shortcodes:["skull_and_crossbones"],tags:["crossbones","death","face","monster","skull"],group:"smileys & emotion",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2620-fe0f.png"},{emoji:"💩",name:"hankey",shortcodes:["poop","shit"],tags:["dung","face","monster","poo","poop"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4a9.png"},{emoji:"🤡",name:"clown_face",shortcodes:["clown","clown_face"],tags:["clown","face"],group:"smileys & emotion",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f921.png"},{emoji:"👹",name:"japanese_ogre",shortcodes:["japanese_ogre","ogre"],tags:["creature","face","fairy tale","fantasy","monster"],group:"smileys & emotion",emoticons:[">0)"],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f479.png"},{emoji:"👺",name:"japanese_goblin",shortcodes:["goblin","japanese_goblin"],tags:["creature","face","fairy tale","fantasy","monster"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f47a.png"},{emoji:"👻",name:"ghost",shortcodes:["ghost"],tags:["creature","face","fairy tale","fantasy","monster"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f47b.png"},{emoji:"👽",name:"alien",shortcodes:["alien"],tags:["creature","extraterrestrial","face","fantasy","ufo"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f47d.png"},{emoji:"👾",name:"space_invader",shortcodes:["alien_monster","space_invader"],tags:["alien","creature","extraterrestrial","face","monster","ufo"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f47e.png"},{emoji:"🤖",name:"robot",shortcodes:["robot","robot_face"],tags:["face","monster"],group:"smileys & emotion",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f916.png"},{emoji:"😺",name:"smiley_cat",shortcodes:["grinning_cat","smiley_cat"],tags:["cat","face","grinning","mouth","open","smile"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f63a.png"},{emoji:"😸",name:"smile_cat",shortcodes:["grinning_cat_with_closed_eyes","smile_cat"],tags:["cat","eye","face","grin","smile"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f638.png"},{emoji:"😹",name:"joy_cat",shortcodes:["joy_cat","tears_of_joy_cat"],tags:["cat","face","joy","tear"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f639.png"},{emoji:"😻",name:"heart_eyes_cat",shortcodes:["heart_eyes_cat","smiling_cat_with_heart_eyes"],tags:["cat","eye","face","heart","love","smile"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f63b.png"},{emoji:"😼",name:"smirk_cat",shortcodes:["smirk_cat","wry_smile_cat"],tags:["cat","face","ironic","smile","wry"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f63c.png"},{emoji:"😽",name:"kissing_cat",shortcodes:["kissing_cat"],tags:["cat","eye","face","kiss"],group:"smileys & emotion",emoticons:[":3"],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f63d.png"},{emoji:"🙀",name:"scream_cat",shortcodes:["scream_cat","weary_cat"],tags:["cat","face","oh","surprised","weary"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f640.png"},{emoji:"😿",name:"crying_cat_face",shortcodes:["crying_cat"],tags:["cat","cry","face","sad","tear"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f63f.png"},{emoji:"😾",name:"pouting_cat",shortcodes:["pouting_cat"],tags:["cat","face","pouting"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f63e.png"},{emoji:"🙈",name:"see_no_evil",shortcodes:["see_no_evil"],tags:["evil","face","forbidden","monkey","see"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f648.png"},{emoji:"🙉",name:"hear_no_evil",shortcodes:["hear_no_evil"],tags:["evil","face","forbidden","hear","monkey"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f649.png"},{emoji:"🙊",name:"speak_no_evil",shortcodes:["speak_no_evil"],tags:["evil","face","forbidden","monkey","speak"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f64a.png"},{emoji:"💋",name:"kiss",shortcodes:["kiss"],tags:["kiss","lips"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f48b.png"},{emoji:"💌",name:"love_letter",shortcodes:["love_letter"],tags:["heart","letter","love","mail"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f48c.png"},{emoji:"💘",name:"cupid",shortcodes:["cupid","heart_with_arrow"],tags:["arrow","cupid"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f498.png"},{emoji:"💝",name:"gift_heart",shortcodes:["gift_heart","heart_with_ribbon"],tags:["ribbon","valentine"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f49d.png"},{emoji:"💖",name:"sparkling_heart",shortcodes:["sparkling_heart"],tags:["excited","sparkle"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f496.png"},{emoji:"💗",name:"heartpulse",shortcodes:["growing_heart","heartpulse"],tags:["excited","growing","nervous","pulse"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f497.png"},{emoji:"💓",name:"heartbeat",shortcodes:["beating_heart","heartbeat"],tags:["beating","heartbeat","pulsating"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f493.png"},{emoji:"💞",name:"revolving_hearts",shortcodes:["revolving_hearts"],tags:["revolving"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f49e.png"},{emoji:"💕",name:"two_hearts",shortcodes:["two_hearts"],tags:["love"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f495.png"},{emoji:"💟",name:"heart_decoration",shortcodes:["heart_decoration"],tags:["heart"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f49f.png"},{emoji:"❣",name:"heavy_heart_exclamation",shortcodes:["heart_exclamation"],tags:["exclamation","mark","punctuation"],group:"smileys & emotion",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2763-fe0f.png"},{emoji:"💔",name:"broken_heart",shortcodes:["broken_heart"],tags:["break","broken"],group:"smileys & emotion",emoticons:["</3"],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f494.png"},{emoji:"❤🔥",name:"heart_on_fire",shortcodes:["heart_on_fire"],tags:["burn","heart","love","lust","sacred heart"],group:"smileys & emotion",emoticons:[],version:13.1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2764-fe0f-200d-1f525.png"},{emoji:"❤🩹",name:"mending_heart",shortcodes:["mending_heart"],tags:["healthier","improving","mending","recovering","recuperating","well"],group:"smileys & emotion",emoticons:[],version:13.1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2764-fe0f-200d-1fa79.png"},{emoji:"❤",name:"heart",shortcodes:["heart","red_heart"],tags:["heart"],group:"smileys & emotion",emoticons:["<3"],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2764-fe0f.png"},{emoji:"🧡",name:"orange_heart",shortcodes:["orange_heart"],tags:["orange"],group:"smileys & emotion",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9e1.png"},{emoji:"💛",name:"yellow_heart",shortcodes:["yellow_heart"],tags:["yellow"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f49b.png"},{emoji:"💚",name:"green_heart",shortcodes:["green_heart"],tags:["green"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f49a.png"},{emoji:"💙",name:"blue_heart",shortcodes:["blue_heart"],tags:["blue"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f499.png"},{emoji:"💜",name:"purple_heart",shortcodes:["purple_heart"],tags:["purple"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f49c.png"},{emoji:"🤎",name:"brown_heart",shortcodes:["brown_heart"],tags:["brown","heart"],group:"smileys & emotion",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f90e.png"},{emoji:"🖤",name:"black_heart",shortcodes:["black_heart"],tags:["black","evil","wicked"],group:"smileys & emotion",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5a4.png"},{emoji:"🤍",name:"white_heart",shortcodes:["white_heart"],tags:["heart","white"],group:"smileys & emotion",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f90d.png"},{emoji:"💯",name:"100",shortcodes:["100"],tags:["100","full","hundred","score"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4af.png"},{emoji:"💢",name:"anger",shortcodes:["anger"],tags:["angry","comic","mad"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4a2.png"},{emoji:"💥",name:"boom",shortcodes:["boom","collision"],tags:["boom","comic"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4a5.png"},{emoji:"💫",name:"dizzy",shortcodes:["dizzy"],tags:["comic","star"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4ab.png"},{emoji:"💦",name:"sweat_drops",shortcodes:["sweat_drops"],tags:["comic","splashing","sweat"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4a6.png"},{emoji:"💨",name:"dash",shortcodes:["dash","dashing_away"],tags:["comic","dash","running"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4a8.png"},{emoji:"🕳",name:"hole",shortcodes:["hole"],tags:["hole"],group:"smileys & emotion",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f573-fe0f.png"},{emoji:"💣",name:"bomb",shortcodes:["bomb"],tags:["comic"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4a3.png"},{emoji:"💬",name:"speech_balloon",shortcodes:["speech_balloon"],tags:["balloon","bubble","comic","dialog","speech"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4ac.png"},{emoji:"👁🗨️",name:"eye_speech_bubble",shortcodes:["eye_in_speech_bubble"],tags:["balloon","bubble","eye","speech","witness"],group:"smileys & emotion",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f441-fe0f-200d-1f5e8-fe0f.png"},{emoji:"🗨",name:"left_speech_bubble",shortcodes:["left_speech_bubble"],tags:["balloon","bubble","dialog","speech"],group:"smileys & emotion",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5e8-fe0f.png"},{emoji:"🗯",name:"right_anger_bubble",shortcodes:["right_anger_bubble"],tags:["angry","balloon","bubble","mad"],group:"smileys & emotion",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5ef-fe0f.png"},{emoji:"💭",name:"thought_balloon",shortcodes:["thought_balloon"],tags:["balloon","bubble","comic","thought"],group:"smileys & emotion",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4ad.png"},{emoji:"💤",name:"zzz",shortcodes:["zzz"],tags:["comic","good night","sleep","zzz"],group:"smileys & emotion",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4a4.png"},{emoji:"👋",name:"wave",shortcodes:["wave","waving_hand"],tags:["hand","wave","waving"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f44b.png"},{emoji:"🤚",name:"raised_back_of_hand",shortcodes:["raised_back_of_hand"],tags:["backhand","raised"],group:"people & body",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f91a.png"},{emoji:"🖐",name:"raised_hand_with_fingers_splayed",shortcodes:["raised_hand_with_fingers_splayed"],tags:["finger","hand","splayed"],group:"people & body",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f590-fe0f.png"},{emoji:"✋",name:"hand",shortcodes:["high_five","raised_hand"],tags:["hand","high 5","high five"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/270b.png"},{emoji:"🖖",name:"vulcan_salute",shortcodes:["vulcan"],tags:["finger","hand","spock","vulcan"],group:"people & body",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f596.png"},{emoji:"👌",name:"ok_hand",shortcodes:["ok_hand"],tags:["hand","ok"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f44c.png"},{emoji:"🤌",name:"pinched_fingers",shortcodes:["pinch","pinched_fingers"],tags:["fingers","hand gesture","interrogation","pinched","sarcastic"],group:"people & body",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f90c.png"},{emoji:"🤏",name:"pinching_hand",shortcodes:["pinching_hand"],tags:["small amount"],group:"people & body",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f90f.png"},{emoji:"✌",name:"v",shortcodes:["v","victory"],tags:["hand","v","victory"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/270c-fe0f.png"},{emoji:"🤞",name:"crossed_fingers",shortcodes:["fingers_crossed"],tags:["cross","finger","hand","luck"],group:"people & body",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f91e.png"},{emoji:"🤟",name:"love_you_gesture",shortcodes:["love_you_gesture"],tags:["hand","ily"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f91f.png"},{emoji:"🤘",name:"metal",shortcodes:["metal","sign_of_the_horns"],tags:["finger","hand","horns","rock-on"],group:"people & body",emoticons:["\\m/","\\M/"],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f918.png"},{emoji:"🤙",name:"call_me_hand",shortcodes:["call_me_hand"],tags:["call","hand","hang loose","shaka"],group:"people & body",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f919.png"},{emoji:"👈",name:"point_left",shortcodes:["point_left"],tags:["backhand","finger","hand","index","point"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f448.png"},{emoji:"👉",name:"point_right",shortcodes:["point_right"],tags:["backhand","finger","hand","index","point"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f449.png"},{emoji:"👆",name:"point_up_2",shortcodes:["point_up"],tags:["backhand","finger","hand","point","up"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f446.png"},{emoji:"🖕",name:"fu",shortcodes:["middle_finger"],tags:["finger","hand"],group:"people & body",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f595.png"},{emoji:"👇",name:"point_down",shortcodes:["point_down"],tags:["backhand","down","finger","hand","point"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f447.png"},{emoji:"☝",name:"point_up",shortcodes:["point_up_2"],tags:["finger","hand","index","point","up"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/261d-fe0f.png"},{emoji:"👍",name:"+1",shortcodes:["+1","thumbsup","yes"],tags:["+1","hand","thumb","up"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f44d.png"},{emoji:"👎",name:"-1",shortcodes:["-1","no","thumbsdown"],tags:["-1","down","hand","thumb"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f44e.png"},{emoji:"✊",name:"fist",shortcodes:["fist"],tags:["clenched","fist","hand","punch"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/270a.png"},{emoji:"👊",name:"facepunch",shortcodes:["punch"],tags:["clenched","fist","hand","punch"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f44a.png"},{emoji:"🤛",name:"fist_left",shortcodes:["left_facing_fist"],tags:["fist","leftwards"],group:"people & body",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f91b.png"},{emoji:"🤜",name:"fist_right",shortcodes:["right_facing_fist"],tags:["fist","rightwards"],group:"people & body",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f91c.png"},{emoji:"👏",name:"clap",shortcodes:["clap","clapping_hands"],tags:["clap","hand"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f44f.png"},{emoji:"🙌",name:"raised_hands",shortcodes:["raised_hands"],tags:["celebration","gesture","hand","hooray","raised"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f64c.png"},{emoji:"👐",name:"open_hands",shortcodes:["open_hands"],tags:["hand","open"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f450.png"},{emoji:"🤲",name:"palms_up_together",shortcodes:["palms_up_together"],tags:["prayer"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f932.png"},{emoji:"🤝",name:"handshake",shortcodes:["handshake"],tags:["agreement","hand","meeting","shake"],group:"people & body",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f91d.png"},{emoji:"🙏",name:"pray",shortcodes:["folded_hands","pray"],tags:["ask","hand","high 5","high five","please","pray","thanks"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f64f.png"},{emoji:"✍",name:"writing_hand",shortcodes:["writing_hand"],tags:["hand","write"],group:"people & body",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/270d-fe0f.png"},{emoji:"💅",name:"nail_care",shortcodes:["nail_care","nail_polish"],tags:["care","cosmetics","manicure","nail","polish"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f485.png"},{emoji:"🤳",name:"selfie",shortcodes:["selfie"],tags:["camera","phone"],group:"people & body",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f933.png"},{emoji:"💪",name:"muscle",shortcodes:["muscle","right_bicep"],tags:["biceps","comic","flex","muscle"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4aa.png"},{emoji:"🦾",name:"mechanical_arm",shortcodes:["mechanical_arm"],tags:["accessibility","prosthetic"],group:"people & body",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9be.png"},{emoji:"🦿",name:"mechanical_leg",shortcodes:["mechanical_leg"],tags:["accessibility","prosthetic"],group:"people & body",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9bf.png"},{emoji:"🦵",name:"leg",shortcodes:["leg"],tags:["kick","limb"],group:"people & body",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9b5.png"},{emoji:"🦶",name:"foot",shortcodes:["foot"],tags:["kick","stomp"],group:"people & body",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9b6.png"},{emoji:"👂",name:"ear",shortcodes:["ear"],tags:["body"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f442.png"},{emoji:"🦻",name:"ear_with_hearing_aid",shortcodes:["ear_with_hearing_aid","hearing_aid"],tags:["accessibility","hard of hearing"],group:"people & body",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9bb.png"},{emoji:"👃",name:"nose",shortcodes:["nose"],tags:["body"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f443.png"},{emoji:"🧠",name:"brain",shortcodes:["brain"],tags:["intelligent"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9e0.png"},{emoji:"🫀",name:"anatomical_heart",shortcodes:["anatomical_heart"],tags:["anatomical","cardiology","heart","organ","pulse"],group:"people & body",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fac0.png"},{emoji:"🫁",name:"lungs",shortcodes:["lungs"],tags:["breath","exhalation","inhalation","organ","respiration"],group:"people & body",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fac1.png"},{emoji:"🦷",name:"tooth",shortcodes:["tooth"],tags:["dentist"],group:"people & body",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9b7.png"},{emoji:"🦴",name:"bone",shortcodes:["bone"],tags:["skeleton"],group:"people & body",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9b4.png"},{emoji:"👀",name:"eyes",shortcodes:["eyes"],tags:["eye","face"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f440.png"},{emoji:"👁",name:"eye",shortcodes:["eye"],tags:["body"],group:"people & body",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f441-fe0f.png"},{emoji:"👅",name:"tongue",shortcodes:["tongue"],tags:["body"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f445.png"},{emoji:"👄",name:"lips",shortcodes:["lips","mouth"],tags:["lips"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f444.png"},{emoji:"👶",name:"baby",shortcodes:["baby"],tags:["young"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f476.png"},{emoji:"🧒",name:"child",shortcodes:["child"],tags:["gender-neutral","unspecified gender","young"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d2.png"},{emoji:"👦",name:"boy",shortcodes:["boy"],tags:["young"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f466.png"},{emoji:"👧",name:"girl",shortcodes:["girl"],tags:["virgo","young","zodiac"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f467.png"},{emoji:"🧑",name:"adult",shortcodes:["adult"],tags:["adult","gender-neutral","unspecified gender"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d1.png"},{emoji:"👱",name:"blond_haired_person",shortcodes:["blond_haired"],tags:["blond","blond-haired person","hair"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f471.png"},{emoji:"👨",name:"man",shortcodes:["man"],tags:["adult"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468.png"},{emoji:"🧔",name:"bearded_person",shortcodes:["person_bearded"],tags:["beard","person"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d4.png"},{emoji:"🧔♂",name:"man_beard",shortcodes:["man_bearded"],tags:["beard","man"],group:"people & body",emoticons:[],version:13.1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d4-200d-2642-fe0f.png"},{emoji:"🧔♀",name:"woman_beard",shortcodes:["woman_bearded"],tags:["beard","woman"],group:"people & body",emoticons:[],version:13.1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d4-200d-2640-fe0f.png"},{emoji:"👨🦰",name:"red_haired_man",shortcodes:["man_red_haired"],tags:["adult","man","red hair"],group:"people & body",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f9b0.png"},{emoji:"👨🦱",name:"curly_haired_man",shortcodes:["man_curly_haired"],tags:["adult","curly hair","man"],group:"people & body",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f9b1.png"},{emoji:"👨🦳",name:"white_haired_man",shortcodes:["man_white_haired"],tags:["adult","man","white hair"],group:"people & body",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f9b3.png"},{emoji:"👨🦲",name:"bald_man",shortcodes:["man_bald"],tags:["adult","bald","man"],group:"people & body",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f9b2.png"},{emoji:"👩",name:"woman",shortcodes:["woman"],tags:["adult"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469.png"},{emoji:"👩🦰",name:"red_haired_woman",shortcodes:["woman_red_haired"],tags:["adult","red hair","woman"],group:"people & body",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f9b0.png"},{emoji:"🧑🦰",name:"person_red_hair",shortcodes:["red_haired"],tags:["adult","gender-neutral","person","red hair","unspecified gender"],group:"people & body",emoticons:[],version:12.1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d1-200d-1f9b0.png"},{emoji:"👩🦱",name:"curly_haired_woman",shortcodes:["woman_curly_haired"],tags:["adult","curly hair","woman"],group:"people & body",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f9b1.png"},{emoji:"🧑🦱",name:"person_curly_hair",shortcodes:["curly_haired"],tags:["adult","curly hair","gender-neutral","person","unspecified gender"],group:"people & body",emoticons:[],version:12.1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d1-200d-1f9b1.png"},{emoji:"👩🦳",name:"white_haired_woman",shortcodes:["woman_white_haired"],tags:["adult","white hair","woman"],group:"people & body",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f9b3.png"},{emoji:"🧑🦳",name:"person_white_hair",shortcodes:["white_haired"],tags:["adult","gender-neutral","person","unspecified gender","white hair"],group:"people & body",emoticons:[],version:12.1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d1-200d-1f9b3.png"},{emoji:"👩🦲",name:"bald_woman",shortcodes:["woman_bald"],tags:["adult","bald","woman"],group:"people & body",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f9b2.png"},{emoji:"🧑🦲",name:"person_bald",shortcodes:["bald"],tags:["adult","bald","gender-neutral","person","unspecified gender"],group:"people & body",emoticons:[],version:12.1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d1-200d-1f9b2.png"},{emoji:"👱♀",name:"blond_haired_woman",shortcodes:["woman_blond_haired"],tags:["blond-haired woman","blonde","hair","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f471-200d-2640-fe0f.png"},{emoji:"👱♂",name:"blond_haired_man",shortcodes:["man_blond_haired"],tags:["blond","blond-haired man","hair","man"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f471-200d-2642-fe0f.png"},{emoji:"🧓",name:"older_adult",shortcodes:["older_adult"],tags:["adult","gender-neutral","old","unspecified gender"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d3.png"},{emoji:"👴",name:"older_man",shortcodes:["older_man"],tags:["adult","man","old"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f474.png"},{emoji:"👵",name:"older_woman",shortcodes:["older_woman"],tags:["adult","old","woman"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f475.png"},{emoji:"🙍",name:"frowning_person",shortcodes:["person_frowning"],tags:["frown","gesture"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f64d.png"},{emoji:"🙍♂",name:"frowning_man",shortcodes:["man_frowning"],tags:["frowning","gesture","man"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f64d-200d-2642-fe0f.png"},{emoji:"🙍♀",name:"frowning_woman",shortcodes:["woman_frowning"],tags:["frowning","gesture","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f64d-200d-2640-fe0f.png"},{emoji:"🙎",name:"pouting_face",shortcodes:["person_pouting","pouting"],tags:["gesture","pouting"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f64e.png"},{emoji:"🙎♂",name:"pouting_man",shortcodes:["man_pouting"],tags:["gesture","man","pouting"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f64e-200d-2642-fe0f.png"},{emoji:"🙎♀",name:"pouting_woman",shortcodes:["woman_pouting"],tags:["gesture","pouting","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f64e-200d-2640-fe0f.png"},{emoji:"🙅",name:"no_good",shortcodes:["no_good","person_gesturing_no"],tags:["forbidden","gesture","hand","person gesturing no","prohibited"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f645.png"},{emoji:"🙅♂",name:"ng_man",shortcodes:["man_gesturing_no"],tags:["forbidden","gesture","hand","man","man gesturing no","prohibited"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f645-200d-2642-fe0f.png"},{emoji:"🙅♀",name:"ng_woman",shortcodes:["woman_gesturing_no"],tags:["forbidden","gesture","hand","prohibited","woman","woman gesturing no"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f645-200d-2640-fe0f.png"},{emoji:"🙆",name:"ok_person",shortcodes:["all_good","person_gesturing_ok"],tags:["gesture","hand","ok","person gesturing ok"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f646.png"},{emoji:"🙆♂",name:"ok_man",shortcodes:["man_gesturing_ok"],tags:["gesture","hand","man","man gesturing ok","ok"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f646-200d-2642-fe0f.png"},{emoji:"🙆♀",name:"ok_woman",shortcodes:["woman_gesturing_ok"],tags:["gesture","hand","ok","woman","woman gesturing ok"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f646-200d-2640-fe0f.png"},{emoji:"💁",name:"information_desk_person",shortcodes:["person_tipping_hand"],tags:["hand","help","information","sassy","tipping"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f481.png"},{emoji:"💁♂",name:"sassy_man",shortcodes:["man_tipping_hand"],tags:["man","sassy","tipping hand"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f481-200d-2642-fe0f.png"},{emoji:"💁♀",name:"sassy_woman",shortcodes:["woman_tipping_hand"],tags:["sassy","tipping hand","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f481-200d-2640-fe0f.png"},{emoji:"🙋",name:"raising_hand",shortcodes:["person_raising_hand"],tags:["gesture","hand","happy","raised"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f64b.png"},{emoji:"🙋♂",name:"raising_hand_man",shortcodes:["man_raising_hand"],tags:["gesture","man","raising hand"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f64b-200d-2642-fe0f.png"},{emoji:"🙋♀",name:"raising_hand_woman",shortcodes:["woman_raising_hand"],tags:["gesture","raising hand","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f64b-200d-2640-fe0f.png"},{emoji:"🧏",name:"deaf_person",shortcodes:["deaf_person"],tags:["accessibility","deaf","ear","hear"],group:"people & body",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9cf.png"},{emoji:"🧏♂",name:"deaf_man",shortcodes:["deaf_man"],tags:["deaf","man"],group:"people & body",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9cf-200d-2642-fe0f.png"},{emoji:"🧏♀",name:"deaf_woman",shortcodes:["deaf_woman"],tags:["deaf","woman"],group:"people & body",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9cf-200d-2640-fe0f.png"},{emoji:"🙇",name:"bow",shortcodes:["bow","person_bowing"],tags:["apology","bow","gesture","sorry"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f647.png"},{emoji:"🙇♂",name:"bowing_man",shortcodes:["man_bowing"],tags:["apology","bowing","favor","gesture","man","sorry"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f647-200d-2642-fe0f.png"},{emoji:"🙇♀",name:"bowing_woman",shortcodes:["woman_bowing"],tags:["apology","bowing","favor","gesture","sorry","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f647-200d-2640-fe0f.png"},{emoji:"🤦",name:"facepalm",shortcodes:["facepalm","person_facepalming"],tags:["disbelief","exasperation","face","palm"],group:"people & body",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f926.png"},{emoji:"🤦♂",name:"man_facepalming",shortcodes:["man_facepalming"],tags:["disbelief","exasperation","facepalm","man"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f926-200d-2642-fe0f.png"},{emoji:"🤦♀",name:"woman_facepalming",shortcodes:["woman_facepalming"],tags:["disbelief","exasperation","facepalm","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f926-200d-2640-fe0f.png"},{emoji:"🤷",name:"shrug",shortcodes:["person_shrugging","shrug"],tags:["doubt","ignorance","indifference","shrug"],group:"people & body",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f937.png"},{emoji:"🤷♂",name:"man_shrugging",shortcodes:["man_shrugging"],tags:["doubt","ignorance","indifference","man","shrug"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f937-200d-2642-fe0f.png"},{emoji:"🤷♀",name:"woman_shrugging",shortcodes:["woman_shrugging"],tags:["doubt","ignorance","indifference","shrug","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f937-200d-2640-fe0f.png"},{emoji:"🧑⚕",name:"health_worker",shortcodes:["health_worker"],tags:["doctor","healthcare","nurse","therapist"],group:"people & body",emoticons:[],version:12.1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d1-200d-2695-fe0f.png"},{emoji:"👨⚕",name:"man_health_worker",shortcodes:["man_health_worker"],tags:["doctor","healthcare","man","nurse","therapist"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-2695-fe0f.png"},{emoji:"👩⚕",name:"woman_health_worker",shortcodes:["woman_health_worker"],tags:["doctor","healthcare","nurse","therapist","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-2695-fe0f.png"},{emoji:"🧑🎓",name:"student",shortcodes:["student"],tags:["graduate"],group:"people & body",emoticons:[],version:12.1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d1-200d-1f393.png"},{emoji:"👨🎓",name:"man_student",shortcodes:["man_student"],tags:["graduate","man","student"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f393.png"},{emoji:"👩🎓",name:"woman_student",shortcodes:["woman_student"],tags:["graduate","student","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f393.png"},{emoji:"🧑🏫",name:"teacher",shortcodes:["teacher"],tags:["instructor","professor"],group:"people & body",emoticons:[],version:12.1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d1-200d-1f3eb.png"},{emoji:"👨🏫",name:"man_teacher",shortcodes:["man_teacher"],tags:["instructor","man","professor","teacher"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f3eb.png"},{emoji:"👩🏫",name:"woman_teacher",shortcodes:["woman_teacher"],tags:["instructor","professor","teacher","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f3eb.png"},{emoji:"🧑⚖",name:"judge",shortcodes:["judge"],tags:["justice","scales"],group:"people & body",emoticons:[],version:12.1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d1-200d-2696-fe0f.png"},{emoji:"👨⚖",name:"man_judge",shortcodes:["man_judge"],tags:["judge","justice","man","scales"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-2696-fe0f.png"},{emoji:"👩⚖",name:"woman_judge",shortcodes:["woman_judge"],tags:["judge","justice","scales","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-2696-fe0f.png"},{emoji:"🧑🌾",name:"farmer",shortcodes:["farmer"],tags:["gardener","rancher"],group:"people & body",emoticons:[],version:12.1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d1-200d-1f33e.png"},{emoji:"👨🌾",name:"man_farmer",shortcodes:["man_farmer"],tags:["farmer","gardener","man","rancher"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f33e.png"},{emoji:"👩🌾",name:"woman_farmer",shortcodes:["woman_farmer"],tags:["farmer","gardener","rancher","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f33e.png"},{emoji:"🧑🍳",name:"cook",shortcodes:["cook"],tags:["chef"],group:"people & body",emoticons:[],version:12.1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d1-200d-1f373.png"},{emoji:"👨🍳",name:"man_cook",shortcodes:["man_cook"],tags:["chef","cook","man"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f373.png"},{emoji:"👩🍳",name:"woman_cook",shortcodes:["woman_cook"],tags:["chef","cook","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f373.png"},{emoji:"🧑🔧",name:"mechanic",shortcodes:["mechanic"],tags:["electrician","plumber","tradesperson"],group:"people & body",emoticons:[],version:12.1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d1-200d-1f527.png"},{emoji:"👨🔧",name:"man_mechanic",shortcodes:["man_mechanic"],tags:["electrician","man","mechanic","plumber","tradesperson"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f527.png"},{emoji:"👩🔧",name:"woman_mechanic",shortcodes:["woman_mechanic"],tags:["electrician","mechanic","plumber","tradesperson","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f527.png"},{emoji:"🧑🏭",name:"factory_worker",shortcodes:["factory_worker"],tags:["assembly","factory","industrial","worker"],group:"people & body",emoticons:[],version:12.1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d1-200d-1f3ed.png"},{emoji:"👨🏭",name:"man_factory_worker",shortcodes:["man_factory_worker"],tags:["assembly","factory","industrial","man","worker"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f3ed.png"},{emoji:"👩🏭",name:"woman_factory_worker",shortcodes:["woman_factory_worker"],tags:["assembly","factory","industrial","woman","worker"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f3ed.png"},{emoji:"🧑💼",name:"office_worker",shortcodes:["office_worker"],tags:["architect","business","manager","white-collar"],group:"people & body",emoticons:[],version:12.1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d1-200d-1f4bc.png"},{emoji:"👨💼",name:"man_office_worker",shortcodes:["man_office_worker"],tags:["architect","business","man","manager","white-collar"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f4bc.png"},{emoji:"👩💼",name:"woman_office_worker",shortcodes:["woman_office_worker"],tags:["architect","business","manager","white-collar","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f4bc.png"},{emoji:"🧑🔬",name:"scientist",shortcodes:["scientist"],tags:["biologist","chemist","engineer","physicist"],group:"people & body",emoticons:[],version:12.1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d1-200d-1f52c.png"},{emoji:"👨🔬",name:"man_scientist",shortcodes:["man_scientist"],tags:["biologist","chemist","engineer","man","physicist","scientist"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f52c.png"},{emoji:"👩🔬",name:"woman_scientist",shortcodes:["woman_scientist"],tags:["biologist","chemist","engineer","physicist","scientist","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f52c.png"},{emoji:"🧑💻",name:"technologist",shortcodes:["technologist"],tags:["coder","developer","inventor","software"],group:"people & body",emoticons:[],version:12.1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d1-200d-1f4bb.png"},{emoji:"👨💻",name:"man_technologist",shortcodes:["man_technologist"],tags:["coder","developer","inventor","man","software","technologist"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f4bb.png"},{emoji:"👩💻",name:"woman_technologist",shortcodes:["woman_technologist"],tags:["coder","developer","inventor","software","technologist","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f4bb.png"},{emoji:"🧑🎤",name:"singer",shortcodes:["singer"],tags:["actor","entertainer","rock","star"],group:"people & body",emoticons:[],version:12.1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d1-200d-1f3a4.png"},{emoji:"👨🎤",name:"man_singer",shortcodes:["man_singer"],tags:["actor","entertainer","man","rock","singer","star"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f3a4.png"},{emoji:"👩🎤",name:"woman_singer",shortcodes:["woman_singer"],tags:["actor","entertainer","rock","singer","star","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f3a4.png"},{emoji:"🧑🎨",name:"artist",shortcodes:["artist"],tags:["palette"],group:"people & body",emoticons:[],version:12.1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d1-200d-1f3a8.png"},{emoji:"👨🎨",name:"man_artist",shortcodes:["man_artist"],tags:["artist","man","palette"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f3a8.png"},{emoji:"👩🎨",name:"woman_artist",shortcodes:["woman_artist"],tags:["artist","palette","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f3a8.png"},{emoji:"🧑✈",name:"pilot",shortcodes:["pilot"],tags:["plane"],group:"people & body",emoticons:[],version:12.1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d1-200d-2708-fe0f.png"},{emoji:"👨✈",name:"man_pilot",shortcodes:["man_pilot"],tags:["man","pilot","plane"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-2708-fe0f.png"},{emoji:"👩✈",name:"woman_pilot",shortcodes:["woman_pilot"],tags:["pilot","plane","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-2708-fe0f.png"},{emoji:"🧑🚀",name:"astronaut",shortcodes:["astronaut"],tags:["rocket"],group:"people & body",emoticons:[],version:12.1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d1-200d-1f680.png"},{emoji:"👨🚀",name:"man_astronaut",shortcodes:["man_astronaut"],tags:["astronaut","man","rocket"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f680.png"},{emoji:"👩🚀",name:"woman_astronaut",shortcodes:["woman_astronaut"],tags:["astronaut","rocket","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f680.png"},{emoji:"🧑🚒",name:"firefighter",shortcodes:["firefighter"],tags:["firetruck"],group:"people & body",emoticons:[],version:12.1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d1-200d-1f692.png"},{emoji:"👨🚒",name:"man_firefighter",shortcodes:["man_firefighter"],tags:["firefighter","firetruck","man"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f692.png"},{emoji:"👩🚒",name:"woman_firefighter",shortcodes:["woman_firefighter"],tags:["firefighter","firetruck","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f692.png"},{emoji:"👮",name:"cop",shortcodes:["cop","police_officer"],tags:["cop","officer","police"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f46e.png"},{emoji:"👮♂",name:"policeman",shortcodes:["man_police_officer"],tags:["cop","man","officer","police"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f46e-200d-2642-fe0f.png"},{emoji:"👮♀",name:"policewoman",shortcodes:["woman_police_officer"],tags:["cop","officer","police","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f46e-200d-2640-fe0f.png"},{emoji:"🕵",name:"detective",shortcodes:["detective"],tags:["sleuth","spy"],group:"people & body",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f575-fe0f.png"},{emoji:"🕵♂️",name:"male_detective",shortcodes:["man_detective"],tags:["detective","man","sleuth","spy"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f575-fe0f-200d-2642-fe0f.png"},{emoji:"🕵♀️",name:"female_detective",shortcodes:["woman_detective"],tags:["detective","sleuth","spy","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f575-fe0f-200d-2640-fe0f.png"},{emoji:"💂",name:"guard",shortcodes:["guard"],tags:["guard"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f482.png"},{emoji:"💂♂",name:"guardsman",shortcodes:["man_guard"],tags:["guard","man"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f482-200d-2642-fe0f.png"},{emoji:"💂♀",name:"guardswoman",shortcodes:["woman_guard"],tags:["guard","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f482-200d-2640-fe0f.png"},{emoji:"🥷",name:"ninja",shortcodes:["ninja"],tags:["fighter","hidden","stealth"],group:"people & body",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f977.png"},{emoji:"👷",name:"construction_worker",shortcodes:["construction_worker"],tags:["construction","hat","worker"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f477.png"},{emoji:"👷♂",name:"construction_worker_man",shortcodes:["man_construction_worker"],tags:["construction","man","worker"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f477-200d-2642-fe0f.png"},{emoji:"👷♀",name:"construction_worker_woman",shortcodes:["woman_construction_worker"],tags:["construction","woman","worker"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f477-200d-2640-fe0f.png"},{emoji:"🤴",name:"prince",shortcodes:["prince"],tags:["prince"],group:"people & body",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f934.png"},{emoji:"👸",name:"princess",shortcodes:["princess"],tags:["fairy tale","fantasy"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f478.png"},{emoji:"👳",name:"person_with_turban",shortcodes:["person_wearing_turban"],tags:["turban"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f473.png"},{emoji:"👳♂",name:"man_with_turban",shortcodes:["man_wearing_turban"],tags:["man","turban"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f473-200d-2642-fe0f.png"},{emoji:"👳♀",name:"woman_with_turban",shortcodes:["woman_wearing_turban"],tags:["turban","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f473-200d-2640-fe0f.png"},{emoji:"👲",name:"man_with_gua_pi_mao",shortcodes:["person_with_skullcap"],tags:["cap","gua pi mao","hat","person","skullcap"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f472.png"},{emoji:"🧕",name:"woman_with_headscarf",shortcodes:["woman_with_headscarf"],tags:["headscarf","hijab","mantilla","tichel"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d5.png"},{emoji:"🤵",name:"person_in_tuxedo",shortcodes:["person_in_tuxedo"],tags:["groom","person","tuxedo"],group:"people & body",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f935.png"},{emoji:"🤵♂",name:"man_in_tuxedo",shortcodes:["man_in_tuxedo"],tags:["man","tuxedo"],group:"people & body",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f935-200d-2642-fe0f.png"},{emoji:"🤵♀",name:"woman_in_tuxedo",shortcodes:["woman_in_tuxedo"],tags:["tuxedo","woman"],group:"people & body",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f935-200d-2640-fe0f.png"},{emoji:"👰",name:"person_with_veil",shortcodes:["person_with_veil"],tags:["bride","person","veil","wedding"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f470.png"},{emoji:"👰♂",name:"man_with_veil",shortcodes:["man_with_veil"],tags:["man","veil"],group:"people & body",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f470-200d-2642-fe0f.png"},{emoji:"👰♀",name:"bride_with_veil",shortcodes:["woman_with_veil"],tags:["veil","woman"],group:"people & body",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f470-200d-2640-fe0f.png"},{emoji:"🤰",name:"pregnant_woman",shortcodes:["pregnant_woman"],tags:["pregnant","woman"],group:"people & body",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f930.png"},{emoji:"🤱",name:"breast_feeding",shortcodes:["breast_feeding"],tags:["baby","breast","nursing"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f931.png"},{emoji:"👩🍼",name:"woman_feeding_baby",shortcodes:["woman_feeding_baby"],tags:["baby","feeding","nursing","woman"],group:"people & body",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f37c.png"},{emoji:"👨🍼",name:"man_feeding_baby",shortcodes:["man_feeding_baby"],tags:["baby","feeding","man","nursing"],group:"people & body",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f37c.png"},{emoji:"🧑🍼",name:"person_feeding_baby",shortcodes:["person_feeding_baby"],tags:["baby","feeding","nursing","person"],group:"people & body",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d1-200d-1f37c.png"},{emoji:"👼",name:"angel",shortcodes:["angel"],tags:["angel","baby","face","fairy tale","fantasy"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f47c.png"},{emoji:"🎅",name:"santa",shortcodes:["santa"],tags:["celebration","christmas","claus","father","santa","santa claus"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f385.png"},{emoji:"🤶",name:"mrs_claus",shortcodes:["mrs_claus"],tags:["celebration","christmas","claus","mother","mrs.","mrs. claus"],group:"people & body",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f936.png"},{emoji:"🧑🎄",name:"mx_claus",shortcodes:["mx_claus"],tags:["claus, christmas"],group:"people & body",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d1-200d-1f384.png"},{emoji:"🦸",name:"superhero",shortcodes:["superhero"],tags:["good","hero","heroine","superpower"],group:"people & body",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9b8.png"},{emoji:"🦸♂",name:"superhero_man",shortcodes:["man_superhero"],tags:["good","hero","man","superpower"],group:"people & body",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9b8-200d-2642-fe0f.png"},{emoji:"🦸♀",name:"superhero_woman",shortcodes:["woman_superhero"],tags:["good","hero","heroine","superpower","woman"],group:"people & body",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9b8-200d-2640-fe0f.png"},{emoji:"🦹",name:"supervillain",shortcodes:["supervillain"],tags:["criminal","evil","superpower","villain"],group:"people & body",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9b9.png"},{emoji:"🦹♂",name:"supervillain_man",shortcodes:["man_supervillain"],tags:["criminal","evil","man","superpower","villain"],group:"people & body",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9b9-200d-2642-fe0f.png"},{emoji:"🦹♀",name:"supervillain_woman",shortcodes:["woman_supervillain"],tags:["criminal","evil","superpower","villain","woman"],group:"people & body",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9b9-200d-2640-fe0f.png"},{emoji:"🧙",name:"mage",shortcodes:["mage"],tags:["sorcerer","sorceress","witch","wizard"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d9.png"},{emoji:"🧙♂",name:"mage_man",shortcodes:["man_mage"],tags:["sorcerer","wizard"],group:"people & body",emoticons:[":{>"],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d9-200d-2642-fe0f.png"},{emoji:"🧙♀",name:"mage_woman",shortcodes:["woman_mage"],tags:["sorceress","witch"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d9-200d-2640-fe0f.png"},{emoji:"🧚",name:"fairy",shortcodes:["fairy"],tags:["oberon","puck","titania"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9da.png"},{emoji:"🧚♂",name:"fairy_man",shortcodes:["man_fairy"],tags:["oberon","puck"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9da-200d-2642-fe0f.png"},{emoji:"🧚♀",name:"fairy_woman",shortcodes:["woman_fairy"],tags:["titania"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9da-200d-2640-fe0f.png"},{emoji:"🧛",name:"vampire",shortcodes:["vampire"],tags:["dracula","undead"],group:"people & body",emoticons:[":E"],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9db.png"},{emoji:"🧛♂",name:"vampire_man",shortcodes:["man_vampire"],tags:["dracula","undead"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9db-200d-2642-fe0f.png"},{emoji:"🧛♀",name:"vampire_woman",shortcodes:["woman_vampire"],tags:["undead"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9db-200d-2640-fe0f.png"},{emoji:"🧜",name:"merperson",shortcodes:["merperson"],tags:["mermaid","merman","merwoman"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9dc.png"},{emoji:"🧜♂",name:"merman",shortcodes:["merman"],tags:["triton"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9dc-200d-2642-fe0f.png"},{emoji:"🧜♀",name:"mermaid",shortcodes:["mermaid"],tags:["merwoman"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9dc-200d-2640-fe0f.png"},{emoji:"🧝",name:"elf",shortcodes:["elf"],tags:["magical"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9dd.png"},{emoji:"🧝♂",name:"elf_man",shortcodes:["man_elf"],tags:["magical"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9dd-200d-2642-fe0f.png"},{emoji:"🧝♀",name:"elf_woman",shortcodes:["woman_elf"],tags:["magical"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9dd-200d-2640-fe0f.png"},{emoji:"🧞",name:"genie",shortcodes:["genie"],tags:["djinn"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9de.png"},{emoji:"🧞♂",name:"genie_man",shortcodes:["man_genie"],tags:["djinn"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9de-200d-2642-fe0f.png"},{emoji:"🧞♀",name:"genie_woman",shortcodes:["woman_genie"],tags:["djinn"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9de-200d-2640-fe0f.png"},{emoji:"🧟",name:"zombie",shortcodes:["zombie"],tags:["undead","walking dead"],group:"people & body",emoticons:["8#"],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9df.png"},{emoji:"🧟♂",name:"zombie_man",shortcodes:["man_zombie"],tags:["undead","walking dead"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9df-200d-2642-fe0f.png"},{emoji:"🧟♀",name:"zombie_woman",shortcodes:["woman_zombie"],tags:["undead","walking dead"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9df-200d-2640-fe0f.png"},{emoji:"💆",name:"massage",shortcodes:["massage","person_getting_massage"],tags:["face","massage","salon"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f486.png"},{emoji:"💆♂",name:"massage_man",shortcodes:["man_getting_massage"],tags:["face","man","massage"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f486-200d-2642-fe0f.png"},{emoji:"💆♀",name:"massage_woman",shortcodes:["woman_getting_massage"],tags:["face","massage","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f486-200d-2640-fe0f.png"},{emoji:"💇",name:"haircut",shortcodes:["haircut","person_getting_haircut"],tags:["barber","beauty","haircut","parlor"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f487.png"},{emoji:"💇♂",name:"haircut_man",shortcodes:["man_getting_haircut"],tags:["haircut","man"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f487-200d-2642-fe0f.png"},{emoji:"💇♀",name:"haircut_woman",shortcodes:["woman_getting_haircut"],tags:["haircut","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f487-200d-2640-fe0f.png"},{emoji:"🚶",name:"walking",shortcodes:["person_walking","walking"],tags:["hike","walk","walking"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6b6.png"},{emoji:"🚶♂",name:"walking_man",shortcodes:["man_walking"],tags:["hike","man","walk"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6b6-200d-2642-fe0f.png"},{emoji:"🚶♀",name:"walking_woman",shortcodes:["woman_walking"],tags:["hike","walk","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6b6-200d-2640-fe0f.png"},{emoji:"🧍",name:"standing_person",shortcodes:["person_standing","standing"],tags:["stand","standing"],group:"people & body",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9cd.png"},{emoji:"🧍♂",name:"standing_man",shortcodes:["man_standing"],tags:["man","standing"],group:"people & body",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9cd-200d-2642-fe0f.png"},{emoji:"🧍♀",name:"standing_woman",shortcodes:["woman_standing"],tags:["standing","woman"],group:"people & body",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9cd-200d-2640-fe0f.png"},{emoji:"🧎",name:"kneeling_person",shortcodes:["kneeling","person_kneeling"],tags:["kneel","kneeling"],group:"people & body",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9ce.png"},{emoji:"🧎♂",name:"kneeling_man",shortcodes:["man_kneeling"],tags:["kneeling","man"],group:"people & body",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9ce-200d-2642-fe0f.png"},{emoji:"🧎♀",name:"kneeling_woman",shortcodes:["woman_kneeling"],tags:["kneeling","woman"],group:"people & body",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9ce-200d-2640-fe0f.png"},{emoji:"🧑🦯",name:"person_with_probing_cane",shortcodes:["person_with_probing_cane","person_with_white_cane"],tags:["accessibility","blind"],group:"people & body",emoticons:[],version:12.1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d1-200d-1f9af.png"},{emoji:"👨🦯",name:"man_with_probing_cane",shortcodes:["man_with_probing_cane","man_with_white_cane"],tags:["accessibility","blind","man"],group:"people & body",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f9af.png"},{emoji:"👩🦯",name:"woman_with_probing_cane",shortcodes:["woman_with_probing_cane","woman_with_white_cane"],tags:["accessibility","blind","woman"],group:"people & body",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f9af.png"},{emoji:"🧑🦼",name:"person_in_motorized_wheelchair",shortcodes:["person_in_motorized_wheelchair"],tags:["accessibility","wheelchair"],group:"people & body",emoticons:[],version:12.1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d1-200d-1f9bc.png"},{emoji:"👨🦼",name:"man_in_motorized_wheelchair",shortcodes:["man_in_motorized_wheelchair"],tags:["accessibility","man","wheelchair"],group:"people & body",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f9bc.png"},{emoji:"👩🦼",name:"woman_in_motorized_wheelchair",shortcodes:["woman_in_motorized_wheelchair"],tags:["accessibility","wheelchair","woman"],group:"people & body",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f9bc.png"},{emoji:"🧑🦽",name:"person_in_manual_wheelchair",shortcodes:["person_in_manual_wheelchair"],tags:["accessibility","wheelchair"],group:"people & body",emoticons:[],version:12.1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d1-200d-1f9bd.png"},{emoji:"👨🦽",name:"man_in_manual_wheelchair",shortcodes:["man_in_manual_wheelchair"],tags:["accessibility","man","wheelchair"],group:"people & body",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f9bd.png"},{emoji:"👩🦽",name:"woman_in_manual_wheelchair",shortcodes:["woman_in_manual_wheelchair"],tags:["accessibility","wheelchair","woman"],group:"people & body",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f9bd.png"},{emoji:"🏃",name:"runner",shortcodes:["person_running","running"],tags:["marathon","running"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3c3.png"},{emoji:"🏃♂",name:"running_man",shortcodes:["man_running"],tags:["man","marathon","racing","running"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3c3-200d-2642-fe0f.png"},{emoji:"🏃♀",name:"running_woman",shortcodes:["woman_running"],tags:["marathon","racing","running","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3c3-200d-2640-fe0f.png"},{emoji:"💃",name:"dancer",shortcodes:["dancer","woman_dancing"],tags:["dance","dancing","woman"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f483.png"},{emoji:"🕺",name:"man_dancing",shortcodes:["man_dancing"],tags:["dance","dancing","man"],group:"people & body",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f57a.png"},{emoji:"🕴",name:"business_suit_levitating",shortcodes:["levitate","levitating","person_in_suit_levitating"],tags:["business","person","suit"],group:"people & body",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f574-fe0f.png"},{emoji:"👯",name:"dancers",shortcodes:["dancers","people_with_bunny_ears_partying"],tags:["bunny ear","dancer","partying"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f46f.png"},{emoji:"👯♂",name:"dancing_men",shortcodes:["men_with_bunny_ears_partying"],tags:["bunny ear","dancer","men","partying"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f46f-200d-2642-fe0f.png"},{emoji:"👯♀",name:"dancing_women",shortcodes:["women_with_bunny_ears_partying"],tags:["bunny ear","dancer","partying","women"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f46f-200d-2640-fe0f.png"},{emoji:"🧖",name:"sauna_person",shortcodes:["person_in_steamy_room"],tags:["sauna","steam room"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d6.png"},{emoji:"🧖♂",name:"sauna_man",shortcodes:["man_in_steamy_room"],tags:["sauna","steam room"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d6-200d-2642-fe0f.png"},{emoji:"🧖♀",name:"sauna_woman",shortcodes:["woman_in_steamy_room"],tags:["sauna","steam room"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d6-200d-2640-fe0f.png"},{emoji:"🧗",name:"climbing",shortcodes:["climbing","person_climbing"],tags:["climber"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d7.png"},{emoji:"🧗♂",name:"climbing_man",shortcodes:["man_climbing"],tags:["climber"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d7-200d-2642-fe0f.png"},{emoji:"🧗♀",name:"climbing_woman",shortcodes:["woman_climbing"],tags:["climber"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d7-200d-2640-fe0f.png"},{emoji:"🤺",name:"person_fencing",shortcodes:["fencer","fencing","person_fencing"],tags:["fencer","fencing","sword"],group:"people & body",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f93a.png"},{emoji:"🏇",name:"horse_racing",shortcodes:["horse_racing"],tags:["horse","jockey","racehorse","racing"],group:"people & body",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3c7.png"},{emoji:"⛷",name:"skier",shortcodes:["person_skiing","skier","skiing"],tags:["ski","snow"],group:"people & body",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26f7-fe0f.png"},{emoji:"🏂",name:"snowboarder",shortcodes:["person_snowboarding","snowboarder","snowboarding"],tags:["ski","snow","snowboard"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3c2.png"},{emoji:"🏌",name:"golfing",shortcodes:["golfer","golfing","person_golfing"],tags:["ball","golf"],group:"people & body",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3cc-fe0f.png"},{emoji:"🏌♂️",name:"golfing_man",shortcodes:["man_golfing"],tags:["golf","man"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3cc-fe0f-200d-2642-fe0f.png"},{emoji:"🏌♀️",name:"golfing_woman",shortcodes:["woman_golfing"],tags:["golf","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3cc-fe0f-200d-2640-fe0f.png"},{emoji:"🏄",name:"surfer",shortcodes:["person_surfing","surfer","surfing"],tags:["surfing"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3c4.png"},{emoji:"🏄♂",name:"surfing_man",shortcodes:["man_surfing"],tags:["man","surfing"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3c4-200d-2642-fe0f.png"},{emoji:"🏄♀",name:"surfing_woman",shortcodes:["woman_surfing"],tags:["surfing","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3c4-200d-2640-fe0f.png"},{emoji:"🚣",name:"rowboat",shortcodes:["person_rowing_boat","rowboat"],tags:["boat","rowboat"],group:"people & body",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6a3.png"},{emoji:"🚣♂",name:"rowing_man",shortcodes:["man_rowing_boat"],tags:["boat","man","rowboat"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6a3-200d-2642-fe0f.png"},{emoji:"🚣♀",name:"rowing_woman",shortcodes:["woman_rowing_boat"],tags:["boat","rowboat","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6a3-200d-2640-fe0f.png"},{emoji:"🏊",name:"swimmer",shortcodes:["person_swimming","swimmer","swimming"],tags:["swim"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3ca.png"},{emoji:"🏊♂",name:"swimming_man",shortcodes:["man_swimming"],tags:["man","swim"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3ca-200d-2642-fe0f.png"},{emoji:"🏊♀",name:"swimming_woman",shortcodes:["woman_swimming"],tags:["swim","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3ca-200d-2640-fe0f.png"},{emoji:"⛹",name:"bouncing_ball_person",shortcodes:["person_bouncing_ball"],tags:["ball"],group:"people & body",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26f9-fe0f.png"},{emoji:"⛹♂️",name:"basketball_man",shortcodes:["man_bouncing_ball"],tags:["ball","man"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26f9-fe0f-200d-2642-fe0f.png"},{emoji:"⛹♀️",name:"basketball_woman",shortcodes:["woman_bouncing_ball"],tags:["ball","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26f9-fe0f-200d-2640-fe0f.png"},{emoji:"🏋",name:"weight_lifting",shortcodes:["person_lifting_weights","weight_lifter","weight_lifting"],tags:["lifter","weight"],group:"people & body",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3cb-fe0f.png"},{emoji:"🏋♂️",name:"weight_lifting_man",shortcodes:["man_lifting_weights"],tags:["man","weight lifter"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3cb-fe0f-200d-2642-fe0f.png"},{emoji:"🏋♀️",name:"weight_lifting_woman",shortcodes:["woman_lifting_weights"],tags:["weight lifter","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3cb-fe0f-200d-2640-fe0f.png"},{emoji:"🚴",name:"bicyclist",shortcodes:["bicyclist","biking","person_biking"],tags:["bicycle","biking","cyclist"],group:"people & body",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6b4.png"},{emoji:"🚴♂",name:"biking_man",shortcodes:["man_biking"],tags:["bicycle","biking","cyclist","man"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6b4-200d-2642-fe0f.png"},{emoji:"🚴♀",name:"biking_woman",shortcodes:["woman_biking"],tags:["bicycle","biking","cyclist","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6b4-200d-2640-fe0f.png"},{emoji:"🚵",name:"mountain_bicyclist",shortcodes:["mountain_bicyclist","mountain_biking","person_mountain_biking"],tags:["bicycle","bicyclist","bike","cyclist","mountain"],group:"people & body",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6b5.png"},{emoji:"🚵♂",name:"mountain_biking_man",shortcodes:["man_mountain_biking"],tags:["bicycle","bike","cyclist","man","mountain"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6b5-200d-2642-fe0f.png"},{emoji:"🚵♀",name:"mountain_biking_woman",shortcodes:["woman_mountain_biking"],tags:["bicycle","bike","biking","cyclist","mountain","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6b5-200d-2640-fe0f.png"},{emoji:"🤸",name:"cartwheeling",shortcodes:["cartwheeling","person_cartwheel"],tags:["cartwheel","gymnastics"],group:"people & body",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f938.png"},{emoji:"🤸♂",name:"man_cartwheeling",shortcodes:["man_cartwheeling"],tags:["cartwheel","gymnastics","man"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f938-200d-2642-fe0f.png"},{emoji:"🤸♀",name:"woman_cartwheeling",shortcodes:["woman_cartwheeling"],tags:["cartwheel","gymnastics","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f938-200d-2640-fe0f.png"},{emoji:"🤼",name:"wrestling",shortcodes:["people_wrestling","wrestlers","wrestling"],tags:["wrestle","wrestler"],group:"people & body",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f93c.png"},{emoji:"🤼♂",name:"men_wrestling",shortcodes:["men_wrestling"],tags:["men","wrestle"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f93c-200d-2642-fe0f.png"},{emoji:"🤼♀",name:"women_wrestling",shortcodes:["women_wrestling"],tags:["women","wrestle"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f93c-200d-2640-fe0f.png"},{emoji:"🤽",name:"water_polo",shortcodes:["person_playing_water_polo","water_polo"],tags:["polo","water"],group:"people & body",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f93d.png"},{emoji:"🤽♂",name:"man_playing_water_polo",shortcodes:["man_playing_water_polo"],tags:["man","water polo"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f93d-200d-2642-fe0f.png"},{emoji:"🤽♀",name:"woman_playing_water_polo",shortcodes:["woman_playing_water_polo"],tags:["water polo","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f93d-200d-2640-fe0f.png"},{emoji:"🤾",name:"handball_person",shortcodes:["handball","person_playing_handball"],tags:["ball","handball"],group:"people & body",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f93e.png"},{emoji:"🤾♂",name:"man_playing_handball",shortcodes:["man_playing_handball"],tags:["handball","man"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f93e-200d-2642-fe0f.png"},{emoji:"🤾♀",name:"woman_playing_handball",shortcodes:["woman_playing_handball"],tags:["handball","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f93e-200d-2640-fe0f.png"},{emoji:"🤹",name:"juggling_person",shortcodes:["juggler","juggling","person_juggling"],tags:["balance","juggle","multitask","skill"],group:"people & body",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f939.png"},{emoji:"🤹♂",name:"man_juggling",shortcodes:["man_juggling"],tags:["juggling","man","multitask"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f939-200d-2642-fe0f.png"},{emoji:"🤹♀",name:"woman_juggling",shortcodes:["woman_juggling"],tags:["juggling","multitask","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f939-200d-2640-fe0f.png"},{emoji:"🧘",name:"lotus_position",shortcodes:["person_in_lotus_position"],tags:["meditation","yoga"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d8.png"},{emoji:"🧘♂",name:"lotus_position_man",shortcodes:["man_in_lotus_position"],tags:["meditation","yoga"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d8-200d-2642-fe0f.png"},{emoji:"🧘♀",name:"lotus_position_woman",shortcodes:["woman_in_lotus_position"],tags:["meditation","yoga"],group:"people & body",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d8-200d-2640-fe0f.png"},{emoji:"🛀",name:"bath",shortcodes:["bath","person_taking_bath"],tags:["bath","bathtub"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6c0.png"},{emoji:"🛌",name:"sleeping_bed",shortcodes:["person_in_bed","sleeping_accommodation"],tags:["good night","hotel","sleep"],group:"people & body",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6cc.png"},{emoji:"🧑🤝🧑",name:"people_holding_hands",shortcodes:["people_holding_hands"],tags:["couple","hand","hold","holding hands","person"],group:"people & body",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d1-200d-1f91d-200d-1f9d1.png"},{emoji:"👭",name:"two_women_holding_hands",shortcodes:["two_women_holding_hands"],tags:["couple","hand","holding hands","women"],group:"people & body",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f46d.png"},{emoji:"👫",name:"couple",shortcodes:["couple"],tags:["couple","hand","hold","holding hands","man","woman"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f46b.png"},{emoji:"👬",name:"two_men_holding_hands",shortcodes:["two_men_holding_hands"],tags:["couple","gemini","holding hands","man","men","twins","zodiac"],group:"people & body",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f46c.png"},{emoji:"💏",name:"couplekiss",shortcodes:["couple_kiss","couplekiss"],tags:["couple"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f48f.png"},{emoji:"👩❤💋👨",name:"couplekiss_man_woman",shortcodes:["kiss_mw","kiss_wm"],tags:["couple","kiss","man","woman"],group:"people & body",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-2764-fe0f-200d-1f48b-200d-1f468.png"},{emoji:"👨❤💋👨",name:"couplekiss_man_man",shortcodes:["kiss_mm"],tags:["couple","kiss","man"],group:"people & body",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-2764-fe0f-200d-1f48b-200d-1f468.png"},{emoji:"👩❤💋👩",name:"couplekiss_woman_woman",shortcodes:["kiss_ww"],tags:["couple","kiss","woman"],group:"people & body",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-2764-fe0f-200d-1f48b-200d-1f469.png"},{emoji:"💑",name:"couple_with_heart",shortcodes:["couple_with_heart"],tags:["couple","love"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f491.png"},{emoji:"👩❤👨",name:"couple_with_heart_woman_man",shortcodes:["couple_with_heart_mw","couple_with_heart_wm"],tags:["couple","couple with heart","love","man","woman"],group:"people & body",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-2764-fe0f-200d-1f468.png"},{emoji:"👨❤👨",name:"couple_with_heart_man_man",shortcodes:["couple_with_heart_mm"],tags:["couple","couple with heart","love","man"],group:"people & body",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-2764-fe0f-200d-1f468.png"},{emoji:"👩❤👩",name:"couple_with_heart_woman_woman",shortcodes:["couple_with_heart_ww"],tags:["couple","couple with heart","love","woman"],group:"people & body",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-2764-fe0f-200d-1f469.png"},{emoji:"👪",name:"family",shortcodes:["family"],tags:["family"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f46a.png"},{emoji:"👨👩👦",name:"family_man_woman_boy",shortcodes:["family_mwb"],tags:["boy","family","man","woman"],group:"people & body",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f469-200d-1f466.png"},{emoji:"👨👩👧",name:"family_man_woman_girl",shortcodes:["family_mwg"],tags:["family","girl","man","woman"],group:"people & body",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f469-200d-1f467.png"},{emoji:"👨👩👧👦",name:"family_man_woman_girl_boy",shortcodes:["family_mwgb"],tags:["boy","family","girl","man","woman"],group:"people & body",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f469-200d-1f467-200d-1f466.png"},{emoji:"👨👩👦👦",name:"family_man_woman_boy_boy",shortcodes:["family_mwbb"],tags:["boy","family","man","woman"],group:"people & body",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f469-200d-1f466-200d-1f466.png"},{emoji:"👨👩👧👧",name:"family_man_woman_girl_girl",shortcodes:["family_mwgg"],tags:["family","girl","man","woman"],group:"people & body",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f469-200d-1f467-200d-1f467.png"},{emoji:"👨👨👦",name:"family_man_man_boy",shortcodes:["family_mmb"],tags:["boy","family","man"],group:"people & body",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f468-200d-1f466.png"},{emoji:"👨👨👧",name:"family_man_man_girl",shortcodes:["family_mmg"],tags:["family","girl","man"],group:"people & body",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f468-200d-1f467.png"},{emoji:"👨👨👧👦",name:"family_man_man_girl_boy",shortcodes:["family_mmgb"],tags:["boy","family","girl","man"],group:"people & body",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f468-200d-1f467-200d-1f466.png"},{emoji:"👨👨👦👦",name:"family_man_man_boy_boy",shortcodes:["family_mmbb"],tags:["boy","family","man"],group:"people & body",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f468-200d-1f466-200d-1f466.png"},{emoji:"👨👨👧👧",name:"family_man_man_girl_girl",shortcodes:["family_mmgg"],tags:["family","girl","man"],group:"people & body",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f468-200d-1f467-200d-1f467.png"},{emoji:"👩👩👦",name:"family_woman_woman_boy",shortcodes:["family_wwb"],tags:["boy","family","woman"],group:"people & body",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f469-200d-1f466.png"},{emoji:"👩👩👧",name:"family_woman_woman_girl",shortcodes:["family_wwg"],tags:["family","girl","woman"],group:"people & body",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f469-200d-1f467.png"},{emoji:"👩👩👧👦",name:"family_woman_woman_girl_boy",shortcodes:["family_wwgb"],tags:["boy","family","girl","woman"],group:"people & body",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f469-200d-1f467-200d-1f466.png"},{emoji:"👩👩👦👦",name:"family_woman_woman_boy_boy",shortcodes:["family_wwbb"],tags:["boy","family","woman"],group:"people & body",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f469-200d-1f466-200d-1f466.png"},{emoji:"👩👩👧👧",name:"family_woman_woman_girl_girl",shortcodes:["family_wwgg"],tags:["family","girl","woman"],group:"people & body",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f469-200d-1f467-200d-1f467.png"},{emoji:"👨👦",name:"family_man_boy",shortcodes:["family_mb"],tags:["boy","family","man"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f466.png"},{emoji:"👨👦👦",name:"family_man_boy_boy",shortcodes:["family_mbb"],tags:["boy","family","man"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f466-200d-1f466.png"},{emoji:"👨👧",name:"family_man_girl",shortcodes:["family_mg"],tags:["family","girl","man"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f467.png"},{emoji:"👨👧👦",name:"family_man_girl_boy",shortcodes:["family_mgb"],tags:["boy","family","girl","man"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f467-200d-1f466.png"},{emoji:"👨👧👧",name:"family_man_girl_girl",shortcodes:["family_mgg"],tags:["family","girl","man"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f467-200d-1f467.png"},{emoji:"👩👦",name:"family_woman_boy",shortcodes:["family_wb"],tags:["boy","family","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f466.png"},{emoji:"👩👦👦",name:"family_woman_boy_boy",shortcodes:["family_wbb"],tags:["boy","family","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f466-200d-1f466.png"},{emoji:"👩👧",name:"family_woman_girl",shortcodes:["family_wg"],tags:["family","girl","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f467.png"},{emoji:"👩👧👦",name:"family_woman_girl_boy",shortcodes:["family_wgb"],tags:["boy","family","girl","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f467-200d-1f466.png"},{emoji:"👩👧👧",name:"family_woman_girl_girl",shortcodes:["family_wgg"],tags:["family","girl","woman"],group:"people & body",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f467-200d-1f467.png"},{emoji:"🗣",name:"speaking_head",shortcodes:["speaking_head"],tags:["face","head","silhouette","speak","speaking"],group:"people & body",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5e3-fe0f.png"},{emoji:"👤",name:"bust_in_silhouette",shortcodes:["bust_in_silhouette"],tags:["bust","silhouette"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f464.png"},{emoji:"👥",name:"busts_in_silhouette",shortcodes:["busts_in_silhouette"],tags:["bust","silhouette"],group:"people & body",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f465.png"},{emoji:"🫂",name:"people_hugging",shortcodes:["people_hugging"],tags:["goodbye","hello","hug","thanks"],group:"people & body",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fac2.png"},{emoji:"👣",name:"footprints",shortcodes:["footprints"],tags:["clothing","footprint","print"],group:"people & body",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f463.png"},{emoji:"🏻",name:"tone1",shortcodes:["tone1","tone_light"],tags:["skin tone","type 1–2"],group:"components",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3fb.png"},{emoji:"🏼",name:"tone2",shortcodes:["tone2","tone_medium_light"],tags:["skin tone","type 3"],group:"components",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3fc.png"},{emoji:"🏽",name:"tone3",shortcodes:["tone3","tone_medium"],tags:["skin tone","type 4"],group:"components",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3fd.png"},{emoji:"🏾",name:"tone4",shortcodes:["tone4","tone_medium_dark"],tags:["skin tone","type 5"],group:"components",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3fe.png"},{emoji:"🏿",name:"tone5",shortcodes:["tone5","tone_dark"],tags:["skin tone","type 6"],group:"components",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3ff.png"},{emoji:"🦰",name:"red_hair",shortcodes:["red_hair"],tags:["ginger","redhead"],group:"components",emoticons:[],version:11},{emoji:"🦱",name:"curly_hair",shortcodes:["curly_hair"],tags:["afro","curly","ringlets"],group:"components",emoticons:[],version:11},{emoji:"🦳",name:"white_hair",shortcodes:["white_hair"],tags:["gray","hair","old","white"],group:"components",emoticons:[],version:11},{emoji:"🦲",name:"no_hair",shortcodes:["no_hair"],tags:["chemotherapy","hairless","no hair","shaven"],group:"components",emoticons:[],version:11},{emoji:"🐵",name:"monkey_face",shortcodes:["monkey_face"],tags:["face","monkey"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f435.png"},{emoji:"🐒",name:"monkey",shortcodes:["monkey"],tags:["monkey"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f412.png"},{emoji:"🦍",name:"gorilla",shortcodes:["gorilla"],tags:["gorilla"],group:"animals & nature",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f98d.png"},{emoji:"🦧",name:"orangutan",shortcodes:["orangutan"],tags:["ape"],group:"animals & nature",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9a7.png"},{emoji:"🐶",name:"dog",shortcodes:["dog_face"],tags:["dog","face","pet"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f436.png"},{emoji:"🐕",name:"dog2",shortcodes:["dog"],tags:["pet"],group:"animals & nature",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f415.png"},{emoji:"🦮",name:"guide_dog",shortcodes:["guide_dog"],tags:["accessibility","blind","guide"],group:"animals & nature",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9ae.png"},{emoji:"🐕🦺",name:"service_dog",shortcodes:["service_dog"],tags:["accessibility","assistance","dog","service"],group:"animals & nature",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f415-200d-1f9ba.png"},{emoji:"🐩",name:"poodle",shortcodes:["poodle"],tags:["dog"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f429.png"},{emoji:"🐺",name:"wolf",shortcodes:["wolf","wolf_face"],tags:["face"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f43a.png"},{emoji:"🦊",name:"fox_face",shortcodes:["fox","fox_face"],tags:["face"],group:"animals & nature",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f98a.png"},{emoji:"🦝",name:"raccoon",shortcodes:["raccoon"],tags:["curious","sly"],group:"animals & nature",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f99d.png"},{emoji:"🐱",name:"cat",shortcodes:["cat_face"],tags:["cat","face","pet"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f431.png"},{emoji:"🐈",name:"cat2",shortcodes:["cat"],tags:["pet"],group:"animals & nature",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f408.png"},{emoji:"🐈⬛",name:"black_cat",shortcodes:["black_cat"],tags:["black","cat","unlucky"],group:"animals & nature",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f408-200d-2b1b.png"},{emoji:"🦁",name:"lion",shortcodes:["lion","lion_face"],tags:["face","leo","zodiac"],group:"animals & nature",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f981.png"},{emoji:"🐯",name:"tiger",shortcodes:["tiger_face"],tags:["face","tiger"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f42f.png"},{emoji:"🐅",name:"tiger2",shortcodes:["tiger"],tags:["tiger"],group:"animals & nature",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f405.png"},{emoji:"🐆",name:"leopard",shortcodes:["leopard"],tags:["leopard"],group:"animals & nature",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f406.png"},{emoji:"🐴",name:"horse",shortcodes:["horse_face"],tags:["face","horse"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f434.png"},{emoji:"🐎",name:"racehorse",shortcodes:["horse","racehorse"],tags:["equestrian","racehorse","racing"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f40e.png"},{emoji:"🦄",name:"unicorn",shortcodes:["unicorn","unicorn_face"],tags:["face"],group:"animals & nature",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f984.png"},{emoji:"🦓",name:"zebra",shortcodes:["zebra"],tags:["stripe"],group:"animals & nature",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f993.png"},{emoji:"🦌",name:"deer",shortcodes:["deer"],tags:["deer"],group:"animals & nature",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f98c.png"},{emoji:"🦬",name:"bison",shortcodes:["bison"],tags:["buffalo","herd","wisent"],group:"animals & nature",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9ac.png"},{emoji:"🐮",name:"cow",shortcodes:["cow_face"],tags:["cow","face"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f42e.png"},{emoji:"🐂",name:"ox",shortcodes:["ox"],tags:["bull","taurus","zodiac"],group:"animals & nature",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f402.png"},{emoji:"🐃",name:"water_buffalo",shortcodes:["water_buffalo"],tags:["buffalo","water"],group:"animals & nature",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f403.png"},{emoji:"🐄",name:"cow2",shortcodes:["cow"],tags:["cow"],group:"animals & nature",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f404.png"},{emoji:"🐷",name:"pig",shortcodes:["pig_face"],tags:["face","pig"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f437.png"},{emoji:"🐖",name:"pig2",shortcodes:["pig"],tags:["sow"],group:"animals & nature",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f416.png"},{emoji:"🐗",name:"boar",shortcodes:["boar"],tags:["pig"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f417.png"},{emoji:"🐽",name:"pig_nose",shortcodes:["pig_nose"],tags:["face","nose","pig"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f43d.png"},{emoji:"🐏",name:"ram",shortcodes:["ram"],tags:["aries","male","sheep","zodiac"],group:"animals & nature",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f40f.png"},{emoji:"🐑",name:"sheep",shortcodes:["ewe","sheep"],tags:["female","sheep"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f411.png"},{emoji:"🐐",name:"goat",shortcodes:["goat"],tags:["capricorn","zodiac"],group:"animals & nature",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f410.png"},{emoji:"🐪",name:"dromedary_camel",shortcodes:["dromedary_camel"],tags:["dromedary","hump"],group:"animals & nature",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f42a.png"},{emoji:"🐫",name:"camel",shortcodes:["camel"],tags:["bactrian","camel","hump"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f42b.png"},{emoji:"🦙",name:"llama",shortcodes:["llama"],tags:["alpaca","guanaco","vicuña","wool"],group:"animals & nature",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f999.png"},{emoji:"🦒",name:"giraffe",shortcodes:["giraffe"],tags:["spots"],group:"animals & nature",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f992.png"},{emoji:"🐘",name:"elephant",shortcodes:["elephant"],tags:["elephant"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f418.png"},{emoji:"🦣",name:"mammoth",shortcodes:["mammoth"],tags:["extinction","large","tusk","woolly"],group:"animals & nature",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9a3.png"},{emoji:"🦏",name:"rhinoceros",shortcodes:["rhino","rhinoceros"],tags:["rhinoceros"],group:"animals & nature",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f98f.png"},{emoji:"🦛",name:"hippopotamus",shortcodes:["hippo"],tags:["hippo"],group:"animals & nature",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f99b.png"},{emoji:"🐭",name:"mouse",shortcodes:["mouse_face"],tags:["face","mouse"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f42d.png"},{emoji:"🐁",name:"mouse2",shortcodes:["mouse"],tags:["mouse"],group:"animals & nature",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f401.png"},{emoji:"🐀",name:"rat",shortcodes:["rat"],tags:["rat"],group:"animals & nature",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f400.png"},{emoji:"🐹",name:"hamster",shortcodes:["hamster","hamster_face"],tags:["face","pet"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f439.png"},{emoji:"🐰",name:"rabbit",shortcodes:["rabbit_face"],tags:["bunny","face","pet","rabbit"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f430.png"},{emoji:"🐇",name:"rabbit2",shortcodes:["rabbit"],tags:["bunny","pet"],group:"animals & nature",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f407.png"},{emoji:"🐿",name:"chipmunk",shortcodes:["chipmunk"],tags:["squirrel"],group:"animals & nature",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f43f-fe0f.png"},{emoji:"🦫",name:"beaver",shortcodes:["beaver"],tags:["dam"],group:"animals & nature",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9ab.png"},{emoji:"🦔",name:"hedgehog",shortcodes:["hedgehog"],tags:["spiny"],group:"animals & nature",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f994.png"},{emoji:"🦇",name:"bat",shortcodes:["bat"],tags:["vampire"],group:"animals & nature",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f987.png"},{emoji:"🐻",name:"bear",shortcodes:["bear","bear_face"],tags:["face"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f43b.png"},{emoji:"🐻❄",name:"polar_bear",shortcodes:["polar_bear","polar_bear_face"],tags:["arctic","bear","white"],group:"animals & nature",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f43b-200d-2744-fe0f.png"},{emoji:"🐨",name:"koala",shortcodes:["koala","koala_face"],tags:["face","marsupial"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f428.png"},{emoji:"🐼",name:"panda_face",shortcodes:["panda","panda_face"],tags:["face"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f43c.png"},{emoji:"🦥",name:"sloth",shortcodes:["sloth"],tags:["lazy","slow"],group:"animals & nature",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9a5.png"},{emoji:"🦦",name:"otter",shortcodes:["otter"],tags:["fishing","playful"],group:"animals & nature",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9a6.png"},{emoji:"🦨",name:"skunk",shortcodes:["skunk"],tags:["stink"],group:"animals & nature",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9a8.png"},{emoji:"🦘",name:"kangaroo",shortcodes:["kangaroo"],tags:["australia","joey","jump","marsupial"],group:"animals & nature",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f998.png"},{emoji:"🦡",name:"badger",shortcodes:["badger"],tags:["honey badger","pester"],group:"animals & nature",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9a1.png"},{emoji:"🐾",name:"feet",shortcodes:["paw_prints"],tags:["feet","paw","print"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f43e.png"},{emoji:"🦃",name:"turkey",shortcodes:["turkey"],tags:["bird"],group:"animals & nature",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f983.png"},{emoji:"🐔",name:"chicken",shortcodes:["chicken","chicken_face"],tags:["bird"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f414.png"},{emoji:"🐓",name:"rooster",shortcodes:["rooster"],tags:["bird"],group:"animals & nature",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f413.png"},{emoji:"🐣",name:"hatching_chick",shortcodes:["hatching_chick"],tags:["baby","bird","chick","hatching"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f423.png"},{emoji:"🐤",name:"baby_chick",shortcodes:["baby_chick"],tags:["baby","bird","chick"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f424.png"},{emoji:"🐥",name:"hatched_chick",shortcodes:["hatched_chick"],tags:["baby","bird","chick"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f425.png"},{emoji:"🐦",name:"bird",shortcodes:["bird","bird_face"],tags:["bird"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f426.png"},{emoji:"🐧",name:"penguin",shortcodes:["penguin","penguin_face"],tags:["bird"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f427.png"},{emoji:"🕊",name:"dove",shortcodes:["dove"],tags:["bird","fly","peace"],group:"animals & nature",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f54a-fe0f.png"},{emoji:"🦅",name:"eagle",shortcodes:["eagle"],tags:["bird"],group:"animals & nature",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f985.png"},{emoji:"🦆",name:"duck",shortcodes:["duck"],tags:["bird"],group:"animals & nature",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f986.png"},{emoji:"🦢",name:"swan",shortcodes:["swan"],tags:["bird","cygnet","ugly duckling"],group:"animals & nature",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9a2.png"},{emoji:"🦉",name:"owl",shortcodes:["owl"],tags:["bird","wise"],group:"animals & nature",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f989.png"},{emoji:"🦤",name:"dodo",shortcodes:["dodo"],tags:["extinction","large","mauritius"],group:"animals & nature",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9a4.png"},{emoji:"🪶",name:"feather",shortcodes:["feather"],tags:["bird","flight","light","plumage"],group:"animals & nature",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fab6.png"},{emoji:"🦩",name:"flamingo",shortcodes:["flamingo"],tags:["flamboyant","tropical"],group:"animals & nature",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9a9.png"},{emoji:"🦚",name:"peacock",shortcodes:["peacock"],tags:["bird","ostentatious","peahen","proud"],group:"animals & nature",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f99a.png"},{emoji:"🦜",name:"parrot",shortcodes:["parrot"],tags:["bird","pirate","talk"],group:"animals & nature",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f99c.png"},{emoji:"🐸",name:"frog",shortcodes:["frog","frog_face"],tags:["face"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f438.png"},{emoji:"🐊",name:"crocodile",shortcodes:["crocodile"],tags:["crocodile"],group:"animals & nature",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f40a.png"},{emoji:"🐢",name:"turtle",shortcodes:["turtle"],tags:["terrapin","tortoise"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f422.png"},{emoji:"🦎",name:"lizard",shortcodes:["lizard"],tags:["reptile"],group:"animals & nature",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f98e.png"},{emoji:"🐍",name:"snake",shortcodes:["snake"],tags:["bearer","ophiuchus","serpent","zodiac"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f40d.png"},{emoji:"🐲",name:"dragon_face",shortcodes:["dragon_face"],tags:["dragon","face","fairy tale"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f432.png"},{emoji:"🐉",name:"dragon",shortcodes:["dragon"],tags:["fairy tale"],group:"animals & nature",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f409.png"},{emoji:"🦕",name:"sauropod",shortcodes:["sauropod"],tags:["brachiosaurus","brontosaurus","diplodocus"],group:"animals & nature",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f995.png"},{emoji:"🦖",name:"t-rex",shortcodes:["t-rex","trex"],tags:["t-rex","tyrannosaurus rex"],group:"animals & nature",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f996.png"},{emoji:"🐳",name:"whale",shortcodes:["spouting_whale"],tags:["face","spouting","whale"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f433.png"},{emoji:"🐋",name:"whale2",shortcodes:["whale"],tags:["whale"],group:"animals & nature",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f40b.png"},{emoji:"🐬",name:"dolphin",shortcodes:["dolphin"],tags:["flipper"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f42c.png"},{emoji:"🦭",name:"seal",shortcodes:["seal"],tags:["sea lion"],group:"animals & nature",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9ad.png"},{emoji:"🐟",name:"fish",shortcodes:["fish"],tags:["pisces","zodiac"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f41f.png"},{emoji:"🐠",name:"tropical_fish",shortcodes:["tropical_fish"],tags:["fish","tropical"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f420.png"},{emoji:"🐡",name:"blowfish",shortcodes:["blowfish"],tags:["fish"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f421.png"},{emoji:"🦈",name:"shark",shortcodes:["shark"],tags:["fish"],group:"animals & nature",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f988.png"},{emoji:"🐙",name:"octopus",shortcodes:["octopus"],tags:["octopus"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f419.png"},{emoji:"🐚",name:"shell",shortcodes:["shell"],tags:["shell","spiral"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f41a.png"},{emoji:"🐌",name:"snail",shortcodes:["snail"],tags:["snail"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f40c.png"},{emoji:"🦋",name:"butterfly",shortcodes:["butterfly"],tags:["insect","pretty"],group:"animals & nature",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f98b.png"},{emoji:"🐛",name:"bug",shortcodes:["bug"],tags:["insect"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f41b.png"},{emoji:"🐜",name:"ant",shortcodes:["ant"],tags:["insect"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f41c.png"},{emoji:"🐝",name:"bee",shortcodes:["bee"],tags:["bee","insect"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f41d.png"},{emoji:"🪲",name:"beetle",shortcodes:["beetle"],tags:["bug","insect"],group:"animals & nature",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fab2.png"},{emoji:"🐞",name:"lady_beetle",shortcodes:["lady_beetle"],tags:["beetle","insect","ladybird","ladybug"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f41e.png"},{emoji:"🦗",name:"cricket",shortcodes:["cricket"],tags:["grasshopper"],group:"animals & nature",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f997.png"},{emoji:"🪳",name:"cockroach",shortcodes:["cockroach"],tags:["insect","pest","roach"],group:"animals & nature",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fab3.png"},{emoji:"🕷",name:"spider",shortcodes:["spider"],tags:["insect"],group:"animals & nature",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f577-fe0f.png"},{emoji:"🕸",name:"spider_web",shortcodes:["spider_web"],tags:["spider","web"],group:"animals & nature",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f578-fe0f.png"},{emoji:"🦂",name:"scorpion",shortcodes:["scorpion"],tags:["scorpio","zodiac"],group:"animals & nature",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f982.png"},{emoji:"🦟",name:"mosquito",shortcodes:["mosquito"],tags:["disease","fever","malaria","pest","virus"],group:"animals & nature",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f99f.png"},{emoji:"🪰",name:"fly",shortcodes:["fly"],tags:["disease","maggot","pest","rotting"],group:"animals & nature",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fab0.png"},{emoji:"🪱",name:"worm",shortcodes:["worm"],tags:["annelid","earthworm","parasite"],group:"animals & nature",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fab1.png"},{emoji:"🦠",name:"microbe",shortcodes:["microbe"],tags:["amoeba","bacteria","virus"],group:"animals & nature",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9a0.png"},{emoji:"💐",name:"bouquet",shortcodes:["bouquet"],tags:["flower"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f490.png"},{emoji:"🌸",name:"cherry_blossom",shortcodes:["cherry_blossom"],tags:["blossom","cherry","flower"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f338.png"},{emoji:"💮",name:"white_flower",shortcodes:["white_flower"],tags:["flower"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4ae.png"},{emoji:"🏵",name:"rosette",shortcodes:["rosette"],tags:["plant"],group:"animals & nature",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3f5-fe0f.png"},{emoji:"🌹",name:"rose",shortcodes:["rose"],tags:["flower"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f339.png"},{emoji:"🥀",name:"wilted_flower",shortcodes:["wilted_flower"],tags:["flower","wilted"],group:"animals & nature",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f940.png"},{emoji:"🌺",name:"hibiscus",shortcodes:["hibiscus"],tags:["flower"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f33a.png"},{emoji:"🌻",name:"sunflower",shortcodes:["sunflower"],tags:["flower","sun"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f33b.png"},{emoji:"🌼",name:"blossom",shortcodes:["blossom"],tags:["flower"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f33c.png"},{emoji:"🌷",name:"tulip",shortcodes:["tulip"],tags:["flower"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f337.png"},{emoji:"🌱",name:"seedling",shortcodes:["seedling"],tags:["young"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f331.png"},{emoji:"🪴",name:"potted_plant",shortcodes:["potted_plant"],tags:["boring","grow","house","nurturing","plant","useless"],group:"animals & nature",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fab4.png"},{emoji:"🌲",name:"evergreen_tree",shortcodes:["evergreen_tree"],tags:["tree"],group:"animals & nature",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f332.png"},{emoji:"🌳",name:"deciduous_tree",shortcodes:["deciduous_tree"],tags:["deciduous","shedding","tree"],group:"animals & nature",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f333.png"},{emoji:"🌴",name:"palm_tree",shortcodes:["palm_tree"],tags:["palm","tree"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f334.png"},{emoji:"🌵",name:"cactus",shortcodes:["cactus"],tags:["plant"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f335.png"},{emoji:"🌾",name:"ear_of_rice",shortcodes:["ear_of_rice","sheaf_of_rice"],tags:["ear","grain","rice"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f33e.png"},{emoji:"🌿",name:"herb",shortcodes:["herb"],tags:["leaf"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f33f.png"},{emoji:"☘",name:"shamrock",shortcodes:["shamrock"],tags:["plant"],group:"animals & nature",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2618-fe0f.png"},{emoji:"🍀",name:"four_leaf_clover",shortcodes:["four_leaf_clover"],tags:["4","clover","four","four-leaf clover","leaf"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f340.png"},{emoji:"🍁",name:"maple_leaf",shortcodes:["maple_leaf"],tags:["falling","leaf","maple"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f341.png"},{emoji:"🍂",name:"fallen_leaf",shortcodes:["fallen_leaf"],tags:["falling","leaf"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f342.png"},{emoji:"🍃",name:"leaves",shortcodes:["leaves"],tags:["blow","flutter","leaf","wind"],group:"animals & nature",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f343.png"},{emoji:"🍇",name:"grapes",shortcodes:["grapes"],tags:["fruit","grape"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f347.png"},{emoji:"🍈",name:"melon",shortcodes:["melon"],tags:["fruit"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f348.png"},{emoji:"🍉",name:"watermelon",shortcodes:["watermelon"],tags:["fruit"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f349.png"},{emoji:"🍊",name:"mandarin",shortcodes:["orange","tangerine"],tags:["fruit","orange"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f34a.png"},{emoji:"🍋",name:"lemon",shortcodes:["lemon"],tags:["citrus","fruit"],group:"food & drink",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f34b.png"},{emoji:"🍌",name:"banana",shortcodes:["banana"],tags:["fruit"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f34c.png"},{emoji:"🍍",name:"pineapple",shortcodes:["pineapple"],tags:["fruit"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f34d.png"},{emoji:"🥭",name:"mango",shortcodes:["mango"],tags:["fruit","tropical"],group:"food & drink",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f96d.png"},{emoji:"🍎",name:"apple",shortcodes:["apple","red_apple"],tags:["apple","fruit","red"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f34e.png"},{emoji:"🍏",name:"green_apple",shortcodes:["green_apple"],tags:["apple","fruit","green"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f34f.png"},{emoji:"🍐",name:"pear",shortcodes:["pear"],tags:["fruit"],group:"food & drink",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f350.png"},{emoji:"🍑",name:"peach",shortcodes:["peach"],tags:["fruit"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f351.png"},{emoji:"🍒",name:"cherries",shortcodes:["cherries"],tags:["berries","cherry","fruit","red"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f352.png"},{emoji:"🍓",name:"strawberry",shortcodes:["strawberry"],tags:["berry","fruit"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f353.png"},{emoji:"🫐",name:"blueberries",shortcodes:["blueberries"],tags:["berry","bilberry","blue","blueberry"],group:"food & drink",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fad0.png"},{emoji:"🥝",name:"kiwi_fruit",shortcodes:["kiwi"],tags:["food","fruit","kiwi"],group:"food & drink",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f95d.png"},{emoji:"🍅",name:"tomato",shortcodes:["tomato"],tags:["fruit","vegetable"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f345.png"},{emoji:"🫒",name:"olive",shortcodes:["olive"],tags:["food"],group:"food & drink",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fad2.png"},{emoji:"🥥",name:"coconut",shortcodes:["coconut"],tags:["palm","piña colada"],group:"food & drink",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f965.png"},{emoji:"🥑",name:"avocado",shortcodes:["avocado"],tags:["food","fruit"],group:"food & drink",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f951.png"},{emoji:"🍆",name:"eggplant",shortcodes:["eggplant"],tags:["aubergine","vegetable"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f346.png"},{emoji:"🥔",name:"potato",shortcodes:["potato"],tags:["food","vegetable"],group:"food & drink",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f954.png"},{emoji:"🥕",name:"carrot",shortcodes:["carrot"],tags:["food","vegetable"],group:"food & drink",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f955.png"},{emoji:"🌽",name:"corn",shortcodes:["corn","ear_of_corn"],tags:["corn","ear","maize","maze"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f33d.png"},{emoji:"🌶",name:"hot_pepper",shortcodes:["hot_pepper"],tags:["hot","pepper"],group:"food & drink",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f336-fe0f.png"},{emoji:"🫑",name:"bell_pepper",shortcodes:["bell_pepper"],tags:["capsicum","pepper","vegetable"],group:"food & drink",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fad1.png"},{emoji:"🥒",name:"cucumber",shortcodes:["cucumber"],tags:["food","pickle","vegetable"],group:"food & drink",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f952.png"},{emoji:"🥬",name:"leafy_green",shortcodes:["leafy_green"],tags:["bok choy","cabbage","kale","lettuce"],group:"food & drink",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f96c.png"},{emoji:"🥦",name:"broccoli",shortcodes:["broccoli"],tags:["wild cabbage"],group:"food & drink",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f966.png"},{emoji:"🧄",name:"garlic",shortcodes:["garlic"],tags:["flavoring"],group:"food & drink",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9c4.png"},{emoji:"🧅",name:"onion",shortcodes:["onion"],tags:["flavoring"],group:"food & drink",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9c5.png"},{emoji:"🍄",name:"mushroom",shortcodes:["mushroom"],tags:["toadstool"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f344.png"},{emoji:"🥜",name:"peanuts",shortcodes:["peanuts"],tags:["food","nut","peanut","vegetable"],group:"food & drink",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f95c.png"},{emoji:"🌰",name:"chestnut",shortcodes:["chestnut"],tags:["plant"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f330.png"},{emoji:"🍞",name:"bread",shortcodes:["bread"],tags:["loaf"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f35e.png"},{emoji:"🥐",name:"croissant",shortcodes:["croissant"],tags:["bread","breakfast","food","french","roll"],group:"food & drink",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f950.png"},{emoji:"🥖",name:"baguette_bread",shortcodes:["baguette_bread"],tags:["baguette","bread","food","french"],group:"food & drink",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f956.png"},{emoji:"🫓",name:"flatbread",shortcodes:["flatbread"],tags:["arepa","lavash","naan","pita"],group:"food & drink",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fad3.png"},{emoji:"🥨",name:"pretzel",shortcodes:["pretzel"],tags:["twisted"],group:"food & drink",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f968.png"},{emoji:"🥯",name:"bagel",shortcodes:["bagel"],tags:["bakery","breakfast","schmear"],group:"food & drink",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f96f.png"},{emoji:"🥞",name:"pancakes",shortcodes:["pancakes"],tags:["breakfast","crêpe","food","hotcake","pancake"],group:"food & drink",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f95e.png"},{emoji:"🧇",name:"waffle",shortcodes:["waffle"],tags:["breakfast","indecisive","iron"],group:"food & drink",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9c7.png"},{emoji:"🧀",name:"cheese",shortcodes:["cheese"],tags:["cheese"],group:"food & drink",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9c0.png"},{emoji:"🍖",name:"meat_on_bone",shortcodes:["meat_on_bone"],tags:["bone","meat"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f356.png"},{emoji:"🍗",name:"poultry_leg",shortcodes:["poultry_leg"],tags:["bone","chicken","drumstick","leg","poultry"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f357.png"},{emoji:"🥩",name:"cut_of_meat",shortcodes:["cut_of_meat"],tags:["chop","lambchop","porkchop","steak"],group:"food & drink",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f969.png"},{emoji:"🥓",name:"bacon",shortcodes:["bacon"],tags:["breakfast","food","meat"],group:"food & drink",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f953.png"},{emoji:"🍔",name:"hamburger",shortcodes:["hamburger"],tags:["burger"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f354.png"},{emoji:"🍟",name:"fries",shortcodes:["french_fries","fries"],tags:["french","fries"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f35f.png"},{emoji:"🍕",name:"pizza",shortcodes:["pizza"],tags:["cheese","slice"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f355.png"},{emoji:"🌭",name:"hotdog",shortcodes:["hotdog"],tags:["frankfurter","hotdog","sausage"],group:"food & drink",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f32d.png"},{emoji:"🥪",name:"sandwich",shortcodes:["sandwich"],tags:["bread"],group:"food & drink",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f96a.png"},{emoji:"🌮",name:"taco",shortcodes:["taco"],tags:["mexican"],group:"food & drink",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f32e.png"},{emoji:"🌯",name:"burrito",shortcodes:["burrito"],tags:["mexican","wrap"],group:"food & drink",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f32f.png"},{emoji:"🫔",name:"tamale",shortcodes:["tamale"],tags:["mexican","wrapped"],group:"food & drink",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fad4.png"},{emoji:"🥙",name:"stuffed_flatbread",shortcodes:["stuffed_flatbread"],tags:["falafel","flatbread","food","gyro","kebab","stuffed"],group:"food & drink",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f959.png"},{emoji:"🧆",name:"falafel",shortcodes:["falafel"],tags:["chickpea","meatball"],group:"food & drink",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9c6.png"},{emoji:"🥚",name:"egg",shortcodes:["egg"],tags:["breakfast","food"],group:"food & drink",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f95a.png"},{emoji:"🍳",name:"fried_egg",shortcodes:["cooking","fried_egg"],tags:["breakfast","egg","frying","pan"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f373.png"},{emoji:"🥘",name:"shallow_pan_of_food",shortcodes:["shallow_pan_of_food"],tags:["casserole","food","paella","pan","shallow"],group:"food & drink",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f958.png"},{emoji:"🍲",name:"stew",shortcodes:["pot_of_food","stew"],tags:["pot","stew"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f372.png"},{emoji:"🫕",name:"fondue",shortcodes:["fondue"],tags:["cheese","chocolate","melted","pot","swiss"],group:"food & drink",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fad5.png"},{emoji:"🥣",name:"bowl_with_spoon",shortcodes:["bowl_with_spoon"],tags:["breakfast","cereal","congee"],group:"food & drink",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f963.png"},{emoji:"🥗",name:"green_salad",shortcodes:["green_salad","salad"],tags:["food","green","salad"],group:"food & drink",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f957.png"},{emoji:"🍿",name:"popcorn",shortcodes:["popcorn"],tags:["popcorn"],group:"food & drink",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f37f.png"},{emoji:"🧈",name:"butter",shortcodes:["butter"],tags:["dairy"],group:"food & drink",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9c8.png"},{emoji:"🧂",name:"salt",shortcodes:["salt"],tags:["condiment","shaker"],group:"food & drink",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9c2.png"},{emoji:"🥫",name:"canned_food",shortcodes:["canned_food"],tags:["can"],group:"food & drink",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f96b.png"},{emoji:"🍱",name:"bento",shortcodes:["bento","bento_box"],tags:["bento","box"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f371.png"},{emoji:"🍘",name:"rice_cracker",shortcodes:["rice_cracker"],tags:["cracker","rice"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f358.png"},{emoji:"🍙",name:"rice_ball",shortcodes:["rice_ball"],tags:["ball","japanese","rice"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f359.png"},{emoji:"🍚",name:"rice",shortcodes:["cooked_rice","rice"],tags:["cooked","rice"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f35a.png"},{emoji:"🍛",name:"curry",shortcodes:["curry","curry_rice"],tags:["curry","rice"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f35b.png"},{emoji:"🍜",name:"ramen",shortcodes:["ramen","steaming_bowl"],tags:["bowl","noodle","ramen","steaming"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f35c.png"},{emoji:"🍝",name:"spaghetti",shortcodes:["spaghetti"],tags:["pasta"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f35d.png"},{emoji:"🍠",name:"sweet_potato",shortcodes:["sweet_potato"],tags:["potato","roasted","sweet"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f360.png"},{emoji:"🍢",name:"oden",shortcodes:["oden"],tags:["kebab","seafood","skewer","stick"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f362.png"},{emoji:"🍣",name:"sushi",shortcodes:["sushi"],tags:["sushi"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f363.png"},{emoji:"🍤",name:"fried_shrimp",shortcodes:["fried_shrimp"],tags:["fried","prawn","shrimp","tempura"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f364.png"},{emoji:"🍥",name:"fish_cake",shortcodes:["fish_cake"],tags:["cake","fish","pastry","swirl"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f365.png"},{emoji:"🥮",name:"moon_cake",shortcodes:["moon_cake"],tags:["autumn","festival","yuèbǐng"],group:"food & drink",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f96e.png"},{emoji:"🍡",name:"dango",shortcodes:["dango"],tags:["dessert","japanese","skewer","stick","sweet"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f361.png"},{emoji:"🥟",name:"dumpling",shortcodes:["dumpling"],tags:["empanada","gyōza","jiaozi","pierogi","potsticker"],group:"food & drink",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f95f.png"},{emoji:"🥠",name:"fortune_cookie",shortcodes:["fortune_cookie"],tags:["prophecy"],group:"food & drink",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f960.png"},{emoji:"🥡",name:"takeout_box",shortcodes:["takeout_box"],tags:["oyster pail"],group:"food & drink",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f961.png"},{emoji:"🦀",name:"crab",shortcodes:["crab"],tags:["cancer","zodiac"],group:"food & drink",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f980.png"},{emoji:"🦞",name:"lobster",shortcodes:["lobster"],tags:["bisque","claws","seafood"],group:"food & drink",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f99e.png"},{emoji:"🦐",name:"shrimp",shortcodes:["shrimp"],tags:["food","shellfish","small"],group:"food & drink",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f990.png"},{emoji:"🦑",name:"squid",shortcodes:["squid"],tags:["food","molusc"],group:"food & drink",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f991.png"},{emoji:"🦪",name:"oyster",shortcodes:["oyster"],tags:["diving","pearl"],group:"food & drink",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9aa.png"},{emoji:"🍦",name:"icecream",shortcodes:["icecream","soft_serve"],tags:["cream","dessert","ice","icecream","soft","sweet"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f366.png"},{emoji:"🍧",name:"shaved_ice",shortcodes:["shaved_ice"],tags:["dessert","ice","shaved","sweet"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f367.png"},{emoji:"🍨",name:"ice_cream",shortcodes:["ice_cream"],tags:["cream","dessert","ice","sweet"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f368.png"},{emoji:"🍩",name:"doughnut",shortcodes:["doughnut"],tags:["breakfast","dessert","donut","sweet"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f369.png"},{emoji:"🍪",name:"cookie",shortcodes:["cookie"],tags:["dessert","sweet"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f36a.png"},{emoji:"🎂",name:"birthday",shortcodes:["birthday","birthday_cake"],tags:["birthday","cake","celebration","dessert","pastry","sweet"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f382.png"},{emoji:"🍰",name:"cake",shortcodes:["cake","shortcake"],tags:["cake","dessert","pastry","slice","sweet"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f370.png"},{emoji:"🧁",name:"cupcake",shortcodes:["cupcake"],tags:["bakery","sweet"],group:"food & drink",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9c1.png"},{emoji:"🥧",name:"pie",shortcodes:["pie"],tags:["filling","pastry"],group:"food & drink",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f967.png"},{emoji:"🍫",name:"chocolate_bar",shortcodes:["chocolate_bar"],tags:["bar","chocolate","dessert","sweet"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f36b.png"},{emoji:"🍬",name:"candy",shortcodes:["candy"],tags:["dessert","sweet"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f36c.png"},{emoji:"🍭",name:"lollipop",shortcodes:["lollipop"],tags:["candy","dessert","sweet"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f36d.png"},{emoji:"🍮",name:"custard",shortcodes:["custard"],tags:["dessert","pudding","sweet"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f36e.png"},{emoji:"🍯",name:"honey_pot",shortcodes:["honey_pot"],tags:["honey","honeypot","pot","sweet"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f36f.png"},{emoji:"🍼",name:"baby_bottle",shortcodes:["baby_bottle"],tags:["baby","bottle","drink","milk"],group:"food & drink",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f37c.png"},{emoji:"🥛",name:"milk_glass",shortcodes:["glass_of_milk","milk"],tags:["drink","glass","milk"],group:"food & drink",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f95b.png"},{emoji:"☕",name:"coffee",shortcodes:["coffee"],tags:["beverage","coffee","drink","hot","steaming","tea"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2615.png"},{emoji:"🫖",name:"teapot",shortcodes:["teapot"],tags:["drink","pot","tea"],group:"food & drink",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fad6.png"},{emoji:"🍵",name:"tea",shortcodes:["tea"],tags:["beverage","cup","drink","tea","teacup"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f375.png"},{emoji:"🍶",name:"sake",shortcodes:["sake"],tags:["bar","beverage","bottle","cup","drink"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f376.png"},{emoji:"🍾",name:"champagne",shortcodes:["champagne"],tags:["bar","bottle","cork","drink","popping"],group:"food & drink",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f37e.png"},{emoji:"🍷",name:"wine_glass",shortcodes:["wine_glass"],tags:["bar","beverage","drink","glass","wine"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f377.png"},{emoji:"🍸",name:"cocktail",shortcodes:["cocktail"],tags:["bar","cocktail","drink","glass"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f378.png"},{emoji:"🍹",name:"tropical_drink",shortcodes:["tropical_drink"],tags:["bar","drink","tropical"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f379.png"},{emoji:"🍺",name:"beer",shortcodes:["beer"],tags:["bar","beer","drink","mug"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f37a.png"},{emoji:"🍻",name:"beers",shortcodes:["beers"],tags:["bar","beer","clink","drink","mug"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f37b.png"},{emoji:"🥂",name:"clinking_glasses",shortcodes:["clinking_glasses"],tags:["celebrate","clink","drink","glass"],group:"food & drink",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f942.png"},{emoji:"🥃",name:"tumbler_glass",shortcodes:["tumbler_glass","whisky"],tags:["glass","liquor","shot","tumbler","whisky"],group:"food & drink",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f943.png"},{emoji:"🥤",name:"cup_with_straw",shortcodes:["cup_with_straw"],tags:["juice","soda"],group:"food & drink",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f964.png"},{emoji:"🧋",name:"bubble_tea",shortcodes:["boba_drink","bubble_tea"],tags:["bubble","milk","pearl","tea"],group:"food & drink",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9cb.png"},{emoji:"🧃",name:"beverage_box",shortcodes:["beverage_box","juice_box"],tags:["beverage","box","juice","straw","sweet"],group:"food & drink",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9c3.png"},{emoji:"🧉",name:"mate",shortcodes:["mate"],tags:["drink"],group:"food & drink",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9c9.png"},{emoji:"🧊",name:"ice_cube",shortcodes:["ice","ice_cube"],tags:["cold","ice cube","iceberg"],group:"food & drink",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9ca.png"},{emoji:"🥢",name:"chopsticks",shortcodes:["chopsticks"],tags:["hashi"],group:"food & drink",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f962.png"},{emoji:"🍽",name:"plate_with_cutlery",shortcodes:["fork_knife_plate"],tags:["cooking","fork","knife","plate"],group:"food & drink",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f37d-fe0f.png"},{emoji:"🍴",name:"fork_and_knife",shortcodes:["fork_and_knife"],tags:["cooking","cutlery","fork","knife"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f374.png"},{emoji:"🥄",name:"spoon",shortcodes:["spoon"],tags:["tableware"],group:"food & drink",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f944.png"},{emoji:"🔪",name:"hocho",shortcodes:["knife"],tags:["cooking","hocho","knife","tool","weapon"],group:"food & drink",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f52a.png"},{emoji:"🏺",name:"amphora",shortcodes:["amphora"],tags:["aquarius","cooking","drink","jug","zodiac"],group:"food & drink",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3fa.png"},{emoji:"🌍",name:"earth_africa",shortcodes:["earth_africa","earth_europe"],tags:["africa","earth","europe","globe","globe showing europe-africa","world"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f30d.png"},{emoji:"🌎",name:"earth_americas",shortcodes:["earth_americas"],tags:["americas","earth","globe","globe showing americas","world"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f30e.png"},{emoji:"🌏",name:"earth_asia",shortcodes:["earth_asia"],tags:["asia","australia","earth","globe","globe showing asia-australia","world"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f30f.png"},{emoji:"🌐",name:"globe_with_meridians",shortcodes:["globe_with_meridians"],tags:["earth","globe","meridians","world"],group:"travel & places",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f310.png"},{emoji:"🗺",name:"world_map",shortcodes:["world_map"],tags:["map","world"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5fa-fe0f.png"},{emoji:"🗾",name:"japan",shortcodes:["japan_map"],tags:["japan","map","map of japan"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5fe.png"},{emoji:"🧭",name:"compass",shortcodes:["compass"],tags:["magnetic","navigation","orienteering"],group:"travel & places",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9ed.png"},{emoji:"🏔",name:"mountain_snow",shortcodes:["mountain_snow"],tags:["cold","mountain","snow"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3d4-fe0f.png"},{emoji:"⛰",name:"mountain",shortcodes:["mountain"],tags:["mountain"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26f0-fe0f.png"},{emoji:"🌋",name:"volcano",shortcodes:["volcano"],tags:["eruption","mountain"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f30b.png"},{emoji:"🗻",name:"mount_fuji",shortcodes:["mount_fuji"],tags:["fuji","mountain"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5fb.png"},{emoji:"🏕",name:"camping",shortcodes:["camping"],tags:["camping"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3d5-fe0f.png"},{emoji:"🏖",name:"beach_umbrella",shortcodes:["beach","beach_with_umbrella"],tags:["beach","umbrella"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3d6-fe0f.png"},{emoji:"🏜",name:"desert",shortcodes:["desert"],tags:["desert"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3dc-fe0f.png"},{emoji:"🏝",name:"desert_island",shortcodes:["desert_island","island"],tags:["desert","island"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3dd-fe0f.png"},{emoji:"🏞",name:"national_park",shortcodes:["national_park"],tags:["park"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3de-fe0f.png"},{emoji:"🏟",name:"stadium",shortcodes:["stadium"],tags:["stadium"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3df-fe0f.png"},{emoji:"🏛",name:"classical_building",shortcodes:["classical_building"],tags:["classical"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3db-fe0f.png"},{emoji:"🏗",name:"building_construction",shortcodes:["building_construction","construction_site"],tags:["construction"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3d7-fe0f.png"},{emoji:"🧱",name:"bricks",shortcodes:["bricks"],tags:["bricks","clay","mortar","wall"],group:"travel & places",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9f1.png"},{emoji:"🪨",name:"rock",shortcodes:["rock"],tags:["boulder","heavy","solid","stone"],group:"travel & places",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1faa8.png"},{emoji:"🪵",name:"wood",shortcodes:["wood"],tags:["log","lumber","timber"],group:"travel & places",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fab5.png"},{emoji:"🛖",name:"hut",shortcodes:["hut"],tags:["house","roundhouse","yurt"],group:"travel & places",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6d6.png"},{emoji:"🏘",name:"houses",shortcodes:["homes","houses"],tags:["houses"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3d8-fe0f.png"},{emoji:"🏚",name:"derelict_house",shortcodes:["derelict_house","house_abandoned"],tags:["derelict","house"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3da-fe0f.png"},{emoji:"🏠",name:"house",shortcodes:["house"],tags:["home"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3e0.png"},{emoji:"🏡",name:"house_with_garden",shortcodes:["house_with_garden"],tags:["garden","home","house"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3e1.png"},{emoji:"🏢",name:"office",shortcodes:["office"],tags:["building"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3e2.png"},{emoji:"🏣",name:"post_office",shortcodes:["post_office"],tags:["japanese","japanese post office","post"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3e3.png"},{emoji:"🏤",name:"european_post_office",shortcodes:["european_post_office"],tags:["european","post"],group:"travel & places",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3e4.png"},{emoji:"🏥",name:"hospital",shortcodes:["hospital"],tags:["doctor","medicine"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3e5.png"},{emoji:"🏦",name:"bank",shortcodes:["bank"],tags:["building"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3e6.png"},{emoji:"🏨",name:"hotel",shortcodes:["hotel"],tags:["building"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3e8.png"},{emoji:"🏩",name:"love_hotel",shortcodes:["love_hotel"],tags:["hotel","love"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3e9.png"},{emoji:"🏪",name:"convenience_store",shortcodes:["convenience_store"],tags:["convenience","store"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3ea.png"},{emoji:"🏫",name:"school",shortcodes:["school"],tags:["building"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3eb.png"},{emoji:"🏬",name:"department_store",shortcodes:["department_store"],tags:["department","store"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3ec.png"},{emoji:"🏭",name:"factory",shortcodes:["factory"],tags:["building"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3ed.png"},{emoji:"🏯",name:"japanese_castle",shortcodes:["japanese_castle"],tags:["castle","japanese"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3ef.png"},{emoji:"🏰",name:"european_castle",shortcodes:["castle","european_castle"],tags:["european"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3f0.png"},{emoji:"💒",name:"wedding",shortcodes:["wedding"],tags:["chapel","romance"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f492.png"},{emoji:"🗼",name:"tokyo_tower",shortcodes:["tokyo_tower"],tags:["tokyo","tower"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5fc.png"},{emoji:"🗽",name:"statue_of_liberty",shortcodes:["statue_of_liberty"],tags:["liberty","statue","statue of liberty"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5fd.png"},{emoji:"⛪",name:"church",shortcodes:["church"],tags:["christian","cross","religion"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26ea.png"},{emoji:"🕌",name:"mosque",shortcodes:["mosque"],tags:["islam","muslim","religion"],group:"travel & places",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f54c.png"},{emoji:"🛕",name:"hindu_temple",shortcodes:["hindu_temple"],tags:["hindu","temple"],group:"travel & places",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6d5.png"},{emoji:"🕍",name:"synagogue",shortcodes:["synagogue"],tags:["jew","jewish","religion","temple"],group:"travel & places",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f54d.png"},{emoji:"⛩",name:"shinto_shrine",shortcodes:["shinto_shrine"],tags:["religion","shinto","shrine"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26e9-fe0f.png"},{emoji:"🕋",name:"kaaba",shortcodes:["kaaba"],tags:["islam","muslim","religion"],group:"travel & places",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f54b.png"},{emoji:"⛲",name:"fountain",shortcodes:["fountain"],tags:["fountain"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26f2.png"},{emoji:"⛺",name:"tent",shortcodes:["tent"],tags:["camping"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26fa.png"},{emoji:"🌁",name:"foggy",shortcodes:["foggy"],tags:["fog"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f301.png"},{emoji:"🌃",name:"night_with_stars",shortcodes:["night_with_stars"],tags:["night","star"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f303.png"},{emoji:"🏙",name:"cityscape",shortcodes:["cityscape"],tags:["city"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3d9-fe0f.png"},{emoji:"🌄",name:"sunrise_over_mountains",shortcodes:["sunrise_over_mountains"],tags:["morning","mountain","sun","sunrise"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f304.png"},{emoji:"🌅",name:"sunrise",shortcodes:["sunrise"],tags:["morning","sun"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f305.png"},{emoji:"🌆",name:"city_sunset",shortcodes:["city_dusk"],tags:["city","dusk","evening","landscape","sunset"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f306.png"},{emoji:"🌇",name:"city_sunrise",shortcodes:["city_sunrise","city_sunset"],tags:["dusk","sun"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f307.png"},{emoji:"🌉",name:"bridge_at_night",shortcodes:["bridge_at_night"],tags:["bridge","night"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f309.png"},{emoji:"♨",name:"hotsprings",shortcodes:["hotsprings"],tags:["hot","hotsprings","springs","steaming"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2668-fe0f.png"},{emoji:"🎠",name:"carousel_horse",shortcodes:["carousel_horse"],tags:["carousel","horse"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3a0.png"},{emoji:"🎡",name:"ferris_wheel",shortcodes:["ferris_wheel"],tags:["amusement park","ferris","wheel"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3a1.png"},{emoji:"🎢",name:"roller_coaster",shortcodes:["roller_coaster"],tags:["amusement park","coaster","roller"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3a2.png"},{emoji:"💈",name:"barber",shortcodes:["barber","barber_pole"],tags:["barber","haircut","pole"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f488.png"},{emoji:"🎪",name:"circus_tent",shortcodes:["circus_tent"],tags:["circus","tent"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3aa.png"},{emoji:"🚂",name:"steam_locomotive",shortcodes:["steam_locomotive"],tags:["engine","railway","steam","train"],group:"travel & places",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f682.png"},{emoji:"🚃",name:"railway_car",shortcodes:["railway_car"],tags:["car","electric","railway","train","tram","trolleybus"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f683.png"},{emoji:"🚄",name:"bullettrain_side",shortcodes:["bullettrain_side"],tags:["railway","shinkansen","speed","train"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f684.png"},{emoji:"🚅",name:"bullettrain_front",shortcodes:["bullettrain_front"],tags:["bullet","railway","shinkansen","speed","train"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f685.png"},{emoji:"🚆",name:"train2",shortcodes:["train"],tags:["railway"],group:"travel & places",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f686.png"},{emoji:"🚇",name:"metro",shortcodes:["metro"],tags:["subway"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f687.png"},{emoji:"🚈",name:"light_rail",shortcodes:["light_rail"],tags:["railway"],group:"travel & places",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f688.png"},{emoji:"🚉",name:"station",shortcodes:["station"],tags:["railway","train"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f689.png"},{emoji:"🚊",name:"tram",shortcodes:["tram"],tags:["trolleybus"],group:"travel & places",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f68a.png"},{emoji:"🚝",name:"monorail",shortcodes:["monorail"],tags:["vehicle"],group:"travel & places",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f69d.png"},{emoji:"🚞",name:"mountain_railway",shortcodes:["mountain_railway"],tags:["car","mountain","railway"],group:"travel & places",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f69e.png"},{emoji:"🚋",name:"train",shortcodes:["tram_car"],tags:["car","tram","trolleybus"],group:"travel & places",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f68b.png"},{emoji:"🚌",name:"bus",shortcodes:["bus"],tags:["vehicle"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f68c.png"},{emoji:"🚍",name:"oncoming_bus",shortcodes:["oncoming_bus"],tags:["bus","oncoming"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f68d.png"},{emoji:"🚎",name:"trolleybus",shortcodes:["trolleybus"],tags:["bus","tram","trolley"],group:"travel & places",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f68e.png"},{emoji:"🚐",name:"minibus",shortcodes:["minibus"],tags:["bus"],group:"travel & places",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f690.png"},{emoji:"🚑",name:"ambulance",shortcodes:["ambulance"],tags:["vehicle"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f691.png"},{emoji:"🚒",name:"fire_engine",shortcodes:["fire_engine"],tags:["engine","fire","truck"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f692.png"},{emoji:"🚓",name:"police_car",shortcodes:["police_car"],tags:["car","patrol","police"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f693.png"},{emoji:"🚔",name:"oncoming_police_car",shortcodes:["oncoming_police_car"],tags:["car","oncoming","police"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f694.png"},{emoji:"🚕",name:"taxi",shortcodes:["taxi"],tags:["vehicle"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f695.png"},{emoji:"🚖",name:"oncoming_taxi",shortcodes:["oncoming_taxi"],tags:["oncoming","taxi"],group:"travel & places",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f696.png"},{emoji:"🚗",name:"car",shortcodes:["car","red_car"],tags:["car"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f697.png"},{emoji:"🚘",name:"oncoming_automobile",shortcodes:["oncoming_automobile"],tags:["automobile","car","oncoming"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f698.png"},{emoji:"🚙",name:"blue_car",shortcodes:["blue_car","suv"],tags:["recreational","sport utility"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f699.png"},{emoji:"🛻",name:"pickup_truck",shortcodes:["pickup_truck"],tags:["pick-up","pickup","truck"],group:"travel & places",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6fb.png"},{emoji:"🚚",name:"truck",shortcodes:["delivery_truck","truck"],tags:["delivery","truck"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f69a.png"},{emoji:"🚛",name:"articulated_lorry",shortcodes:["articulated_lorry"],tags:["lorry","semi","truck"],group:"travel & places",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f69b.png"},{emoji:"🚜",name:"tractor",shortcodes:["tractor"],tags:["vehicle"],group:"travel & places",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f69c.png"},{emoji:"🏎",name:"racing_car",shortcodes:["racing_car"],tags:["car","racing"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3ce-fe0f.png"},{emoji:"🏍",name:"motorcycle",shortcodes:["motorcycle"],tags:["racing"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3cd-fe0f.png"},{emoji:"🛵",name:"motor_scooter",shortcodes:["motor_scooter"],tags:["motor","scooter"],group:"travel & places",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6f5.png"},{emoji:"🦽",name:"manual_wheelchair",shortcodes:["manual_wheelchair"],tags:["accessibility"],group:"travel & places",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9bd.png"},{emoji:"🦼",name:"motorized_wheelchair",shortcodes:["motorized_wheelchair"],tags:["accessibility"],group:"travel & places",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9bc.png"},{emoji:"🛺",name:"auto_rickshaw",shortcodes:["auto_rickshaw"],tags:["tuk tuk"],group:"travel & places",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6fa.png"},{emoji:"🚲",name:"bike",shortcodes:["bicycle","bike"],tags:["bike"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6b2.png"},{emoji:"🛴",name:"kick_scooter",shortcodes:["scooter"],tags:["kick","scooter"],group:"travel & places",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6f4.png"},{emoji:"🛹",name:"skateboard",shortcodes:["skateboard"],tags:["board"],group:"travel & places",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6f9.png"},{emoji:"🛼",name:"roller_skate",shortcodes:["roller_skate"],tags:["roller","skate"],group:"travel & places",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6fc.png"},{emoji:"🚏",name:"busstop",shortcodes:["busstop"],tags:["bus","stop"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f68f.png"},{emoji:"🛣",name:"motorway",shortcodes:["motorway"],tags:["highway","road"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6e3-fe0f.png"},{emoji:"🛤",name:"railway_track",shortcodes:["railway_track"],tags:["railway","train"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6e4-fe0f.png"},{emoji:"🛢",name:"oil_drum",shortcodes:["oil_drum"],tags:["drum","oil"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6e2-fe0f.png"},{emoji:"⛽",name:"fuelpump",shortcodes:["fuelpump"],tags:["diesel","fuel","fuelpump","gas","pump","station"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26fd.png"},{emoji:"🚨",name:"rotating_light",shortcodes:["rotating_light"],tags:["beacon","car","light","police","revolving"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6a8.png"},{emoji:"🚥",name:"traffic_light",shortcodes:["traffic_light"],tags:["light","signal","traffic"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6a5.png"},{emoji:"🚦",name:"vertical_traffic_light",shortcodes:["vertical_traffic_light"],tags:["light","signal","traffic"],group:"travel & places",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6a6.png"},{emoji:"🛑",name:"stop_sign",shortcodes:["octagonal_sign","stop_sign"],tags:["octagonal","sign","stop"],group:"travel & places",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6d1.png"},{emoji:"🚧",name:"construction",shortcodes:["construction"],tags:["barrier"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6a7.png"},{emoji:"⚓",name:"anchor",shortcodes:["anchor"],tags:["ship","tool"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2693.png"},{emoji:"⛵",name:"boat",shortcodes:["sailboat"],tags:["boat","resort","sea","yacht"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26f5.png"},{emoji:"🛶",name:"canoe",shortcodes:["canoe"],tags:["boat"],group:"travel & places",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6f6.png"},{emoji:"🚤",name:"speedboat",shortcodes:["speedboat"],tags:["boat"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6a4.png"},{emoji:"🛳",name:"passenger_ship",shortcodes:["cruise_ship","passenger_ship"],tags:["passenger","ship"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6f3-fe0f.png"},{emoji:"⛴",name:"ferry",shortcodes:["ferry"],tags:["boat","passenger"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26f4-fe0f.png"},{emoji:"🛥",name:"motor_boat",shortcodes:["motorboat"],tags:["boat","motorboat"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6e5-fe0f.png"},{emoji:"🚢",name:"ship",shortcodes:["ship"],tags:["boat","passenger"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6a2.png"},{emoji:"✈",name:"airplane",shortcodes:["airplane"],tags:["aeroplane"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2708-fe0f.png"},{emoji:"🛩",name:"small_airplane",shortcodes:["small_airplane"],tags:["aeroplane","airplane"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6e9-fe0f.png"},{emoji:"🛫",name:"flight_departure",shortcodes:["airplane_departure"],tags:["aeroplane","airplane","check-in","departure","departures"],group:"travel & places",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6eb.png"},{emoji:"🛬",name:"flight_arrival",shortcodes:["airplane_arriving"],tags:["aeroplane","airplane","arrivals","arriving","landing"],group:"travel & places",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6ec.png"},{emoji:"🪂",name:"parachute",shortcodes:["parachute"],tags:["hang-glide","parasail","skydive"],group:"travel & places",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa82.png"},{emoji:"💺",name:"seat",shortcodes:["seat"],tags:["chair"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4ba.png"},{emoji:"🚁",name:"helicopter",shortcodes:["helicopter"],tags:["vehicle"],group:"travel & places",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f681.png"},{emoji:"🚟",name:"suspension_railway",shortcodes:["suspension_railway"],tags:["railway","suspension"],group:"travel & places",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f69f.png"},{emoji:"🚠",name:"mountain_cableway",shortcodes:["mountain_cableway"],tags:["cable","gondola","mountain"],group:"travel & places",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6a0.png"},{emoji:"🚡",name:"aerial_tramway",shortcodes:["aerial_tramway"],tags:["aerial","cable","car","gondola","tramway"],group:"travel & places",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6a1.png"},{emoji:"🛰",name:"artificial_satellite",shortcodes:["satellite"],tags:["space"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6f0-fe0f.png"},{emoji:"🚀",name:"rocket",shortcodes:["rocket"],tags:["space"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f680.png"},{emoji:"🛸",name:"flying_saucer",shortcodes:["flying_saucer"],tags:["ufo"],group:"travel & places",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6f8.png"},{emoji:"🛎",name:"bellhop_bell",shortcodes:["bellhop"],tags:["bell","bellhop","hotel"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6ce-fe0f.png"},{emoji:"🧳",name:"luggage",shortcodes:["luggage"],tags:["packing","travel"],group:"travel & places",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9f3.png"},{emoji:"⌛",name:"hourglass",shortcodes:["hourglass"],tags:["sand","timer"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/231b.png"},{emoji:"⏳",name:"hourglass_flowing_sand",shortcodes:["hourglass_flowing_sand"],tags:["hourglass","sand","timer"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/23f3.png"},{emoji:"⌚",name:"watch",shortcodes:["watch"],tags:["clock"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/231a.png"},{emoji:"⏰",name:"alarm_clock",shortcodes:["alarm_clock"],tags:["alarm","clock"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/23f0.png"},{emoji:"⏱",name:"stopwatch",shortcodes:["stopwatch"],tags:["clock"],group:"travel & places",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/23f1-fe0f.png"},{emoji:"⏲",name:"timer_clock",shortcodes:["timer_clock"],tags:["clock","timer"],group:"travel & places",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/23f2-fe0f.png"},{emoji:"🕰",name:"mantelpiece_clock",shortcodes:["clock"],tags:["clock"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f570-fe0f.png"},{emoji:"🕛",name:"clock12",shortcodes:["clock12"],tags:["00","12","12:00","clock","o’clock","twelve"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f55b.png"},{emoji:"🕧",name:"clock1230",shortcodes:["clock1230"],tags:["12","12:30","clock","thirty","twelve"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f567.png"},{emoji:"🕐",name:"clock1",shortcodes:["clock1"],tags:["00","1","1:00","clock","one","o’clock"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f550.png"},{emoji:"🕜",name:"clock130",shortcodes:["clock130"],tags:["1","1:30","clock","one","thirty"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f55c.png"},{emoji:"🕑",name:"clock2",shortcodes:["clock2"],tags:["00","2","2:00","clock","o’clock","two"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f551.png"},{emoji:"🕝",name:"clock230",shortcodes:["clock230"],tags:["2","2:30","clock","thirty","two"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f55d.png"},{emoji:"🕒",name:"clock3",shortcodes:["clock3"],tags:["00","3","3:00","clock","o’clock","three"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f552.png"},{emoji:"🕞",name:"clock330",shortcodes:["clock330"],tags:["3","3:30","clock","thirty","three"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f55e.png"},{emoji:"🕓",name:"clock4",shortcodes:["clock4"],tags:["00","4","4:00","clock","four","o’clock"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f553.png"},{emoji:"🕟",name:"clock430",shortcodes:["clock430"],tags:["4","4:30","clock","four","thirty"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f55f.png"},{emoji:"🕔",name:"clock5",shortcodes:["clock5"],tags:["00","5","5:00","clock","five","o’clock"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f554.png"},{emoji:"🕠",name:"clock530",shortcodes:["clock530"],tags:["5","5:30","clock","five","thirty"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f560.png"},{emoji:"🕕",name:"clock6",shortcodes:["clock6"],tags:["00","6","6:00","clock","o’clock","six"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f555.png"},{emoji:"🕡",name:"clock630",shortcodes:["clock630"],tags:["6","6:30","clock","six","thirty"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f561.png"},{emoji:"🕖",name:"clock7",shortcodes:["clock7"],tags:["00","7","7:00","clock","o’clock","seven"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f556.png"},{emoji:"🕢",name:"clock730",shortcodes:["clock730"],tags:["7","7:30","clock","seven","thirty"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f562.png"},{emoji:"🕗",name:"clock8",shortcodes:["clock8"],tags:["00","8","8:00","clock","eight","o’clock"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f557.png"},{emoji:"🕣",name:"clock830",shortcodes:["clock830"],tags:["8","8:30","clock","eight","thirty"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f563.png"},{emoji:"🕘",name:"clock9",shortcodes:["clock9"],tags:["00","9","9:00","clock","nine","o’clock"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f558.png"},{emoji:"🕤",name:"clock930",shortcodes:["clock930"],tags:["9","9:30","clock","nine","thirty"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f564.png"},{emoji:"🕙",name:"clock10",shortcodes:["clock10"],tags:["00","10","10:00","clock","o’clock","ten"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f559.png"},{emoji:"🕥",name:"clock1030",shortcodes:["clock1030"],tags:["10","10:30","clock","ten","thirty"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f565.png"},{emoji:"🕚",name:"clock11",shortcodes:["clock11"],tags:["00","11","11:00","clock","eleven","o’clock"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f55a.png"},{emoji:"🕦",name:"clock1130",shortcodes:["clock1130"],tags:["11","11:30","clock","eleven","thirty"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f566.png"},{emoji:"🌑",name:"new_moon",shortcodes:["new_moon"],tags:["dark","moon"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f311.png"},{emoji:"🌒",name:"waxing_crescent_moon",shortcodes:["waxing_crescent_moon"],tags:["crescent","moon","waxing"],group:"travel & places",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f312.png"},{emoji:"🌓",name:"first_quarter_moon",shortcodes:["first_quarter_moon"],tags:["moon","quarter"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f313.png"},{emoji:"🌔",name:"moon",shortcodes:["waxing_gibbous_moon"],tags:["gibbous","moon","waxing"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f314.png"},{emoji:"🌕",name:"full_moon",shortcodes:["full_moon"],tags:["full","moon"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f315.png"},{emoji:"🌖",name:"waning_gibbous_moon",shortcodes:["waning_gibbous_moon"],tags:["gibbous","moon","waning"],group:"travel & places",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f316.png"},{emoji:"🌗",name:"last_quarter_moon",shortcodes:["last_quarter_moon"],tags:["moon","quarter"],group:"travel & places",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f317.png"},{emoji:"🌘",name:"waning_crescent_moon",shortcodes:["waning_crescent_moon"],tags:["crescent","moon","waning"],group:"travel & places",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f318.png"},{emoji:"🌙",name:"crescent_moon",shortcodes:["crescent_moon"],tags:["crescent","moon"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f319.png"},{emoji:"🌚",name:"new_moon_with_face",shortcodes:["new_moon_with_face"],tags:["face","moon"],group:"travel & places",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f31a.png"},{emoji:"🌛",name:"first_quarter_moon_with_face",shortcodes:["first_quarter_moon_with_face"],tags:["face","moon","quarter"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f31b.png"},{emoji:"🌜",name:"last_quarter_moon_with_face",shortcodes:["last_quarter_moon_with_face"],tags:["face","moon","quarter"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f31c.png"},{emoji:"🌡",name:"thermometer",shortcodes:["thermometer"],tags:["weather"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f321-fe0f.png"},{emoji:"☀",name:"sunny",shortcodes:["sun"],tags:["bright","rays","sunny"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2600-fe0f.png"},{emoji:"🌝",name:"full_moon_with_face",shortcodes:["full_moon_with_face"],tags:["bright","face","full","moon"],group:"travel & places",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f31d.png"},{emoji:"🌞",name:"sun_with_face",shortcodes:["sun_with_face"],tags:["bright","face","sun"],group:"travel & places",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f31e.png"},{emoji:"🪐",name:"ringed_planet",shortcodes:["ringed_planet","saturn"],tags:["saturn","saturnine"],group:"travel & places",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa90.png"},{emoji:"⭐",name:"star",shortcodes:["star"],tags:["star"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2b50.png"},{emoji:"🌟",name:"star2",shortcodes:["glowing_star","star2"],tags:["glittery","glow","shining","sparkle","star"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f31f.png"},{emoji:"🌠",name:"stars",shortcodes:["shooting_star","stars"],tags:["falling","shooting","star"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f320.png"},{emoji:"🌌",name:"milky_way",shortcodes:["milky_way"],tags:["space"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f30c.png"},{emoji:"☁",name:"cloud",shortcodes:["cloud"],tags:["weather"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2601-fe0f.png"},{emoji:"⛅",name:"partly_sunny",shortcodes:["partly_sunny","sun_behind_cloud"],tags:["cloud","sun"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26c5.png"},{emoji:"⛈",name:"cloud_with_lightning_and_rain",shortcodes:["stormy","thunder_cloud_and_rain"],tags:["cloud","rain","thunder"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26c8-fe0f.png"},{emoji:"🌤",name:"sun_behind_small_cloud",shortcodes:["sun_behind_small_cloud","sunny"],tags:["cloud","sun"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f324-fe0f.png"},{emoji:"🌥",name:"sun_behind_large_cloud",shortcodes:["cloudy","sun_behind_large_cloud"],tags:["cloud","sun"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f325-fe0f.png"},{emoji:"🌦",name:"sun_behind_rain_cloud",shortcodes:["sun_and_rain","sun_behind_rain_cloud"],tags:["cloud","rain","sun"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f326-fe0f.png"},{emoji:"🌧",name:"cloud_with_rain",shortcodes:["cloud_with_rain","rainy"],tags:["cloud","rain"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f327-fe0f.png"},{emoji:"🌨",name:"cloud_with_snow",shortcodes:["cloud_with_snow","snowy"],tags:["cloud","cold","snow"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f328-fe0f.png"},{emoji:"🌩",name:"cloud_with_lightning",shortcodes:["cloud_with_lightning","lightning"],tags:["cloud","lightning"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f329-fe0f.png"},{emoji:"🌪",name:"tornado",shortcodes:["tornado"],tags:["cloud","whirlwind"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f32a-fe0f.png"},{emoji:"🌫",name:"fog",shortcodes:["fog"],tags:["cloud"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f32b-fe0f.png"},{emoji:"🌬",name:"wind_face",shortcodes:["wind_blowing_face"],tags:["blow","cloud","face","wind"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f32c-fe0f.png"},{emoji:"🌀",name:"cyclone",shortcodes:["cyclone"],tags:["dizzy","hurricane","twister","typhoon"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f300.png"},{emoji:"🌈",name:"rainbow",shortcodes:["rainbow"],tags:["rain"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f308.png"},{emoji:"🌂",name:"closed_umbrella",shortcodes:["closed_umbrella"],tags:["clothing","rain","umbrella"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f302.png"},{emoji:"☂",name:"open_umbrella",shortcodes:["umbrella"],tags:["clothing","rain"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2602-fe0f.png"},{emoji:"☔",name:"umbrella",shortcodes:["umbrella_with_rain"],tags:["clothing","drop","rain","umbrella"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2614.png"},{emoji:"⛱",name:"parasol_on_ground",shortcodes:["beach_umbrella","umbrella_on_ground"],tags:["rain","sun","umbrella"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26f1-fe0f.png"},{emoji:"⚡",name:"zap",shortcodes:["high_voltage","zap"],tags:["danger","electric","lightning","voltage","zap"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26a1.png"},{emoji:"❄",name:"snowflake",shortcodes:["snowflake"],tags:["cold","snow"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2744-fe0f.png"},{emoji:"☃",name:"snowman_with_snow",shortcodes:["snowman2"],tags:["cold","snow"],group:"travel & places",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2603-fe0f.png"},{emoji:"⛄",name:"snowman",shortcodes:["snowman"],tags:["cold","snow","snowman"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26c4.png"},{emoji:"☄",name:"comet",shortcodes:["comet"],tags:["space"],group:"travel & places",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2604-fe0f.png"},{emoji:"🔥",name:"fire",shortcodes:["fire"],tags:["flame","tool"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f525.png"},{emoji:"💧",name:"droplet",shortcodes:["droplet"],tags:["cold","comic","drop","sweat"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4a7.png"},{emoji:"🌊",name:"ocean",shortcodes:["ocean","water_wave"],tags:["ocean","water","wave"],group:"travel & places",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f30a.png"},{emoji:"🎃",name:"jack_o_lantern",shortcodes:["jack_o_lantern"],tags:["celebration","halloween","jack","lantern"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f383.png"},{emoji:"🎄",name:"christmas_tree",shortcodes:["christmas_tree"],tags:["celebration","christmas","tree"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f384.png"},{emoji:"🎆",name:"fireworks",shortcodes:["fireworks"],tags:["celebration"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f386.png"},{emoji:"🎇",name:"sparkler",shortcodes:["sparkler"],tags:["celebration","fireworks","sparkle"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f387.png"},{emoji:"🧨",name:"firecracker",shortcodes:["firecracker"],tags:["dynamite","explosive","fireworks"],group:"activities",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9e8.png"},{emoji:"✨",name:"sparkles",shortcodes:["sparkles"],tags:["*","sparkle","star"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2728.png"},{emoji:"🎈",name:"balloon",shortcodes:["balloon"],tags:["celebration"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f388.png"},{emoji:"🎉",name:"tada",shortcodes:["party","party_popper","tada"],tags:["celebration","party","popper","tada"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f389.png"},{emoji:"🎊",name:"confetti_ball",shortcodes:["confetti_ball"],tags:["ball","celebration","confetti"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f38a.png"},{emoji:"🎋",name:"tanabata_tree",shortcodes:["tanabata_tree"],tags:["banner","celebration","japanese","tree"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f38b.png"},{emoji:"🎍",name:"bamboo",shortcodes:["bamboo"],tags:["bamboo","celebration","japanese","pine"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f38d.png"},{emoji:"🎎",name:"dolls",shortcodes:["dolls"],tags:["celebration","doll","festival","japanese","japanese dolls"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f38e.png"},{emoji:"🎏",name:"flags",shortcodes:["carp_streamer","flags"],tags:["carp","celebration","streamer"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f38f.png"},{emoji:"🎐",name:"wind_chime",shortcodes:["wind_chime"],tags:["bell","celebration","chime","wind"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f390.png"},{emoji:"🎑",name:"rice_scene",shortcodes:["moon_ceremony","rice_scene"],tags:["celebration","ceremony","moon"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f391.png"},{emoji:"🧧",name:"red_envelope",shortcodes:["red_envelope"],tags:["gift","good luck","hóngbāo","lai see","money"],group:"activities",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9e7.png"},{emoji:"🎀",name:"ribbon",shortcodes:["ribbon"],tags:["celebration"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f380.png"},{emoji:"🎁",name:"gift",shortcodes:["gift"],tags:["box","celebration","gift","present","wrapped"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f381.png"},{emoji:"🎗",name:"reminder_ribbon",shortcodes:["reminder_ribbon"],tags:["celebration","reminder","ribbon"],group:"activities",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f397-fe0f.png"},{emoji:"🎟",name:"tickets",shortcodes:["admission_tickets","tickets"],tags:["admission","ticket"],group:"activities",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f39f-fe0f.png"},{emoji:"🎫",name:"ticket",shortcodes:["ticket"],tags:["admission"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3ab.png"},{emoji:"🎖",name:"medal_military",shortcodes:["military_medal"],tags:["celebration","medal","military"],group:"activities",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f396-fe0f.png"},{emoji:"🏆",name:"trophy",shortcodes:["trophy"],tags:["prize"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3c6.png"},{emoji:"🏅",name:"medal_sports",shortcodes:["sports_medal"],tags:["medal"],group:"activities",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3c5.png"},{emoji:"🥇",name:"1st_place_medal",shortcodes:["1st","first_place_medal"],tags:["first","gold","medal"],group:"activities",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f947.png"},{emoji:"🥈",name:"2nd_place_medal",shortcodes:["2nd","second_place_medal"],tags:["medal","second","silver"],group:"activities",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f948.png"},{emoji:"🥉",name:"3rd_place_medal",shortcodes:["3rd","third_place_medal"],tags:["bronze","medal","third"],group:"activities",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f949.png"},{emoji:"⚽",name:"soccer",shortcodes:["soccer"],tags:["ball","football","soccer"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26bd.png"},{emoji:"⚾",name:"baseball",shortcodes:["baseball"],tags:["ball"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26be.png"},{emoji:"🥎",name:"softball",shortcodes:["softball"],tags:["ball","glove","underarm"],group:"activities",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f94e.png"},{emoji:"🏀",name:"basketball",shortcodes:["basketball"],tags:["ball","hoop"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3c0.png"},{emoji:"🏐",name:"volleyball",shortcodes:["volleyball"],tags:["ball","game"],group:"activities",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3d0.png"},{emoji:"🏈",name:"football",shortcodes:["football"],tags:["american","ball","football"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3c8.png"},{emoji:"🏉",name:"rugby_football",shortcodes:["rugby_football"],tags:["ball","football","rugby"],group:"activities",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3c9.png"},{emoji:"🎾",name:"tennis",shortcodes:["tennis"],tags:["ball","racquet"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3be.png"},{emoji:"🥏",name:"flying_disc",shortcodes:["flying_disc"],tags:["ultimate"],group:"activities",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f94f.png"},{emoji:"🎳",name:"bowling",shortcodes:["bowling"],tags:["ball","game"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3b3.png"},{emoji:"🏏",name:"cricket_game",shortcodes:["cricket_game"],tags:["ball","bat","game"],group:"activities",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3cf.png"},{emoji:"🏑",name:"field_hockey",shortcodes:["field_hockey"],tags:["ball","field","game","hockey","stick"],group:"activities",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3d1.png"},{emoji:"🏒",name:"ice_hockey",shortcodes:["hockey"],tags:["game","hockey","ice","puck","stick"],group:"activities",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3d2.png"},{emoji:"🥍",name:"lacrosse",shortcodes:["lacrosse"],tags:["ball","goal","stick"],group:"activities",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f94d.png"},{emoji:"🏓",name:"ping_pong",shortcodes:["ping_pong"],tags:["ball","bat","game","paddle","table tennis"],group:"activities",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3d3.png"},{emoji:"🏸",name:"badminton",shortcodes:["badminton"],tags:["birdie","game","racquet","shuttlecock"],group:"activities",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3f8.png"},{emoji:"🥊",name:"boxing_glove",shortcodes:["boxing_glove"],tags:["boxing","glove"],group:"activities",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f94a.png"},{emoji:"🥋",name:"martial_arts_uniform",shortcodes:["martial_arts_uniform"],tags:["judo","karate","martial arts","taekwondo","uniform"],group:"activities",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f94b.png"},{emoji:"🥅",name:"goal_net",shortcodes:["goal_net"],tags:["goal","net"],group:"activities",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f945.png"},{emoji:"⛳",name:"golf",shortcodes:["golf"],tags:["golf","hole"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26f3.png"},{emoji:"⛸",name:"ice_skate",shortcodes:["ice_skate"],tags:["ice","skate"],group:"activities",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26f8-fe0f.png"},{emoji:"🎣",name:"fishing_pole_and_fish",shortcodes:["fishing_pole","fishing_pole_and_fish"],tags:["fish","pole"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3a3.png"},{emoji:"🤿",name:"diving_mask",shortcodes:["diving_mask"],tags:["diving","scuba","snorkeling"],group:"activities",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f93f.png"},{emoji:"🎽",name:"running_shirt_with_sash",shortcodes:["running_shirt","running_shirt_with_sash"],tags:["athletics","running","sash","shirt"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3bd.png"},{emoji:"🎿",name:"ski",shortcodes:["ski"],tags:["ski","snow"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3bf.png"},{emoji:"🛷",name:"sled",shortcodes:["sled"],tags:["sledge","sleigh"],group:"activities",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6f7.png"},{emoji:"🥌",name:"curling_stone",shortcodes:["curling_stone"],tags:["game","rock"],group:"activities",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f94c.png"},{emoji:"🎯",name:"dart",shortcodes:["bullseye","dart","direct_hit"],tags:["dart","direct hit","game","hit","target"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3af.png"},{emoji:"🪀",name:"yo_yo",shortcodes:["yo_yo"],tags:["fluctuate","toy"],group:"activities",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa80.png"},{emoji:"🪁",name:"kite",shortcodes:["kite"],tags:["fly","soar"],group:"activities",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa81.png"},{emoji:"🎱",name:"8ball",shortcodes:["8ball","billiards"],tags:["8","ball","billiard","eight","game"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3b1.png"},{emoji:"🔮",name:"crystal_ball",shortcodes:["crystal_ball"],tags:["ball","crystal","fairy tale","fantasy","fortune","tool"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f52e.png"},{emoji:"🪄",name:"magic_wand",shortcodes:["magic_wand"],tags:["magic","witch","wizard"],group:"activities",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa84.png"},{emoji:"🧿",name:"nazar_amulet",shortcodes:["nazar_amulet"],tags:["bead","charm","evil-eye","nazar","talisman"],group:"activities",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9ff.png"},{emoji:"🎮",name:"video_game",shortcodes:["controller","video_game"],tags:["controller","game"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3ae.png"},{emoji:"🕹",name:"joystick",shortcodes:["joystick"],tags:["game","video game"],group:"activities",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f579-fe0f.png"},{emoji:"🎰",name:"slot_machine",shortcodes:["slot_machine"],tags:["game","slot"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3b0.png"},{emoji:"🎲",name:"game_die",shortcodes:["game_die"],tags:["dice","die","game"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3b2.png"},{emoji:"🧩",name:"jigsaw",shortcodes:["jigsaw","puzzle_piece"],tags:["clue","interlocking","jigsaw","piece","puzzle"],group:"activities",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9e9.png"},{emoji:"🧸",name:"teddy_bear",shortcodes:["teddy_bear"],tags:["plaything","plush","stuffed","toy"],group:"activities",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9f8.png"},{emoji:"🪅",name:"pinata",shortcodes:["pinata"],tags:["celebration","party"],group:"activities",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa85.png"},{emoji:"🪆",name:"nesting_dolls",shortcodes:["nesting_dolls"],tags:["doll","nesting","russia"],group:"activities",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa86.png"},{emoji:"♠",name:"spades",shortcodes:["spades"],tags:["card","game"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2660-fe0f.png"},{emoji:"♥",name:"hearts",shortcodes:["hearts"],tags:["card","game"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2665-fe0f.png"},{emoji:"♦",name:"diamonds",shortcodes:["diamonds"],tags:["card","game"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2666-fe0f.png"},{emoji:"♣",name:"clubs",shortcodes:["clubs"],tags:["card","game"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2663-fe0f.png"},{emoji:"♟",name:"chess_pawn",shortcodes:["chess_pawn"],tags:["chess","dupe","expendable"],group:"activities",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/265f-fe0f.png"},{emoji:"🃏",name:"black_joker",shortcodes:["black_joker"],tags:["card","game","wildcard"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f0cf.png"},{emoji:"🀄",name:"mahjong",shortcodes:["mahjong"],tags:["game","mahjong","red"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f004.png"},{emoji:"🎴",name:"flower_playing_cards",shortcodes:["flower_playing_cards"],tags:["card","flower","game","japanese","playing"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3b4.png"},{emoji:"🎭",name:"performing_arts",shortcodes:["performing_arts"],tags:["art","mask","performing","theater","theatre"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3ad.png"},{emoji:"🖼",name:"framed_picture",shortcodes:["frame_with_picture","framed_picture"],tags:["art","frame","museum","painting","picture"],group:"activities",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5bc-fe0f.png"},{emoji:"🎨",name:"art",shortcodes:["art","palette"],tags:["art","museum","painting","palette"],group:"activities",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3a8.png"},{emoji:"🧵",name:"thread",shortcodes:["thread"],tags:["needle","sewing","spool","string"],group:"activities",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9f5.png"},{emoji:"🪡",name:"sewing_needle",shortcodes:["sewing_needle"],tags:["embroidery","needle","sewing","stitches","sutures","tailoring"],group:"activities",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1faa1.png"},{emoji:"🧶",name:"yarn",shortcodes:["yarn"],tags:["ball","crochet","knit"],group:"activities",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9f6.png"},{emoji:"🪢",name:"knot",shortcodes:["knot"],tags:["rope","tangled","tie","twine","twist"],group:"activities",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1faa2.png"},{emoji:"👓",name:"eyeglasses",shortcodes:["eyeglasses","glasses"],tags:["clothing","eye","eyeglasses","eyewear"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f453.png"},{emoji:"🕶",name:"dark_sunglasses",shortcodes:["sunglasses"],tags:["dark","eye","eyewear","glasses"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f576-fe0f.png"},{emoji:"🥽",name:"goggles",shortcodes:["goggles"],tags:["eye protection","swimming","welding"],group:"objects",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f97d.png"},{emoji:"🥼",name:"lab_coat",shortcodes:["lab_coat"],tags:["doctor","experiment","scientist"],group:"objects",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f97c.png"},{emoji:"🦺",name:"safety_vest",shortcodes:["safety_vest"],tags:["emergency","safety","vest"],group:"objects",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9ba.png"},{emoji:"👔",name:"necktie",shortcodes:["necktie"],tags:["clothing","tie"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f454.png"},{emoji:"👕",name:"shirt",shortcodes:["shirt"],tags:["clothing","shirt","tshirt"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f455.png"},{emoji:"👖",name:"jeans",shortcodes:["jeans"],tags:["clothing","pants","trousers"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f456.png"},{emoji:"🧣",name:"scarf",shortcodes:["scarf"],tags:["neck"],group:"objects",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9e3.png"},{emoji:"🧤",name:"gloves",shortcodes:["gloves"],tags:["hand"],group:"objects",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9e4.png"},{emoji:"🧥",name:"coat",shortcodes:["coat"],tags:["jacket"],group:"objects",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9e5.png"},{emoji:"🧦",name:"socks",shortcodes:["socks"],tags:["stocking"],group:"objects",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9e6.png"},{emoji:"👗",name:"dress",shortcodes:["dress"],tags:["clothing"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f457.png"},{emoji:"👘",name:"kimono",shortcodes:["kimono"],tags:["clothing"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f458.png"},{emoji:"🥻",name:"sari",shortcodes:["sari"],tags:["clothing","dress"],group:"objects",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f97b.png"},{emoji:"🩱",name:"one_piece_swimsuit",shortcodes:["one_piece_swimsuit"],tags:["bathing suit"],group:"objects",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa71.png"},{emoji:"🩲",name:"swim_brief",shortcodes:["briefs"],tags:["bathing suit","one-piece","swimsuit","underwear"],group:"objects",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa72.png"},{emoji:"🩳",name:"shorts",shortcodes:["shorts"],tags:["bathing suit","pants","underwear"],group:"objects",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa73.png"},{emoji:"👙",name:"bikini",shortcodes:["bikini"],tags:["clothing","swim"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f459.png"},{emoji:"👚",name:"womans_clothes",shortcodes:["womans_clothes"],tags:["clothing","woman"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f45a.png"},{emoji:"👛",name:"purse",shortcodes:["purse"],tags:["clothing","coin"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f45b.png"},{emoji:"👜",name:"handbag",shortcodes:["handbag"],tags:["bag","clothing","purse"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f45c.png"},{emoji:"👝",name:"pouch",shortcodes:["clutch_bag","pouch"],tags:["bag","clothing","pouch"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f45d.png"},{emoji:"🛍",name:"shopping",shortcodes:["shopping_bags"],tags:["bag","hotel","shopping"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6cd-fe0f.png"},{emoji:"🎒",name:"school_satchel",shortcodes:["backpack","school_satchel"],tags:["bag","rucksack","satchel","school"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f392.png"},{emoji:"🩴",name:"thong_sandal",shortcodes:["thong_sandal"],tags:["beach sandals","sandals","thong sandals","thongs","zōri"],group:"objects",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa74.png"},{emoji:"👞",name:"mans_shoe",shortcodes:["mans_shoe"],tags:["clothing","man","shoe"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f45e.png"},{emoji:"👟",name:"athletic_shoe",shortcodes:["athletic_shoe","sneaker"],tags:["athletic","clothing","shoe","sneaker"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f45f.png"},{emoji:"🥾",name:"hiking_boot",shortcodes:["hiking_boot"],tags:["backpacking","boot","camping","hiking"],group:"objects",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f97e.png"},{emoji:"🥿",name:"flat_shoe",shortcodes:["flat_shoe","womans_flat_shoe"],tags:["ballet flat","slip-on","slipper"],group:"objects",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f97f.png"},{emoji:"👠",name:"high_heel",shortcodes:["high_heel"],tags:["clothing","heel","shoe","woman"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f460.png"},{emoji:"👡",name:"sandal",shortcodes:["sandal"],tags:["clothing","sandal","shoe","woman"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f461.png"},{emoji:"🩰",name:"ballet_shoes",shortcodes:["ballet_shoes"],tags:["ballet","dance"],group:"objects",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa70.png"},{emoji:"👢",name:"boot",shortcodes:["boot"],tags:["boot","clothing","shoe","woman"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f462.png"},{emoji:"👑",name:"crown",shortcodes:["crown"],tags:["clothing","king","queen"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f451.png"},{emoji:"👒",name:"womans_hat",shortcodes:["womans_hat"],tags:["clothing","hat","woman"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f452.png"},{emoji:"🎩",name:"tophat",shortcodes:["top_hat","tophat"],tags:["clothing","hat","top","tophat"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3a9.png"},{emoji:"🎓",name:"mortar_board",shortcodes:["graduation_cap","mortar_board"],tags:["cap","celebration","clothing","graduation","hat"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f393.png"},{emoji:"🧢",name:"billed_cap",shortcodes:["billed_cap"],tags:["baseball cap"],group:"objects",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9e2.png"},{emoji:"🪖",name:"military_helmet",shortcodes:["military_helmet"],tags:["army","helmet","military","soldier","warrior"],group:"objects",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa96.png"},{emoji:"⛑",name:"rescue_worker_helmet",shortcodes:["helmet_with_cross","rescue_worker_helmet"],tags:["aid","cross","face","hat","helmet"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26d1-fe0f.png"},{emoji:"📿",name:"prayer_beads",shortcodes:["prayer_beads"],tags:["beads","clothing","necklace","prayer","religion"],group:"objects",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4ff.png"},{emoji:"💄",name:"lipstick",shortcodes:["lipstick"],tags:["cosmetics","makeup"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f484.png"},{emoji:"💍",name:"ring",shortcodes:["ring"],tags:["diamond"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f48d.png"},{emoji:"💎",name:"gem",shortcodes:["gem"],tags:["diamond","gem","jewel"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f48e.png"},{emoji:"🔇",name:"mute",shortcodes:["mute","no_sound"],tags:["mute","quiet","silent","speaker"],group:"objects",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f507.png"},{emoji:"🔈",name:"speaker",shortcodes:["low_volume","quiet_sound","speaker"],tags:["soft"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f508.png"},{emoji:"🔉",name:"sound",shortcodes:["medium_volumne","sound"],tags:["medium"],group:"objects",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f509.png"},{emoji:"🔊",name:"loud_sound",shortcodes:["high_volume","loud_sound"],tags:["loud"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f50a.png"},{emoji:"📢",name:"loudspeaker",shortcodes:["loudspeaker"],tags:["loud","public address"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4e2.png"},{emoji:"📣",name:"mega",shortcodes:["mega","megaphone"],tags:["cheering"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4e3.png"},{emoji:"📯",name:"postal_horn",shortcodes:["postal_horn"],tags:["horn","post","postal"],group:"objects",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4ef.png"},{emoji:"🔔",name:"bell",shortcodes:["bell"],tags:["bell"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f514.png"},{emoji:"🔕",name:"no_bell",shortcodes:["no_bell"],tags:["bell","forbidden","mute","quiet","silent"],group:"objects",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f515.png"},{emoji:"🎼",name:"musical_score",shortcodes:["musical_score"],tags:["music","score"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3bc.png"},{emoji:"🎵",name:"musical_note",shortcodes:["musical_note"],tags:["music","note"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3b5.png"},{emoji:"🎶",name:"notes",shortcodes:["musical_notes","notes"],tags:["music","note","notes"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3b6.png"},{emoji:"🎙",name:"studio_microphone",shortcodes:["studio_microphone"],tags:["mic","microphone","music","studio"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f399-fe0f.png"},{emoji:"🎚",name:"level_slider",shortcodes:["level_slider"],tags:["level","music","slider"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f39a-fe0f.png"},{emoji:"🎛",name:"control_knobs",shortcodes:["control_knobs"],tags:["control","knobs","music"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f39b-fe0f.png"},{emoji:"🎤",name:"microphone",shortcodes:["microphone"],tags:["karaoke","mic"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3a4.png"},{emoji:"🎧",name:"headphones",shortcodes:["headphones"],tags:["earbud"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3a7.png"},{emoji:"📻",name:"radio",shortcodes:["radio"],tags:["video"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4fb.png"},{emoji:"🎷",name:"saxophone",shortcodes:["saxophone"],tags:["instrument","music","sax"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3b7.png"},{emoji:"🪗",name:"accordion",shortcodes:["accordion"],tags:["concertina","squeeze box"],group:"objects",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa97.png"},{emoji:"🎸",name:"guitar",shortcodes:["guitar"],tags:["instrument","music"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3b8.png"},{emoji:"🎹",name:"musical_keyboard",shortcodes:["musical_keyboard"],tags:["instrument","keyboard","music","piano"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3b9.png"},{emoji:"🎺",name:"trumpet",shortcodes:["trumpet"],tags:["instrument","music"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3ba.png"},{emoji:"🎻",name:"violin",shortcodes:["violin"],tags:["instrument","music"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3bb.png"},{emoji:"🪕",name:"banjo",shortcodes:["banjo"],tags:["music","stringed"],group:"objects",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa95.png"},{emoji:"🥁",name:"drum",shortcodes:["drum"],tags:["drumsticks","music"],group:"objects",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f941.png"},{emoji:"🪘",name:"long_drum",shortcodes:["long_drum"],tags:["beat","conga","drum","rhythm"],group:"objects",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa98.png"},{emoji:"📱",name:"iphone",shortcodes:["android","iphone","mobile_phone"],tags:["cell","mobile","phone","telephone"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4f1.png"},{emoji:"📲",name:"calling",shortcodes:["calling","mobile_phone_arrow"],tags:["arrow","cell","mobile","phone","receive"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4f2.png"},{emoji:"☎",name:"phone",shortcodes:["telephone"],tags:["phone"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/260e-fe0f.png"},{emoji:"📞",name:"telephone_receiver",shortcodes:["telephone_receiver"],tags:["phone","receiver","telephone"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4de.png"},{emoji:"📟",name:"pager",shortcodes:["pager"],tags:["pager"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4df.png"},{emoji:"📠",name:"fax",shortcodes:["fax","fax_machine"],tags:["fax"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4e0.png"},{emoji:"🔋",name:"battery",shortcodes:["battery"],tags:["battery"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f50b.png"},{emoji:"🔌",name:"electric_plug",shortcodes:["electric_plug"],tags:["electric","electricity","plug"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f50c.png"},{emoji:"💻",name:"computer",shortcodes:["laptop"],tags:["computer","pc","personal"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4bb.png"},{emoji:"🖥",name:"desktop_computer",shortcodes:["computer","desktop_computer"],tags:["computer","desktop"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5a5-fe0f.png"},{emoji:"🖨",name:"printer",shortcodes:["printer"],tags:["computer"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5a8-fe0f.png"},{emoji:"⌨",name:"keyboard",shortcodes:["keyboard"],tags:["computer"],group:"objects",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2328-fe0f.png"},{emoji:"🖱",name:"computer_mouse",shortcodes:["computer_mouse"],tags:["computer"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5b1-fe0f.png"},{emoji:"🖲",name:"trackball",shortcodes:["trackball"],tags:["computer"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5b2-fe0f.png"},{emoji:"💽",name:"minidisc",shortcodes:["computer_disk","minidisc"],tags:["computer","disk","minidisk","optical"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4bd.png"},{emoji:"💾",name:"floppy_disk",shortcodes:["floppy_disk"],tags:["computer","disk","floppy"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4be.png"},{emoji:"💿",name:"cd",shortcodes:["cd","optical_disk"],tags:["cd","computer","disk","optical"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4bf.png"},{emoji:"📀",name:"dvd",shortcodes:["dvd"],tags:["blu-ray","computer","disk","optical"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4c0.png"},{emoji:"🧮",name:"abacus",shortcodes:["abacus"],tags:["calculation"],group:"objects",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9ee.png"},{emoji:"🎥",name:"movie_camera",shortcodes:["movie_camera"],tags:["camera","cinema","movie"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3a5.png"},{emoji:"🎞",name:"film_strip",shortcodes:["film_frames"],tags:["cinema","film","frames","movie"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f39e-fe0f.png"},{emoji:"📽",name:"film_projector",shortcodes:["film_projector"],tags:["cinema","film","movie","projector","video"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4fd-fe0f.png"},{emoji:"🎬",name:"clapper",shortcodes:["clapper"],tags:["clapper","movie"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3ac.png"},{emoji:"📺",name:"tv",shortcodes:["tv"],tags:["tv","video"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4fa.png"},{emoji:"📷",name:"camera",shortcodes:["camera"],tags:["video"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4f7.png"},{emoji:"📸",name:"camera_flash",shortcodes:["camera_with_flash"],tags:["camera","flash","video"],group:"objects",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4f8.png"},{emoji:"📹",name:"video_camera",shortcodes:["video_camera"],tags:["camera","video"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4f9.png"},{emoji:"📼",name:"vhs",shortcodes:["vhs","videocassette"],tags:["tape","vhs","video"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4fc.png"},{emoji:"🔍",name:"mag",shortcodes:["mag"],tags:["glass","magnifying","search","tool"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f50d.png"},{emoji:"🔎",name:"mag_right",shortcodes:["mag_right"],tags:["glass","magnifying","search","tool"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f50e.png"},{emoji:"🕯",name:"candle",shortcodes:["candle"],tags:["light"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f56f-fe0f.png"},{emoji:"💡",name:"bulb",shortcodes:["bulb","light_bulb"],tags:["bulb","comic","electric","idea","light"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4a1.png"},{emoji:"🔦",name:"flashlight",shortcodes:["flashlight"],tags:["electric","light","tool","torch"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f526.png"},{emoji:"🏮",name:"izakaya_lantern",shortcodes:["izakaya_lantern","red_paper_lantern"],tags:["bar","lantern","light","red"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3ee.png"},{emoji:"🪔",name:"diya_lamp",shortcodes:["diya_lamp"],tags:["diya","lamp","oil"],group:"objects",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa94.png"},{emoji:"📔",name:"notebook_with_decorative_cover",shortcodes:["notebook_with_decorative_cover"],tags:["book","cover","decorated","notebook"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4d4.png"},{emoji:"📕",name:"closed_book",shortcodes:["closed_book"],tags:["book","closed"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4d5.png"},{emoji:"📖",name:"book",shortcodes:["book","open_book"],tags:["book","open"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4d6.png"},{emoji:"📗",name:"green_book",shortcodes:["green_book"],tags:["book","green"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4d7.png"},{emoji:"📘",name:"blue_book",shortcodes:["blue_book"],tags:["blue","book"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4d8.png"},{emoji:"📙",name:"orange_book",shortcodes:["orange_book"],tags:["book","orange"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4d9.png"},{emoji:"📚",name:"books",shortcodes:["books"],tags:["book"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4da.png"},{emoji:"📓",name:"notebook",shortcodes:["notebook"],tags:["notebook"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4d3.png"},{emoji:"📒",name:"ledger",shortcodes:["ledger"],tags:["notebook"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4d2.png"},{emoji:"📃",name:"page_with_curl",shortcodes:["page_with_curl"],tags:["curl","document","page"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4c3.png"},{emoji:"📜",name:"scroll",shortcodes:["scroll"],tags:["paper"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4dc.png"},{emoji:"📄",name:"page_facing_up",shortcodes:["page_facing_up"],tags:["document","page"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4c4.png"},{emoji:"📰",name:"newspaper",shortcodes:["newspaper"],tags:["news","paper"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4f0.png"},{emoji:"🗞",name:"newspaper_roll",shortcodes:["rolled_up_newspaper"],tags:["news","newspaper","paper","rolled"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5de-fe0f.png"},{emoji:"📑",name:"bookmark_tabs",shortcodes:["bookmark_tabs"],tags:["bookmark","mark","marker","tabs"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4d1.png"},{emoji:"🔖",name:"bookmark",shortcodes:["bookmark"],tags:["mark"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f516.png"},{emoji:"🏷",name:"label",shortcodes:["label"],tags:["label"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3f7-fe0f.png"},{emoji:"💰",name:"moneybag",shortcodes:["moneybag"],tags:["bag","dollar","money","moneybag"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4b0.png"},{emoji:"🪙",name:"coin",shortcodes:["coin"],tags:["gold","metal","money","silver","treasure"],group:"objects",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa99.png"},{emoji:"💴",name:"yen",shortcodes:["yen"],tags:["banknote","bill","currency","money","note","yen"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4b4.png"},{emoji:"💵",name:"dollar",shortcodes:["dollar"],tags:["banknote","bill","currency","dollar","money","note"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4b5.png"},{emoji:"💶",name:"euro",shortcodes:["euro"],tags:["banknote","bill","currency","euro","money","note"],group:"objects",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4b6.png"},{emoji:"💷",name:"pound",shortcodes:["pound"],tags:["banknote","bill","currency","money","note","pound"],group:"objects",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4b7.png"},{emoji:"💸",name:"money_with_wings",shortcodes:["money_with_wings"],tags:["banknote","bill","fly","money","wings"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4b8.png"},{emoji:"💳",name:"credit_card",shortcodes:["credit_card"],tags:["card","credit","money"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4b3.png"},{emoji:"🧾",name:"receipt",shortcodes:["receipt"],tags:["accounting","bookkeeping","evidence","proof"],group:"objects",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9fe.png"},{emoji:"💹",name:"chart",shortcodes:["chart"],tags:["chart","graph","growth","money","yen"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4b9.png"},{emoji:"✉",name:"envelope",shortcodes:["envelope"],tags:["email","letter"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2709-fe0f.png"},{emoji:"📧",name:"e-mail",shortcodes:["e-mail","email"],tags:["email","letter","mail"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4e7.png"},{emoji:"📨",name:"incoming_envelope",shortcodes:["incoming_envelope"],tags:["e-mail","email","envelope","incoming","letter","receive"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4e8.png"},{emoji:"📩",name:"envelope_with_arrow",shortcodes:["envelope_with_arrow"],tags:["arrow","e-mail","email","envelope","outgoing"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4e9.png"},{emoji:"📤",name:"outbox_tray",shortcodes:["outbox_tray"],tags:["box","letter","mail","outbox","sent","tray"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4e4.png"},{emoji:"📥",name:"inbox_tray",shortcodes:["inbox_tray"],tags:["box","inbox","letter","mail","receive","tray"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4e5.png"},{emoji:"📦",name:"package",shortcodes:["package"],tags:["box","parcel"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4e6.png"},{emoji:"📫",name:"mailbox",shortcodes:["mailbox"],tags:["closed","mail","mailbox","postbox"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4eb.png"},{emoji:"📪",name:"mailbox_closed",shortcodes:["mailbox_closed"],tags:["closed","lowered","mail","mailbox","postbox"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4ea.png"},{emoji:"📬",name:"mailbox_with_mail",shortcodes:["mailbox_with_mail"],tags:["mail","mailbox","open","postbox"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4ec.png"},{emoji:"📭",name:"mailbox_with_no_mail",shortcodes:["mailbox_with_no_mail"],tags:["lowered","mail","mailbox","open","postbox"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4ed.png"},{emoji:"📮",name:"postbox",shortcodes:["postbox"],tags:["mail","mailbox"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4ee.png"},{emoji:"🗳",name:"ballot_box",shortcodes:["ballot_box"],tags:["ballot","box"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5f3-fe0f.png"},{emoji:"✏",name:"pencil2",shortcodes:["pencil"],tags:["pencil"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/270f-fe0f.png"},{emoji:"✒",name:"black_nib",shortcodes:["black_nib"],tags:["nib","pen"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2712-fe0f.png"},{emoji:"🖋",name:"fountain_pen",shortcodes:["fountain_pen"],tags:["fountain","pen"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f58b-fe0f.png"},{emoji:"🖊",name:"pen",shortcodes:["pen"],tags:["ballpoint"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f58a-fe0f.png"},{emoji:"🖌",name:"paintbrush",shortcodes:["paintbrush"],tags:["painting"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f58c-fe0f.png"},{emoji:"🖍",name:"crayon",shortcodes:["crayon"],tags:["crayon"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f58d-fe0f.png"},{emoji:"📝",name:"memo",shortcodes:["memo"],tags:["pencil"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4dd.png"},{emoji:"💼",name:"briefcase",shortcodes:["briefcase"],tags:["briefcase"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4bc.png"},{emoji:"📁",name:"file_folder",shortcodes:["file_folder"],tags:["file","folder"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4c1.png"},{emoji:"📂",name:"open_file_folder",shortcodes:["open_file_folder"],tags:["file","folder","open"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4c2.png"},{emoji:"🗂",name:"card_index_dividers",shortcodes:["card_index_dividers"],tags:["card","dividers","index"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5c2-fe0f.png"},{emoji:"📅",name:"date",shortcodes:["date"],tags:["date"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4c5.png"},{emoji:"📆",name:"calendar",shortcodes:["calendar"],tags:["calendar"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4c6.png"},{emoji:"🗒",name:"spiral_notepad",shortcodes:["notepad_spiral"],tags:["note","pad","spiral"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5d2-fe0f.png"},{emoji:"🗓",name:"spiral_calendar",shortcodes:["calendar_spiral"],tags:["calendar","pad","spiral"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5d3-fe0f.png"},{emoji:"📇",name:"card_index",shortcodes:["card_index"],tags:["card","index","rolodex"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4c7.png"},{emoji:"📈",name:"chart_with_upwards_trend",shortcodes:["chart_increasing","chart_with_upwards_trend"],tags:["chart","graph","growth","trend","upward"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4c8.png"},{emoji:"📉",name:"chart_with_downwards_trend",shortcodes:["chart_decreasing","chart_with_downwards_trend"],tags:["chart","down","graph","trend"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4c9.png"},{emoji:"📊",name:"bar_chart",shortcodes:["bar_chart"],tags:["bar","chart","graph"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4ca.png"},{emoji:"📋",name:"clipboard",shortcodes:["clipboard"],tags:["clipboard"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4cb.png"},{emoji:"📌",name:"pushpin",shortcodes:["pushpin"],tags:["pin"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4cc.png"},{emoji:"📍",name:"round_pushpin",shortcodes:["round_pushpin"],tags:["pin","pushpin"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4cd.png"},{emoji:"📎",name:"paperclip",shortcodes:["paperclip"],tags:["paperclip"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4ce.png"},{emoji:"🖇",name:"paperclips",shortcodes:["paperclips"],tags:["link","paperclip"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f587-fe0f.png"},{emoji:"📏",name:"straight_ruler",shortcodes:["straight_ruler"],tags:["ruler","straight edge"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4cf.png"},{emoji:"📐",name:"triangular_ruler",shortcodes:["triangular_ruler"],tags:["ruler","set","triangle"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4d0.png"},{emoji:"✂",name:"scissors",shortcodes:["scissors"],tags:["cutting","tool"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2702-fe0f.png"},{emoji:"🗃",name:"card_file_box",shortcodes:["card_file_box"],tags:["box","card","file"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5c3-fe0f.png"},{emoji:"🗄",name:"file_cabinet",shortcodes:["file_cabinet"],tags:["cabinet","file","filing"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5c4-fe0f.png"},{emoji:"🗑",name:"wastebasket",shortcodes:["trashcan","wastebasket"],tags:["wastebasket"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5d1-fe0f.png"},{emoji:"🔒",name:"lock",shortcodes:["lock","locked"],tags:["closed"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f512.png"},{emoji:"🔓",name:"unlock",shortcodes:["unlock","unlocked"],tags:["lock","open","unlock"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f513.png"},{emoji:"🔏",name:"lock_with_ink_pen",shortcodes:["lock_with_ink_pen","locked_with_pen"],tags:["ink","lock","nib","pen","privacy"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f50f.png"},{emoji:"🔐",name:"closed_lock_with_key",shortcodes:["closed_lock_with_key","locked_with_key"],tags:["closed","key","lock","secure"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f510.png"},{emoji:"🔑",name:"key",shortcodes:["key"],tags:["lock","password"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f511.png"},{emoji:"🗝",name:"old_key",shortcodes:["old_key"],tags:["clue","key","lock","old"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5dd-fe0f.png"},{emoji:"🔨",name:"hammer",shortcodes:["hammer"],tags:["tool"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f528.png"},{emoji:"🪓",name:"axe",shortcodes:["axe"],tags:["chop","hatchet","split","wood"],group:"objects",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa93.png"},{emoji:"⛏",name:"pick",shortcodes:["pick"],tags:["mining","tool"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26cf-fe0f.png"},{emoji:"⚒",name:"hammer_and_pick",shortcodes:["hammer_and_pick"],tags:["hammer","pick","tool"],group:"objects",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2692-fe0f.png"},{emoji:"🛠",name:"hammer_and_wrench",shortcodes:["hammer_and_wrench"],tags:["hammer","spanner","tool","wrench"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6e0-fe0f.png"},{emoji:"🗡",name:"dagger",shortcodes:["dagger"],tags:["knife","weapon"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5e1-fe0f.png"},{emoji:"⚔",name:"crossed_swords",shortcodes:["crossed_swords"],tags:["crossed","swords","weapon"],group:"objects",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2694-fe0f.png"},{emoji:"🔫",name:"gun",shortcodes:["gun","pistol"],tags:["gun","handgun","pistol","revolver","tool","water","weapon"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f52b.png"},{emoji:"🪃",name:"boomerang",shortcodes:["boomerang"],tags:["australia","rebound","repercussion"],group:"objects",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa83.png"},{emoji:"🏹",name:"bow_and_arrow",shortcodes:["bow_and_arrow"],tags:["archer","arrow","bow","sagittarius","zodiac"],group:"objects",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3f9.png"},{emoji:"🛡",name:"shield",shortcodes:["shield"],tags:["weapon"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6e1-fe0f.png"},{emoji:"🪚",name:"carpentry_saw",shortcodes:["carpentry_saw"],tags:["carpenter","lumber","saw","tool"],group:"objects",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa9a.png"},{emoji:"🔧",name:"wrench",shortcodes:["wrench"],tags:["spanner","tool"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f527.png"},{emoji:"🪛",name:"screwdriver",shortcodes:["screwdriver"],tags:["screw","tool"],group:"objects",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa9b.png"},{emoji:"🔩",name:"nut_and_bolt",shortcodes:["nut_and_bolt"],tags:["bolt","nut","tool"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f529.png"},{emoji:"⚙",name:"gear",shortcodes:["gear"],tags:["cog","cogwheel","tool"],group:"objects",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2699-fe0f.png"},{emoji:"🗜",name:"clamp",shortcodes:["clamp","compression"],tags:["compress","tool","vice"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5dc-fe0f.png"},{emoji:"⚖",name:"balance_scale",shortcodes:["scales"],tags:["balance","justice","libra","scale","zodiac"],group:"objects",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2696-fe0f.png"},{emoji:"🦯",name:"probing_cane",shortcodes:["probing_cane","white_cane"],tags:["accessibility","blind"],group:"objects",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9af.png"},{emoji:"🔗",name:"link",shortcodes:["link"],tags:["link"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f517.png"},{emoji:"⛓",name:"chains",shortcodes:["chains"],tags:["chain"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26d3-fe0f.png"},{emoji:"🪝",name:"hook",shortcodes:["hook"],tags:["catch","crook","curve","ensnare","selling point"],group:"objects",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa9d.png"},{emoji:"🧰",name:"toolbox",shortcodes:["toolbox"],tags:["chest","mechanic","tool"],group:"objects",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9f0.png"},{emoji:"🧲",name:"magnet",shortcodes:["magnet"],tags:["attraction","horseshoe","magnetic"],group:"objects",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9f2.png"},{emoji:"🪜",name:"ladder",shortcodes:["ladder"],tags:["climb","rung","step"],group:"objects",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa9c.png"},{emoji:"⚗",name:"alembic",shortcodes:["alembic"],tags:["chemistry","tool"],group:"objects",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2697-fe0f.png"},{emoji:"🧪",name:"test_tube",shortcodes:["test_tube"],tags:["chemist","chemistry","experiment","lab","science"],group:"objects",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9ea.png"},{emoji:"🧫",name:"petri_dish",shortcodes:["petri_dish"],tags:["bacteria","biologist","biology","culture","lab"],group:"objects",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9eb.png"},{emoji:"🧬",name:"dna",shortcodes:["dna","double_helix"],tags:["biologist","evolution","gene","genetics","life"],group:"objects",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9ec.png"},{emoji:"🔬",name:"microscope",shortcodes:["microscope"],tags:["science","tool"],group:"objects",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f52c.png"},{emoji:"🔭",name:"telescope",shortcodes:["telescope"],tags:["science","tool"],group:"objects",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f52d.png"},{emoji:"📡",name:"satellite",shortcodes:["satellite_antenna"],tags:["antenna","dish","satellite"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4e1.png"},{emoji:"💉",name:"syringe",shortcodes:["syringe"],tags:["medicine","needle","shot","sick"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f489.png"},{emoji:"🩸",name:"drop_of_blood",shortcodes:["drop_of_blood"],tags:["bleed","blood donation","injury","medicine","menstruation"],group:"objects",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa78.png"},{emoji:"💊",name:"pill",shortcodes:["pill"],tags:["doctor","medicine","sick"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f48a.png"},{emoji:"🩹",name:"adhesive_bandage",shortcodes:["adhesive_bandage","bandaid"],tags:["bandage"],group:"objects",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa79.png"},{emoji:"🩺",name:"stethoscope",shortcodes:["stethoscope"],tags:["doctor","heart","medicine"],group:"objects",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa7a.png"},{emoji:"🚪",name:"door",shortcodes:["door"],tags:["door"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6aa.png"},{emoji:"🛗",name:"elevator",shortcodes:["elevator"],tags:["accessibility","hoist","lift"],group:"objects",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6d7.png"},{emoji:"🪞",name:"mirror",shortcodes:["mirror"],tags:["reflection","reflector","speculum"],group:"objects",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa9e.png"},{emoji:"🪟",name:"window",shortcodes:["window"],tags:["frame","fresh air","opening","transparent","view"],group:"objects",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa9f.png"},{emoji:"🛏",name:"bed",shortcodes:["bed"],tags:["hotel","sleep"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6cf-fe0f.png"},{emoji:"🛋",name:"couch_and_lamp",shortcodes:["couch_and_lamp"],tags:["couch","hotel","lamp"],group:"objects",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6cb-fe0f.png"},{emoji:"🪑",name:"chair",shortcodes:["chair"],tags:["seat","sit"],group:"objects",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa91.png"},{emoji:"🚽",name:"toilet",shortcodes:["toilet"],tags:["toilet"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6bd.png"},{emoji:"🪠",name:"plunger",shortcodes:["plunger"],tags:["force cup","plumber","suction","toilet"],group:"objects",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1faa0.png"},{emoji:"🚿",name:"shower",shortcodes:["shower"],tags:["water"],group:"objects",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6bf.png"},{emoji:"🛁",name:"bathtub",shortcodes:["bathtub"],tags:["bath"],group:"objects",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6c1.png"},{emoji:"🪤",name:"mouse_trap",shortcodes:["mouse_trap"],tags:["bait","mousetrap","snare","trap"],group:"objects",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1faa4.png"},{emoji:"🪒",name:"razor",shortcodes:["razor"],tags:["sharp","shave"],group:"objects",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa92.png"},{emoji:"🧴",name:"lotion_bottle",shortcodes:["lotion_bottle"],tags:["lotion","moisturizer","shampoo","sunscreen"],group:"objects",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9f4.png"},{emoji:"🧷",name:"safety_pin",shortcodes:["safety_pin"],tags:["diaper","punk rock"],group:"objects",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9f7.png"},{emoji:"🧹",name:"broom",shortcodes:["broom"],tags:["cleaning","sweeping","witch"],group:"objects",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9f9.png"},{emoji:"🧺",name:"basket",shortcodes:["basket"],tags:["farming","laundry","picnic"],group:"objects",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9fa.png"},{emoji:"🧻",name:"roll_of_paper",shortcodes:["roll_of_paper","toilet_paper"],tags:["paper towels","toilet paper"],group:"objects",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9fb.png"},{emoji:"🪣",name:"bucket",shortcodes:["bucket"],tags:["cask","pail","vat"],group:"objects",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1faa3.png"},{emoji:"🧼",name:"soap",shortcodes:["soap"],tags:["bar","bathing","cleaning","lather","soapdish"],group:"objects",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9fc.png"},{emoji:"🪥",name:"toothbrush",shortcodes:["toothbrush"],tags:["bathroom","brush","clean","dental","hygiene","teeth"],group:"objects",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1faa5.png"},{emoji:"🧽",name:"sponge",shortcodes:["sponge"],tags:["absorbing","cleaning","porous"],group:"objects",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9fd.png"},{emoji:"🧯",name:"fire_extinguisher",shortcodes:["fire_extinguisher"],tags:["extinguish","fire","quench"],group:"objects",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9ef.png"},{emoji:"🛒",name:"shopping_cart",shortcodes:["shopping_cart"],tags:["cart","shopping","trolley"],group:"objects",emoticons:[],version:3,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6d2.png"},{emoji:"🚬",name:"smoking",shortcodes:["cigarette","smoking"],tags:["smoking"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6ac.png"},{emoji:"⚰",name:"coffin",shortcodes:["coffin"],tags:["death"],group:"objects",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26b0-fe0f.png"},{emoji:"🪦",name:"headstone",shortcodes:["headstone"],tags:["cemetery","grave","graveyard","tombstone"],group:"objects",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1faa6.png"},{emoji:"⚱",name:"funeral_urn",shortcodes:["funeral_urn"],tags:["ashes","death","funeral","urn"],group:"objects",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26b1-fe0f.png"},{emoji:"🗿",name:"moyai",shortcodes:["moai","moyai"],tags:["face","moyai","statue"],group:"objects",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5ff.png"},{emoji:"🪧",name:"placard",shortcodes:["placard"],tags:["demonstration","picket","protest","sign"],group:"objects",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1faa7.png"},{emoji:"🏧",name:"atm",shortcodes:["atm"],tags:["atm","atm sign","automated","bank","teller"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3e7.png"},{emoji:"🚮",name:"put_litter_in_its_place",shortcodes:["litter_bin","put_litter_in_its_place"],tags:["litter","litter bin"],group:"symbols",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6ae.png"},{emoji:"🚰",name:"potable_water",shortcodes:["potable_water"],tags:["drinking","potable","water"],group:"symbols",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6b0.png"},{emoji:"♿",name:"wheelchair",shortcodes:["handicapped","wheelchair"],tags:["access"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/267f.png"},{emoji:"🚹",name:"mens",shortcodes:["mens"],tags:["bathroom","lavatory","man","restroom","toilet","wc"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6b9.png"},{emoji:"🚺",name:"womens",shortcodes:["womens"],tags:["bathroom","lavatory","restroom","toilet","wc","woman"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6ba.png"},{emoji:"🚻",name:"restroom",shortcodes:["bathroom","restroom"],tags:["bathroom","lavatory","toilet","wc"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6bb.png"},{emoji:"🚼",name:"baby_symbol",shortcodes:["baby_symbol"],tags:["baby","changing"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6bc.png"},{emoji:"🚾",name:"wc",shortcodes:["water_closet","wc"],tags:["bathroom","closet","lavatory","restroom","toilet","water","wc"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6be.png"},{emoji:"🛂",name:"passport_control",shortcodes:["passport_control"],tags:["control","passport"],group:"symbols",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6c2.png"},{emoji:"🛃",name:"customs",shortcodes:["customs"],tags:["customs"],group:"symbols",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6c3.png"},{emoji:"🛄",name:"baggage_claim",shortcodes:["baggage_claim"],tags:["baggage","claim"],group:"symbols",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6c4.png"},{emoji:"🛅",name:"left_luggage",shortcodes:["left_luggage"],tags:["baggage","locker","luggage"],group:"symbols",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6c5.png"},{emoji:"⚠",name:"warning",shortcodes:["warning"],tags:["warning"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26a0-fe0f.png"},{emoji:"🚸",name:"children_crossing",shortcodes:["children_crossing"],tags:["child","crossing","pedestrian","traffic"],group:"symbols",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6b8.png"},{emoji:"⛔",name:"no_entry",shortcodes:["no_entry"],tags:["entry","forbidden","no","not","prohibited","traffic"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26d4.png"},{emoji:"🚫",name:"no_entry_sign",shortcodes:["no_entry_sign"],tags:["entry","forbidden","no","not"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6ab.png"},{emoji:"🚳",name:"no_bicycles",shortcodes:["no_bicycles"],tags:["bicycle","bike","forbidden","no","prohibited"],group:"symbols",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6b3.png"},{emoji:"🚭",name:"no_smoking",shortcodes:["no_smoking"],tags:["forbidden","no","not","prohibited","smoking"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6ad.png"},{emoji:"🚯",name:"do_not_litter",shortcodes:["do_not_litter","no_littering"],tags:["forbidden","litter","no","not","prohibited"],group:"symbols",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6af.png"},{emoji:"🚱",name:"non-potable_water",shortcodes:["non-potable_water"],tags:["non-drinking","non-potable","water"],group:"symbols",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6b1.png"},{emoji:"🚷",name:"no_pedestrians",shortcodes:["no_pedestrians"],tags:["forbidden","no","not","pedestrian","prohibited"],group:"symbols",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6b7.png"},{emoji:"📵",name:"no_mobile_phones",shortcodes:["no_mobile_phones"],tags:["cell","forbidden","mobile","no","phone"],group:"symbols",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4f5.png"},{emoji:"🔞",name:"underage",shortcodes:["no_one_under_18","underage"],tags:["18","age restriction","eighteen","prohibited","underage"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f51e.png"},{emoji:"☢",name:"radioactive",shortcodes:["radioactive"],tags:["sign"],group:"symbols",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2622-fe0f.png"},{emoji:"☣",name:"biohazard",shortcodes:["biohazard"],tags:["sign"],group:"symbols",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2623-fe0f.png"},{emoji:"⬆",name:"arrow_up",shortcodes:["arrow_up"],tags:["arrow","cardinal","direction","north"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2b06-fe0f.png"},{emoji:"↗",name:"arrow_upper_right",shortcodes:["arrow_upper_right"],tags:["arrow","direction","intercardinal","northeast"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2197-fe0f.png"},{emoji:"➡",name:"arrow_right",shortcodes:["arrow_right"],tags:["arrow","cardinal","direction","east"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/27a1-fe0f.png"},{emoji:"↘",name:"arrow_lower_right",shortcodes:["arrow_lower_right"],tags:["arrow","direction","intercardinal","southeast"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2198-fe0f.png"},{emoji:"⬇",name:"arrow_down",shortcodes:["arrow_down"],tags:["arrow","cardinal","direction","down","south"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2b07-fe0f.png"},{emoji:"↙",name:"arrow_lower_left",shortcodes:["arrow_lower_left"],tags:["arrow","direction","intercardinal","southwest"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2199-fe0f.png"},{emoji:"⬅",name:"arrow_left",shortcodes:["arrow_left"],tags:["arrow","cardinal","direction","west"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2b05-fe0f.png"},{emoji:"↖",name:"arrow_upper_left",shortcodes:["arrow_upper_left"],tags:["arrow","direction","intercardinal","northwest"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2196-fe0f.png"},{emoji:"↕",name:"arrow_up_down",shortcodes:["arrow_up_down"],tags:["arrow"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2195-fe0f.png"},{emoji:"↔",name:"left_right_arrow",shortcodes:["left_right_arrow"],tags:["arrow"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2194-fe0f.png"},{emoji:"↩",name:"leftwards_arrow_with_hook",shortcodes:["arrow_left_hook","leftwards_arrow_with_hook"],tags:["arrow"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/21a9-fe0f.png"},{emoji:"↪",name:"arrow_right_hook",shortcodes:["arrow_right_hook","rightwards_arrow_with_hook"],tags:["arrow"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/21aa-fe0f.png"},{emoji:"⤴",name:"arrow_heading_up",shortcodes:["arrow_heading_up"],tags:["arrow"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2934-fe0f.png"},{emoji:"⤵",name:"arrow_heading_down",shortcodes:["arrow_heading_down"],tags:["arrow","down"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2935-fe0f.png"},{emoji:"🔃",name:"arrows_clockwise",shortcodes:["arrows_clockwise","clockwise"],tags:["arrow","clockwise","reload"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f503.png"},{emoji:"🔄",name:"arrows_counterclockwise",shortcodes:["arrows_counterclockwise","counterclockwise"],tags:["anticlockwise","arrow","counterclockwise","withershins"],group:"symbols",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f504.png"},{emoji:"🔙",name:"back",shortcodes:["back"],tags:["arrow","back"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f519.png"},{emoji:"🔚",name:"end",shortcodes:["end"],tags:["arrow","end"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f51a.png"},{emoji:"🔛",name:"on",shortcodes:["on"],tags:["arrow","mark","on","on!"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f51b.png"},{emoji:"🔜",name:"soon",shortcodes:["soon"],tags:["arrow","soon"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f51c.png"},{emoji:"🔝",name:"top",shortcodes:["top"],tags:["arrow","top","up"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f51d.png"},{emoji:"🛐",name:"place_of_worship",shortcodes:["place_of_worship"],tags:["religion","worship"],group:"symbols",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6d0.png"},{emoji:"⚛",name:"atom_symbol",shortcodes:["atom","atom_symbol"],tags:["atheist","atom"],group:"symbols",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/269b-fe0f.png"},{emoji:"🕉",name:"om",shortcodes:["om"],tags:["hindu","religion"],group:"symbols",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f549-fe0f.png"},{emoji:"✡",name:"star_of_david",shortcodes:["star_of_david"],tags:["david","jew","jewish","religion","star","star of david"],group:"symbols",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2721-fe0f.png"},{emoji:"☸",name:"wheel_of_dharma",shortcodes:["wheel_of_dharma"],tags:["buddhist","dharma","religion","wheel"],group:"symbols",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2638-fe0f.png"},{emoji:"☯",name:"yin_yang",shortcodes:["yin_yang"],tags:["religion","tao","taoist","yang","yin"],group:"symbols",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/262f-fe0f.png"},{emoji:"✝",name:"latin_cross",shortcodes:["latin_cross"],tags:["christian","cross","religion"],group:"symbols",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/271d-fe0f.png"},{emoji:"☦",name:"orthodox_cross",shortcodes:["orthodox_cross"],tags:["christian","cross","religion"],group:"symbols",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2626-fe0f.png"},{emoji:"☪",name:"star_and_crescent",shortcodes:["star_and_crescent"],tags:["islam","muslim","religion"],group:"symbols",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/262a-fe0f.png"},{emoji:"☮",name:"peace_symbol",shortcodes:["peace","peace_symbol"],tags:["peace"],group:"symbols",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/262e-fe0f.png"},{emoji:"🕎",name:"menorah",shortcodes:["menorah"],tags:["candelabrum","candlestick","religion"],group:"symbols",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f54e.png"},{emoji:"🔯",name:"six_pointed_star",shortcodes:["six_pointed_star"],tags:["fortune","star"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f52f.png"},{emoji:"♈",name:"aries",shortcodes:["aries"],tags:["aries","ram","zodiac"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2648.png"},{emoji:"♉",name:"taurus",shortcodes:["taurus"],tags:["bull","ox","taurus","zodiac"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2649.png"},{emoji:"♊",name:"gemini",shortcodes:["gemini"],tags:["gemini","twins","zodiac"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/264a.png"},{emoji:"♋",name:"cancer",shortcodes:["cancer"],tags:["cancer","crab","zodiac"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/264b.png"},{emoji:"♌",name:"leo",shortcodes:["leo"],tags:["leo","lion","zodiac"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/264c.png"},{emoji:"♍",name:"virgo",shortcodes:["virgo"],tags:["virgo","zodiac"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/264d.png"},{emoji:"♎",name:"libra",shortcodes:["libra"],tags:["balance","justice","libra","scales","zodiac"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/264e.png"},{emoji:"♏",name:"scorpius",shortcodes:["scorpius"],tags:["scorpio","scorpion","scorpius","zodiac"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/264f.png"},{emoji:"♐",name:"sagittarius",shortcodes:["sagittarius"],tags:["archer","sagittarius","zodiac"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2650.png"},{emoji:"♑",name:"capricorn",shortcodes:["capricorn"],tags:["capricorn","goat","zodiac"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2651.png"},{emoji:"♒",name:"aquarius",shortcodes:["aquarius"],tags:["aquarius","bearer","water","zodiac"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2652.png"},{emoji:"♓",name:"pisces",shortcodes:["pisces"],tags:["fish","pisces","zodiac"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2653.png"},{emoji:"⛎",name:"ophiuchus",shortcodes:["ophiuchus"],tags:["bearer","ophiuchus","serpent","snake","zodiac"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26ce.png"},{emoji:"🔀",name:"twisted_rightwards_arrows",shortcodes:["shuffle","twisted_rightwards_arrows"],tags:["arrow","crossed"],group:"symbols",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f500.png"},{emoji:"🔁",name:"repeat",shortcodes:["repeat"],tags:["arrow","clockwise","repeat"],group:"symbols",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f501.png"},{emoji:"🔂",name:"repeat_one",shortcodes:["repeat_one"],tags:["arrow","clockwise","once"],group:"symbols",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f502.png"},{emoji:"▶",name:"arrow_forward",shortcodes:["arrow_forward","play"],tags:["arrow","play","right","triangle"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/25b6-fe0f.png"},{emoji:"⏩",name:"fast_forward",shortcodes:["fast_forward"],tags:["arrow","double","fast","forward"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/23e9.png"},{emoji:"⏭",name:"next_track_button",shortcodes:["next_track"],tags:["arrow","next scene","next track","triangle"],group:"symbols",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/23ed-fe0f.png"},{emoji:"⏯",name:"play_or_pause_button",shortcodes:["play_pause"],tags:["arrow","pause","play","right","triangle"],group:"symbols",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/23ef-fe0f.png"},{emoji:"◀",name:"arrow_backward",shortcodes:["arrow_backward","reverse"],tags:["arrow","left","reverse","triangle"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/25c0-fe0f.png"},{emoji:"⏪",name:"rewind",shortcodes:["fast_reverse","rewind"],tags:["arrow","double","rewind"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/23ea.png"},{emoji:"⏮",name:"previous_track_button",shortcodes:["previous_track"],tags:["arrow","previous scene","previous track","triangle"],group:"symbols",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/23ee-fe0f.png"},{emoji:"🔼",name:"arrow_up_small",shortcodes:["arrow_up_small","up"],tags:["arrow","button","red"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f53c.png"},{emoji:"⏫",name:"arrow_double_up",shortcodes:["arrow_double_up","fast_up"],tags:["arrow","double"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/23eb.png"},{emoji:"🔽",name:"arrow_down_small",shortcodes:["arrow_down_small","down"],tags:["arrow","button","down","red"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f53d.png"},{emoji:"⏬",name:"arrow_double_down",shortcodes:["arrow_double_down","fast_down"],tags:["arrow","double","down"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/23ec.png"},{emoji:"⏸",name:"pause_button",shortcodes:["pause"],tags:["bar","double","pause","vertical"],group:"symbols",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/23f8-fe0f.png"},{emoji:"⏹",name:"stop_button",shortcodes:["stop"],tags:["square","stop"],group:"symbols",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/23f9-fe0f.png"},{emoji:"⏺",name:"record_button",shortcodes:["record"],tags:["circle","record"],group:"symbols",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/23fa-fe0f.png"},{emoji:"⏏",name:"eject_button",shortcodes:["eject"],tags:["eject"],group:"symbols",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/23cf-fe0f.png"},{emoji:"🎦",name:"cinema",shortcodes:["cinema"],tags:["camera","film","movie"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3a6.png"},{emoji:"🔅",name:"low_brightness",shortcodes:["dim_button","low_brightness"],tags:["brightness","dim","low"],group:"symbols",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f505.png"},{emoji:"🔆",name:"high_brightness",shortcodes:["bright_button","high_brightness"],tags:["bright","brightness"],group:"symbols",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f506.png"},{emoji:"📶",name:"signal_strength",shortcodes:["antenna_bars","signal_strength"],tags:["antenna","bar","cell","mobile","phone"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4f6.png"},{emoji:"📳",name:"vibration_mode",shortcodes:["vibration_mode"],tags:["cell","mobile","mode","phone","telephone","vibration"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4f3.png"},{emoji:"📴",name:"mobile_phone_off",shortcodes:["mobile_phone_off"],tags:["cell","mobile","off","phone","telephone"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4f4.png"},{emoji:"♀",name:"female_sign",shortcodes:["female","female_sign"],tags:["woman"],group:"symbols",emoticons:[],version:4},{emoji:"♂",name:"male_sign",shortcodes:["male","male_sign"],tags:["man"],group:"symbols",emoticons:[],version:4},{emoji:"⚧",name:"transgender_symbol",shortcodes:["transgender_symbol"],tags:["transgender"],group:"symbols",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26a7-fe0f.png"},{emoji:"✖",name:"heavy_multiplication_x",shortcodes:["multiplication","multiply"],tags:["cancel","multiplication","sign","x","×"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2716-fe0f.png"},{emoji:"➕",name:"heavy_plus_sign",shortcodes:["plus"],tags:["+","math","sign"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2795.png"},{emoji:"➖",name:"heavy_minus_sign",shortcodes:["minus"],tags:["-","math","sign","−"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2796.png"},{emoji:"➗",name:"heavy_division_sign",shortcodes:["divide","division"],tags:["division","math","sign","÷"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2797.png"},{emoji:"♾",name:"infinity",shortcodes:["infinity"],tags:["forever","unbounded","universal"],group:"symbols",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/267e-fe0f.png"},{emoji:"‼",name:"bangbang",shortcodes:["bangbang","double_exclamation"],tags:["!","!!","bangbang","exclamation","mark"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/203c-fe0f.png"},{emoji:"⁉",name:"interrobang",shortcodes:["exclamation_question","interrobang"],tags:["!","!?","?","exclamation","interrobang","mark","punctuation","question"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2049-fe0f.png"},{emoji:"❓",name:"question",shortcodes:["question"],tags:["?","mark","punctuation","question"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2753.png"},{emoji:"❔",name:"grey_question",shortcodes:["white_question"],tags:["?","mark","outlined","punctuation","question"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2754.png"},{emoji:"❕",name:"grey_exclamation",shortcodes:["white_exclamation"],tags:["!","exclamation","mark","outlined","punctuation"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2755.png"},{emoji:"❗",name:"exclamation",shortcodes:["exclamation"],tags:["!","exclamation","mark","punctuation"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2757.png"},{emoji:"〰",name:"wavy_dash",shortcodes:["wavy_dash"],tags:["dash","punctuation","wavy"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/3030-fe0f.png"},{emoji:"💱",name:"currency_exchange",shortcodes:["currency_exchange"],tags:["bank","currency","exchange","money"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4b1.png"},{emoji:"💲",name:"heavy_dollar_sign",shortcodes:["heavy_dollar_sign"],tags:["currency","dollar","money"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4b2.png"},{emoji:"⚕",name:"medical_symbol",shortcodes:["medical","medical_symbol"],tags:["aesculapius","medicine","staff"],group:"symbols",emoticons:[],version:4},{emoji:"♻",name:"recycle",shortcodes:["recycle","recycling_symbol"],tags:["recycle"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/267b-fe0f.png"},{emoji:"⚜",name:"fleur_de_lis",shortcodes:["fleur-de-lis"],tags:["fleur-de-lis"],group:"symbols",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/269c-fe0f.png"},{emoji:"🔱",name:"trident",shortcodes:["trident"],tags:["anchor","emblem","ship","tool","trident"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f531.png"},{emoji:"📛",name:"name_badge",shortcodes:["name_badge"],tags:["badge","name"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4db.png"},{emoji:"🔰",name:"beginner",shortcodes:["beginner"],tags:["beginner","chevron","japanese","japanese symbol for beginner","leaf"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f530.png"},{emoji:"⭕",name:"o",shortcodes:["hollow_red_circle","red_o"],tags:["circle","large","o","red"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2b55.png"},{emoji:"✅",name:"white_check_mark",shortcodes:["check_mark_button","white_check_mark"],tags:["button","check","mark","✓"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2705.png"},{emoji:"☑",name:"ballot_box_with_check",shortcodes:["ballot_box_with_check"],tags:["box","check","✓"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2611-fe0f.png"},{emoji:"✔",name:"heavy_check_mark",shortcodes:["check_mark","heavy_check_mark"],tags:["check","mark","✓"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2714-fe0f.png"},{emoji:"❌",name:"x",shortcodes:["cross_mark","x"],tags:["cancel","cross","mark","multiplication","multiply","x","×"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/274c.png"},{emoji:"❎",name:"negative_squared_cross_mark",shortcodes:["cross_mark_button","negative_squared_cross_mark"],tags:["mark","square","x","×"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/274e.png"},{emoji:"➰",name:"curly_loop",shortcodes:["curly_loop"],tags:["curl","loop"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/27b0.png"},{emoji:"➿",name:"loop",shortcodes:["double_curly_loop","loop"],tags:["curl","double","loop"],group:"symbols",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/27bf.png"},{emoji:"〽",name:"part_alternation_mark",shortcodes:["part_alternation_mark"],tags:["mark","part"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/303d-fe0f.png"},{emoji:"✳",name:"eight_spoked_asterisk",shortcodes:["eight_spoked_asterisk"],tags:["*","asterisk"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2733-fe0f.png"},{emoji:"✴",name:"eight_pointed_black_star",shortcodes:["eight_pointed_black_star"],tags:["*","star"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2734-fe0f.png"},{emoji:"❇",name:"sparkle",shortcodes:["sparkle"],tags:["*"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2747-fe0f.png"},{emoji:"©",name:"copyright",shortcodes:["copyright"],tags:["c"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/00a9-fe0f.png"},{emoji:"®",name:"registered",shortcodes:["registered"],tags:["r"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/00ae-fe0f.png"},{emoji:"™",name:"tm",shortcodes:["tm","trade_mark"],tags:["mark","tm","trademark"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2122-fe0f.png"},{emoji:"#⃣",name:"hash",shortcodes:["hash","number_sign"],tags:["keycap"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/0023-fe0f-20e3.png"},{emoji:"*⃣",name:"asterisk",shortcodes:["asterisk"],tags:["keycap"],group:"symbols",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/002a-fe0f-20e3.png"},{emoji:"0⃣",name:"zero",shortcodes:["zero"],tags:["keycap"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/0030-fe0f-20e3.png"},{emoji:"1⃣",name:"one",shortcodes:["one"],tags:["keycap"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/0031-fe0f-20e3.png"},{emoji:"2⃣",name:"two",shortcodes:["two"],tags:["keycap"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/0032-fe0f-20e3.png"},{emoji:"3⃣",name:"three",shortcodes:["three"],tags:["keycap"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/0033-fe0f-20e3.png"},{emoji:"4⃣",name:"four",shortcodes:["four"],tags:["keycap"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/0034-fe0f-20e3.png"},{emoji:"5⃣",name:"five",shortcodes:["five"],tags:["keycap"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/0035-fe0f-20e3.png"},{emoji:"6⃣",name:"six",shortcodes:["six"],tags:["keycap"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/0036-fe0f-20e3.png"},{emoji:"7⃣",name:"seven",shortcodes:["seven"],tags:["keycap"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/0037-fe0f-20e3.png"},{emoji:"8⃣",name:"eight",shortcodes:["eight"],tags:["keycap"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/0038-fe0f-20e3.png"},{emoji:"9⃣",name:"nine",shortcodes:["nine"],tags:["keycap"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/0039-fe0f-20e3.png"},{emoji:"🔟",name:"keycap_ten",shortcodes:["ten"],tags:["keycap"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f51f.png"},{emoji:"🔠",name:"capital_abcd",shortcodes:["capital_abcd"],tags:["abcd","input","latin","letters","uppercase"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f520.png"},{emoji:"🔡",name:"abcd",shortcodes:["abcd"],tags:["abcd","input","latin","letters","lowercase"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f521.png"},{emoji:"🔢",name:"1234",shortcodes:["1234"],tags:["1234","input","numbers"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f522.png"},{emoji:"🔣",name:"symbols",shortcodes:["symbols"],tags:["input","〒♪&%"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f523.png"},{emoji:"🔤",name:"abc",shortcodes:["abc"],tags:["abc","alphabet","input","latin","letters"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f524.png"},{emoji:"🅰",name:"a",shortcodes:["a","a_blood"],tags:["a","a button (blood type)","blood type"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f170-fe0f.png"},{emoji:"🆎",name:"ab",shortcodes:["ab","ab_blood"],tags:["ab","ab button (blood type)","blood type"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f18e.png"},{emoji:"🅱",name:"b",shortcodes:["b","b_blood"],tags:["b","b button (blood type)","blood type"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f171-fe0f.png"},{emoji:"🆑",name:"cl",shortcodes:["cl"],tags:["cl","cl button"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f191.png"},{emoji:"🆒",name:"cool",shortcodes:["cool"],tags:["cool","cool button"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f192.png"},{emoji:"🆓",name:"free",shortcodes:["free"],tags:["free","free button"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f193.png"},{emoji:"ℹ",name:"information_source",shortcodes:["info","information_source"],tags:["i"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2139-fe0f.png"},{emoji:"🆔",name:"id",shortcodes:["id"],tags:["id","id button","identity"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f194.png"},{emoji:"Ⓜ",name:"m",shortcodes:["m"],tags:["circle","circled m","m"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/24c2-fe0f.png"},{emoji:"🆕",name:"new",shortcodes:["new"],tags:["new","new button"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f195.png"},{emoji:"🆖",name:"ng",shortcodes:["ng"],tags:["ng","ng button"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f196.png"},{emoji:"🅾",name:"o2",shortcodes:["o","o_blood"],tags:["blood type","o","o button (blood type)"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f17e-fe0f.png"},{emoji:"🆗",name:"ok",shortcodes:["ok"],tags:["ok","ok button"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f197.png"},{emoji:"🅿",name:"parking",shortcodes:["parking"],tags:["p","p button","parking"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f17f-fe0f.png"},{emoji:"🆘",name:"sos",shortcodes:["sos"],tags:["help","sos","sos button"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f198.png"},{emoji:"🆙",name:"up",shortcodes:["up2"],tags:["mark","up","up!","up! button"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f199.png"},{emoji:"🆚",name:"vs",shortcodes:["vs"],tags:["versus","vs","vs button"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f19a.png"},{emoji:"🈁",name:"koko",shortcodes:["ja_here","koko"],tags:["japanese","japanese “here” button","katakana","“here”","ココ"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f201.png"},{emoji:"🈂",name:"sa",shortcodes:["ja_service_charge"],tags:["japanese","japanese “service charge” button","katakana","“service charge”","サ"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f202-fe0f.png"},{emoji:"🈷",name:"u6708",shortcodes:["ja_monthly_amount"],tags:["ideograph","japanese","japanese “monthly amount” button","“monthly amount”","月"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f237-fe0f.png"},{emoji:"🈶",name:"u6709",shortcodes:["ja_not_free_of_carge"],tags:["ideograph","japanese","japanese “not free of charge” button","“not free of charge”","有"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f236.png"},{emoji:"🈯",name:"u6307",shortcodes:["ja_reserved"],tags:["ideograph","japanese","japanese “reserved” button","“reserved”","指"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f22f.png"},{emoji:"🉐",name:"ideograph_advantage",shortcodes:["ideograph_advantage","ja_bargain"],tags:["ideograph","japanese","japanese “bargain” button","“bargain”","得"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f250.png"},{emoji:"🈹",name:"u5272",shortcodes:["ja_discount"],tags:["ideograph","japanese","japanese “discount” button","“discount”","割"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f239.png"},{emoji:"🈚",name:"u7121",shortcodes:["ja_free_of_charge"],tags:["ideograph","japanese","japanese “free of charge” button","“free of charge”","無"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f21a.png"},{emoji:"🈲",name:"u7981",shortcodes:["ja_prohibited"],tags:["ideograph","japanese","japanese “prohibited” button","“prohibited”","禁"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f232.png"},{emoji:"🉑",name:"accept",shortcodes:["accept","ja_acceptable"],tags:["ideograph","japanese","japanese “acceptable” button","“acceptable”","可"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f251.png"},{emoji:"🈸",name:"u7533",shortcodes:["ja_application"],tags:["ideograph","japanese","japanese “application” button","“application”","申"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f238.png"},{emoji:"🈴",name:"u5408",shortcodes:["ja_passing_grade"],tags:["ideograph","japanese","japanese “passing grade” button","“passing grade”","合"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f234.png"},{emoji:"🈳",name:"u7a7a",shortcodes:["ja_vacancy"],tags:["ideograph","japanese","japanese “vacancy” button","“vacancy”","空"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f233.png"},{emoji:"㊗",name:"congratulations",shortcodes:["congratulations","ja_congratulations"],tags:["ideograph","japanese","japanese “congratulations” button","“congratulations”","祝"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/3297-fe0f.png"},{emoji:"㊙",name:"secret",shortcodes:["ja_secret","secret"],tags:["ideograph","japanese","japanese “secret” button","“secret”","秘"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/3299-fe0f.png"},{emoji:"🈺",name:"u55b6",shortcodes:["ja_open_for_business"],tags:["ideograph","japanese","japanese “open for business” button","“open for business”","営"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f23a.png"},{emoji:"🈵",name:"u6e80",shortcodes:["ja_no_vacancy"],tags:["ideograph","japanese","japanese “no vacancy” button","“no vacancy”","満"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f235.png"},{emoji:"🔴",name:"red_circle",shortcodes:["red_circle"],tags:["circle","geometric","red"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f534.png"},{emoji:"🟠",name:"orange_circle",shortcodes:["orange_circle"],tags:["circle","orange"],group:"symbols",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f7e0.png"},{emoji:"🟡",name:"yellow_circle",shortcodes:["yellow_circle"],tags:["circle","yellow"],group:"symbols",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f7e1.png"},{emoji:"🟢",name:"green_circle",shortcodes:["green_circle"],tags:["circle","green"],group:"symbols",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f7e2.png"},{emoji:"🔵",name:"large_blue_circle",shortcodes:["blue_circle"],tags:["blue","circle","geometric"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f535.png"},{emoji:"🟣",name:"purple_circle",shortcodes:["purple_circle"],tags:["circle","purple"],group:"symbols",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f7e3.png"},{emoji:"🟤",name:"brown_circle",shortcodes:["brown_circle"],tags:["brown","circle"],group:"symbols",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f7e4.png"},{emoji:"⚫",name:"black_circle",shortcodes:["black_circle"],tags:["circle","geometric"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26ab.png"},{emoji:"⚪",name:"white_circle",shortcodes:["white_circle"],tags:["circle","geometric"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26aa.png"},{emoji:"🟥",name:"red_square",shortcodes:["red_square"],tags:["red","square"],group:"symbols",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f7e5.png"},{emoji:"🟧",name:"orange_square",shortcodes:["orange_square"],tags:["orange","square"],group:"symbols",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f7e7.png"},{emoji:"🟨",name:"yellow_square",shortcodes:["yellow_square"],tags:["square","yellow"],group:"symbols",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f7e8.png"},{emoji:"🟩",name:"green_square",shortcodes:["green_square"],tags:["green","square"],group:"symbols",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f7e9.png"},{emoji:"🟦",name:"blue_square",shortcodes:["blue_square"],tags:["blue","square"],group:"symbols",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f7e6.png"},{emoji:"🟪",name:"purple_square",shortcodes:["purple_square"],tags:["purple","square"],group:"symbols",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f7ea.png"},{emoji:"🟫",name:"brown_square",shortcodes:["brown_square"],tags:["brown","square"],group:"symbols",emoticons:[],version:12,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f7eb.png"},{emoji:"⬛",name:"black_large_square",shortcodes:["black_large_square"],tags:["geometric","square"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2b1b.png"},{emoji:"⬜",name:"white_large_square",shortcodes:["white_large_square"],tags:["geometric","square"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2b1c.png"},{emoji:"◼",name:"black_medium_square",shortcodes:["black_medium_square"],tags:["geometric","square"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/25fc-fe0f.png"},{emoji:"◻",name:"white_medium_square",shortcodes:["white_medium_square"],tags:["geometric","square"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/25fb-fe0f.png"},{emoji:"◾",name:"black_medium_small_square",shortcodes:["black_medium_small_square"],tags:["geometric","square"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/25fe.png"},{emoji:"◽",name:"white_medium_small_square",shortcodes:["white_medium_small_square"],tags:["geometric","square"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/25fd.png"},{emoji:"▪",name:"black_small_square",shortcodes:["black_small_square"],tags:["geometric","square"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/25aa-fe0f.png"},{emoji:"▫",name:"white_small_square",shortcodes:["white_small_square"],tags:["geometric","square"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/25ab-fe0f.png"},{emoji:"🔶",name:"large_orange_diamond",shortcodes:["large_orange_diamond"],tags:["diamond","geometric","orange"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f536.png"},{emoji:"🔷",name:"large_blue_diamond",shortcodes:["large_blue_diamond"],tags:["blue","diamond","geometric"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f537.png"},{emoji:"🔸",name:"small_orange_diamond",shortcodes:["small_orange_diamond"],tags:["diamond","geometric","orange"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f538.png"},{emoji:"🔹",name:"small_blue_diamond",shortcodes:["small_blue_diamond"],tags:["blue","diamond","geometric"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f539.png"},{emoji:"🔺",name:"small_red_triangle",shortcodes:["small_red_triangle"],tags:["geometric","red"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f53a.png"},{emoji:"🔻",name:"small_red_triangle_down",shortcodes:["small_red_triangle_down"],tags:["down","geometric","red"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f53b.png"},{emoji:"💠",name:"diamond_shape_with_a_dot_inside",shortcodes:["diamond_shape_with_a_dot_inside","diamond_with_a_dot"],tags:["comic","diamond","geometric","inside"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4a0.png"},{emoji:"🔘",name:"radio_button",shortcodes:["radio_button"],tags:["button","geometric","radio"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f518.png"},{emoji:"🔳",name:"white_square_button",shortcodes:["white_square_button"],tags:["button","geometric","outlined","square"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f533.png"},{emoji:"🔲",name:"black_square_button",shortcodes:["black_square_button"],tags:["button","geometric","square"],group:"symbols",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f532.png"},{emoji:"🏁",name:"checkered_flag",shortcodes:["checkered_flag"],tags:["checkered","chequered","racing"],group:"flags",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3c1.png"},{emoji:"🚩",name:"triangular_flag_on_post",shortcodes:["triangular_flag","triangular_flag_on_post"],tags:["post"],group:"flags",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6a9.png"},{emoji:"🎌",name:"crossed_flags",shortcodes:["crossed_flags"],tags:["celebration","cross","crossed","japanese"],group:"flags",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f38c.png"},{emoji:"🏴",name:"black_flag",shortcodes:["black_flag"],tags:["waving"],group:"flags",emoticons:[],version:1,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3f4.png"},{emoji:"🏳",name:"white_flag",shortcodes:["white_flag"],tags:["waving"],group:"flags",emoticons:[],version:.7,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3f3-fe0f.png"},{emoji:"🏳🌈",name:"rainbow_flag",shortcodes:["rainbow_flag"],tags:["pride","rainbow"],group:"flags",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3f3-fe0f-200d-1f308.png"},{emoji:"🏳⚧️",name:"transgender_flag",shortcodes:["transgender_flag"],tags:["flag","light blue","pink","transgender","white"],group:"flags",emoticons:[],version:13,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3f3-fe0f-200d-26a7-fe0f.png"},{emoji:"🏴☠",name:"pirate_flag",shortcodes:["jolly_roger","pirate_flag"],tags:["jolly roger","pirate","plunder","treasure"],group:"flags",emoticons:[],version:11,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3f4-200d-2620-fe0f.png"},{emoji:"🇦🇨",name:"ascension_island",shortcodes:["ascension_island","flag_ac"],tags:["AC","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e6-1f1e8.png"},{emoji:"🇦🇩",name:"andorra",shortcodes:["andorra","flag_ad"],tags:["AD","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e6-1f1e9.png"},{emoji:"🇦🇪",name:"united_arab_emirates",shortcodes:["flag_ae","united_arab_emirates"],tags:["AE","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e6-1f1ea.png"},{emoji:"🇦🇫",name:"afghanistan",shortcodes:["afghanistan","flag_af"],tags:["AF","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e6-1f1eb.png"},{emoji:"🇦🇬",name:"antigua_barbuda",shortcodes:["antigua_barbuda","flag_ag"],tags:["AG","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e6-1f1ec.png"},{emoji:"🇦🇮",name:"anguilla",shortcodes:["anguilla","flag_ai"],tags:["AI","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e6-1f1ee.png"},{emoji:"🇦🇱",name:"albania",shortcodes:["albania","flag_al"],tags:["AL","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e6-1f1f1.png"},{emoji:"🇦🇲",name:"armenia",shortcodes:["armenia","flag_am"],tags:["AM","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e6-1f1f2.png"},{emoji:"🇦🇴",name:"angola",shortcodes:["angola","flag_ao"],tags:["AO","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e6-1f1f4.png"},{emoji:"🇦🇶",name:"antarctica",shortcodes:["antarctica","flag_aq"],tags:["AQ","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e6-1f1f6.png"},{emoji:"🇦🇷",name:"argentina",shortcodes:["argentina","flag_ar"],tags:["AR","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e6-1f1f7.png"},{emoji:"🇦🇸",name:"american_samoa",shortcodes:["american_samoa","flag_as"],tags:["AS","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e6-1f1f8.png"},{emoji:"🇦🇹",name:"austria",shortcodes:["austria","flag_at"],tags:["AT","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e6-1f1f9.png"},{emoji:"🇦🇺",name:"australia",shortcodes:["australia","flag_au"],tags:["AU","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e6-1f1fa.png"},{emoji:"🇦🇼",name:"aruba",shortcodes:["aruba","flag_aw"],tags:["AW","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e6-1f1fc.png"},{emoji:"🇦🇽",name:"aland_islands",shortcodes:["aland_islands","flag_ax"],tags:["AX","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e6-1f1fd.png"},{emoji:"🇦🇿",name:"azerbaijan",shortcodes:["azerbaijan","flag_az"],tags:["AZ","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e6-1f1ff.png"},{emoji:"🇧🇦",name:"bosnia_herzegovina",shortcodes:["bosnia_herzegovina","flag_ba"],tags:["BA","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1e6.png"},{emoji:"🇧🇧",name:"barbados",shortcodes:["barbados","flag_bb"],tags:["BB","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1e7.png"},{emoji:"🇧🇩",name:"bangladesh",shortcodes:["bangladesh","flag_bd"],tags:["BD","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1e9.png"},{emoji:"🇧🇪",name:"belgium",shortcodes:["belgium","flag_be"],tags:["BE","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1ea.png"},{emoji:"🇧🇫",name:"burkina_faso",shortcodes:["burkina_faso","flag_bf"],tags:["BF","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1eb.png"},{emoji:"🇧🇬",name:"bulgaria",shortcodes:["bulgaria","flag_bg"],tags:["BG","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1ec.png"},{emoji:"🇧🇭",name:"bahrain",shortcodes:["bahrain","flag_bh"],tags:["BH","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1ed.png"},{emoji:"🇧🇮",name:"burundi",shortcodes:["burundi","flag_bi"],tags:["BI","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1ee.png"},{emoji:"🇧🇯",name:"benin",shortcodes:["benin","flag_bj"],tags:["BJ","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1ef.png"},{emoji:"🇧🇱",name:"st_barthelemy",shortcodes:["flag_bl","st_barthelemy"],tags:["BL","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1f1.png"},{emoji:"🇧🇲",name:"bermuda",shortcodes:["bermuda","flag_bm"],tags:["BM","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1f2.png"},{emoji:"🇧🇳",name:"brunei",shortcodes:["brunei","flag_bn"],tags:["BN","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1f3.png"},{emoji:"🇧🇴",name:"bolivia",shortcodes:["bolivia","flag_bo"],tags:["BO","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1f4.png"},{emoji:"🇧🇶",name:"caribbean_netherlands",shortcodes:["caribbean_netherlands","flag_bq"],tags:["BQ","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1f6.png"},{emoji:"🇧🇷",name:"brazil",shortcodes:["brazil","flag_br"],tags:["BR","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1f7.png"},{emoji:"🇧🇸",name:"bahamas",shortcodes:["bahamas","flag_bs"],tags:["BS","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1f8.png"},{emoji:"🇧🇹",name:"bhutan",shortcodes:["bhutan","flag_bt"],tags:["BT","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1f9.png"},{emoji:"🇧🇻",name:"bouvet_island",shortcodes:["bouvet_island","flag_bv"],tags:["BV","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1fb.png"},{emoji:"🇧🇼",name:"botswana",shortcodes:["botswana","flag_bw"],tags:["BW","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1fc.png"},{emoji:"🇧🇾",name:"belarus",shortcodes:["belarus","flag_by"],tags:["BY","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1fe.png"},{emoji:"🇧🇿",name:"belize",shortcodes:["belize","flag_bz"],tags:["BZ","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1ff.png"},{emoji:"🇨🇦",name:"canada",shortcodes:["canada","flag_ca"],tags:["CA","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1e6.png"},{emoji:"🇨🇨",name:"cocos_islands",shortcodes:["cocos_islands","flag_cc"],tags:["CC","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1e8.png"},{emoji:"🇨🇩",name:"congo_kinshasa",shortcodes:["congo_kinshasa","flag_cd"],tags:["CD","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1e9.png"},{emoji:"🇨🇫",name:"central_african_republic",shortcodes:["central_african_republic","flag_cf"],tags:["CF","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1eb.png"},{emoji:"🇨🇬",name:"congo_brazzaville",shortcodes:["congo_brazzaville","flag_cg"],tags:["CG","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1ec.png"},{emoji:"🇨🇭",name:"switzerland",shortcodes:["flag_ch","switzerland"],tags:["CH","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1ed.png"},{emoji:"🇨🇮",name:"cote_divoire",shortcodes:["cote_divoire","flag_ci"],tags:["CI","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1ee.png"},{emoji:"🇨🇰",name:"cook_islands",shortcodes:["cook_islands","flag_ck"],tags:["CK","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1f0.png"},{emoji:"🇨🇱",name:"chile",shortcodes:["chile","flag_cl"],tags:["CL","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1f1.png"},{emoji:"🇨🇲",name:"cameroon",shortcodes:["cameroon","flag_cm"],tags:["CM","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1f2.png"},{emoji:"🇨🇳",name:"cn",shortcodes:["china","flag_cn"],tags:["CN","flag"],group:"flags",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1f3.png"},{emoji:"🇨🇴",name:"colombia",shortcodes:["colombia","flag_co"],tags:["CO","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1f4.png"},{emoji:"🇨🇵",name:"clipperton_island",shortcodes:["clipperton_island","flag_cp"],tags:["CP","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1f5.png"},{emoji:"🇨🇷",name:"costa_rica",shortcodes:["costa_rica","flag_cr"],tags:["CR","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1f7.png"},{emoji:"🇨🇺",name:"cuba",shortcodes:["cuba","flag_cu"],tags:["CU","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1fa.png"},{emoji:"🇨🇻",name:"cape_verde",shortcodes:["cape_verde","flag_cv"],tags:["CV","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1fb.png"},{emoji:"🇨🇼",name:"curacao",shortcodes:["curacao","flag_cw"],tags:["CW","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1fc.png"},{emoji:"🇨🇽",name:"christmas_island",shortcodes:["christmas_island","flag_cx"],tags:["CX","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1fd.png"},{emoji:"🇨🇾",name:"cyprus",shortcodes:["cyprus","flag_cy"],tags:["CY","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1fe.png"},{emoji:"🇨🇿",name:"czech_republic",shortcodes:["czech_republic","czechia","flag_cz"],tags:["CZ","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1ff.png"},{emoji:"🇩🇪",name:"de",shortcodes:["flag_de","germany"],tags:["DE","flag"],group:"flags",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e9-1f1ea.png"},{emoji:"🇩🇬",name:"diego_garcia",shortcodes:["diego_garcia","flag_dg"],tags:["DG","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e9-1f1ec.png"},{emoji:"🇩🇯",name:"djibouti",shortcodes:["djibouti","flag_dj"],tags:["DJ","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e9-1f1ef.png"},{emoji:"🇩🇰",name:"denmark",shortcodes:["denmark","flag_dk"],tags:["DK","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e9-1f1f0.png"},{emoji:"🇩🇲",name:"dominica",shortcodes:["dominica","flag_dm"],tags:["DM","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e9-1f1f2.png"},{emoji:"🇩🇴",name:"dominican_republic",shortcodes:["dominican_republic","flag_do"],tags:["DO","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e9-1f1f4.png"},{emoji:"🇩🇿",name:"algeria",shortcodes:["algeria","flag_dz"],tags:["DZ","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e9-1f1ff.png"},{emoji:"🇪🇦",name:"ceuta_melilla",shortcodes:["ceuta_melilla","flag_ea"],tags:["EA","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ea-1f1e6.png"},{emoji:"🇪🇨",name:"ecuador",shortcodes:["ecuador","flag_ec"],tags:["EC","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ea-1f1e8.png"},{emoji:"🇪🇪",name:"estonia",shortcodes:["estonia","flag_ee"],tags:["EE","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ea-1f1ea.png"},{emoji:"🇪🇬",name:"egypt",shortcodes:["egypt","flag_eg"],tags:["EG","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ea-1f1ec.png"},{emoji:"🇪🇭",name:"western_sahara",shortcodes:["flag_eh","western_sahara"],tags:["EH","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ea-1f1ed.png"},{emoji:"🇪🇷",name:"eritrea",shortcodes:["eritrea","flag_er"],tags:["ER","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ea-1f1f7.png"},{emoji:"🇪🇸",name:"es",shortcodes:["flag_es","spain"],tags:["ES","flag"],group:"flags",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ea-1f1f8.png"},{emoji:"🇪🇹",name:"ethiopia",shortcodes:["ethiopia","flag_et"],tags:["ET","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ea-1f1f9.png"},{emoji:"🇪🇺",name:"eu",shortcodes:["european_union","flag_eu"],tags:["EU","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ea-1f1fa.png"},{emoji:"🇫🇮",name:"finland",shortcodes:["finland","flag_fi"],tags:["FI","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1eb-1f1ee.png"},{emoji:"🇫🇯",name:"fiji",shortcodes:["fiji","flag_fj"],tags:["FJ","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1eb-1f1ef.png"},{emoji:"🇫🇰",name:"falkland_islands",shortcodes:["falkland_islands","flag_fk"],tags:["FK","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1eb-1f1f0.png"},{emoji:"🇫🇲",name:"micronesia",shortcodes:["flag_fm","micronesia"],tags:["FM","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1eb-1f1f2.png"},{emoji:"🇫🇴",name:"faroe_islands",shortcodes:["faroe_islands","flag_fo"],tags:["FO","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1eb-1f1f4.png"},{emoji:"🇫🇷",name:"fr",shortcodes:["flag_fr","france"],tags:["FR","flag"],group:"flags",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1eb-1f1f7.png"},{emoji:"🇬🇦",name:"gabon",shortcodes:["flag_ga","gabon"],tags:["GA","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1e6.png"},{emoji:"🇬🇧",name:"gb",shortcodes:["flag_gb","uk","united_kingdom"],tags:["GB","flag"],group:"flags",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1e7.png"},{emoji:"🇬🇩",name:"grenada",shortcodes:["flag_gd","grenada"],tags:["GD","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1e9.png"},{emoji:"🇬🇪",name:"georgia",shortcodes:["flag_ge","georgia"],tags:["GE","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1ea.png"},{emoji:"🇬🇫",name:"french_guiana",shortcodes:["flag_gf","french_guiana"],tags:["GF","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1eb.png"},{emoji:"🇬🇬",name:"guernsey",shortcodes:["flag_gg","guernsey"],tags:["GG","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1ec.png"},{emoji:"🇬🇭",name:"ghana",shortcodes:["flag_gh","ghana"],tags:["GH","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1ed.png"},{emoji:"🇬🇮",name:"gibraltar",shortcodes:["flag_gi","gibraltar"],tags:["GI","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1ee.png"},{emoji:"🇬🇱",name:"greenland",shortcodes:["flag_gl","greenland"],tags:["GL","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1f1.png"},{emoji:"🇬🇲",name:"gambia",shortcodes:["flag_gm","gambia"],tags:["GM","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1f2.png"},{emoji:"🇬🇳",name:"guinea",shortcodes:["flag_gn","guinea"],tags:["GN","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1f3.png"},{emoji:"🇬🇵",name:"guadeloupe",shortcodes:["flag_gp","guadeloupe"],tags:["GP","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1f5.png"},{emoji:"🇬🇶",name:"equatorial_guinea",shortcodes:["equatorial_guinea","flag_gq"],tags:["GQ","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1f6.png"},{emoji:"🇬🇷",name:"greece",shortcodes:["flag_gr","greece"],tags:["GR","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1f7.png"},{emoji:"🇬🇸",name:"south_georgia_south_sandwich_islands",shortcodes:["flag_gs","south_georgia_south_sandwich_islands"],tags:["GS","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1f8.png"},{emoji:"🇬🇹",name:"guatemala",shortcodes:["flag_gt","guatemala"],tags:["GT","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1f9.png"},{emoji:"🇬🇺",name:"guam",shortcodes:["flag_gu","guam"],tags:["GU","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1fa.png"},{emoji:"🇬🇼",name:"guinea_bissau",shortcodes:["flag_gw","guinea_bissau"],tags:["GW","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1fc.png"},{emoji:"🇬🇾",name:"guyana",shortcodes:["flag_gy","guyana"],tags:["GY","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1fe.png"},{emoji:"🇭🇰",name:"hong_kong",shortcodes:["flag_hk","hong_kong"],tags:["HK","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ed-1f1f0.png"},{emoji:"🇭🇲",name:"heard_mcdonald_islands",shortcodes:["flag_hm","heard_mcdonald_islands"],tags:["HM","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ed-1f1f2.png"},{emoji:"🇭🇳",name:"honduras",shortcodes:["flag_hn","honduras"],tags:["HN","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ed-1f1f3.png"},{emoji:"🇭🇷",name:"croatia",shortcodes:["croatia","flag_hr"],tags:["HR","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ed-1f1f7.png"},{emoji:"🇭🇹",name:"haiti",shortcodes:["flag_ht","haiti"],tags:["HT","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ed-1f1f9.png"},{emoji:"🇭🇺",name:"hungary",shortcodes:["flag_hu","hungary"],tags:["HU","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ed-1f1fa.png"},{emoji:"🇮🇨",name:"canary_islands",shortcodes:["canary_islands","flag_ic"],tags:["IC","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ee-1f1e8.png"},{emoji:"🇮🇩",name:"indonesia",shortcodes:["flag_id","indonesia"],tags:["ID","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ee-1f1e9.png"},{emoji:"🇮🇪",name:"ireland",shortcodes:["flag_ie","ireland"],tags:["IE","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ee-1f1ea.png"},{emoji:"🇮🇱",name:"israel",shortcodes:["flag_il","israel"],tags:["IL","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ee-1f1f1.png"},{emoji:"🇮🇲",name:"isle_of_man",shortcodes:["flag_im","isle_of_man"],tags:["IM","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ee-1f1f2.png"},{emoji:"🇮🇳",name:"india",shortcodes:["flag_in","india"],tags:["IN","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ee-1f1f3.png"},{emoji:"🇮🇴",name:"british_indian_ocean_territory",shortcodes:["british_indian_ocean_territory","flag_io"],tags:["IO","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ee-1f1f4.png"},{emoji:"🇮🇶",name:"iraq",shortcodes:["flag_iq","iraq"],tags:["IQ","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ee-1f1f6.png"},{emoji:"🇮🇷",name:"iran",shortcodes:["flag_ir","iran"],tags:["IR","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ee-1f1f7.png"},{emoji:"🇮🇸",name:"iceland",shortcodes:["flag_is","iceland"],tags:["IS","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ee-1f1f8.png"},{emoji:"🇮🇹",name:"it",shortcodes:["flag_it","italy"],tags:["IT","flag"],group:"flags",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ee-1f1f9.png"},{emoji:"🇯🇪",name:"jersey",shortcodes:["flag_je","jersey"],tags:["JE","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ef-1f1ea.png"},{emoji:"🇯🇲",name:"jamaica",shortcodes:["flag_jm","jamaica"],tags:["JM","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ef-1f1f2.png"},{emoji:"🇯🇴",name:"jordan",shortcodes:["flag_jo","jordan"],tags:["JO","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ef-1f1f4.png"},{emoji:"🇯🇵",name:"jp",shortcodes:["flag_jp","japan"],tags:["JP","flag"],group:"flags",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ef-1f1f5.png"},{emoji:"🇰🇪",name:"kenya",shortcodes:["flag_ke","kenya"],tags:["KE","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f0-1f1ea.png"},{emoji:"🇰🇬",name:"kyrgyzstan",shortcodes:["flag_kg","kyrgyzstan"],tags:["KG","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f0-1f1ec.png"},{emoji:"🇰🇭",name:"cambodia",shortcodes:["cambodia","flag_kh"],tags:["KH","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f0-1f1ed.png"},{emoji:"🇰🇮",name:"kiribati",shortcodes:["flag_ki","kiribati"],tags:["KI","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f0-1f1ee.png"},{emoji:"🇰🇲",name:"comoros",shortcodes:["comoros","flag_km"],tags:["KM","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f0-1f1f2.png"},{emoji:"🇰🇳",name:"st_kitts_nevis",shortcodes:["flag_kn","st_kitts_nevis"],tags:["KN","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f0-1f1f3.png"},{emoji:"🇰🇵",name:"north_korea",shortcodes:["flag_kp","north_korea"],tags:["KP","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f0-1f1f5.png"},{emoji:"🇰🇷",name:"kr",shortcodes:["flag_kr","south_korea"],tags:["KR","flag"],group:"flags",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f0-1f1f7.png"},{emoji:"🇰🇼",name:"kuwait",shortcodes:["flag_kw","kuwait"],tags:["KW","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f0-1f1fc.png"},{emoji:"🇰🇾",name:"cayman_islands",shortcodes:["cayman_islands","flag_ky"],tags:["KY","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f0-1f1fe.png"},{emoji:"🇰🇿",name:"kazakhstan",shortcodes:["flag_kz","kazakhstan"],tags:["KZ","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f0-1f1ff.png"},{emoji:"🇱🇦",name:"laos",shortcodes:["flag_la","laos"],tags:["LA","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f1-1f1e6.png"},{emoji:"🇱🇧",name:"lebanon",shortcodes:["flag_lb","lebanon"],tags:["LB","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f1-1f1e7.png"},{emoji:"🇱🇨",name:"st_lucia",shortcodes:["flag_lc","st_lucia"],tags:["LC","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f1-1f1e8.png"},{emoji:"🇱🇮",name:"liechtenstein",shortcodes:["flag_li","liechtenstein"],tags:["LI","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f1-1f1ee.png"},{emoji:"🇱🇰",name:"sri_lanka",shortcodes:["flag_lk","sri_lanka"],tags:["LK","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f1-1f1f0.png"},{emoji:"🇱🇷",name:"liberia",shortcodes:["flag_lr","liberia"],tags:["LR","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f1-1f1f7.png"},{emoji:"🇱🇸",name:"lesotho",shortcodes:["flag_ls","lesotho"],tags:["LS","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f1-1f1f8.png"},{emoji:"🇱🇹",name:"lithuania",shortcodes:["flag_lt","lithuania"],tags:["LT","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f1-1f1f9.png"},{emoji:"🇱🇺",name:"luxembourg",shortcodes:["flag_lu","luxembourg"],tags:["LU","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f1-1f1fa.png"},{emoji:"🇱🇻",name:"latvia",shortcodes:["flag_lv","latvia"],tags:["LV","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f1-1f1fb.png"},{emoji:"🇱🇾",name:"libya",shortcodes:["flag_ly","libya"],tags:["LY","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f1-1f1fe.png"},{emoji:"🇲🇦",name:"morocco",shortcodes:["flag_ma","morocco"],tags:["MA","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1e6.png"},{emoji:"🇲🇨",name:"monaco",shortcodes:["flag_mc","monaco"],tags:["MC","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1e8.png"},{emoji:"🇲🇩",name:"moldova",shortcodes:["flag_md","moldova"],tags:["MD","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1e9.png"},{emoji:"🇲🇪",name:"montenegro",shortcodes:["flag_me","montenegro"],tags:["ME","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1ea.png"},{emoji:"🇲🇫",name:"st_martin",shortcodes:["flag_mf","st_martin"],tags:["MF","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1eb.png"},{emoji:"🇲🇬",name:"madagascar",shortcodes:["flag_mg","madagascar"],tags:["MG","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1ec.png"},{emoji:"🇲🇭",name:"marshall_islands",shortcodes:["flag_mh","marshall_islands"],tags:["MH","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1ed.png"},{emoji:"🇲🇰",name:"macedonia",shortcodes:["flag_mk","macedonia"],tags:["MK","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1f0.png"},{emoji:"🇲🇱",name:"mali",shortcodes:["flag_ml","mali"],tags:["ML","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1f1.png"},{emoji:"🇲🇲",name:"myanmar",shortcodes:["burma","flag_mm","myanmar"],tags:["MM","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1f2.png"},{emoji:"🇲🇳",name:"mongolia",shortcodes:["flag_mn","mongolia"],tags:["MN","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1f3.png"},{emoji:"🇲🇴",name:"macau",shortcodes:["flag_mo","macao","macau"],tags:["MO","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1f4.png"},{emoji:"🇲🇵",name:"northern_mariana_islands",shortcodes:["flag_mp","northern_mariana_islands"],tags:["MP","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1f5.png"},{emoji:"🇲🇶",name:"martinique",shortcodes:["flag_mq","martinique"],tags:["MQ","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1f6.png"},{emoji:"🇲🇷",name:"mauritania",shortcodes:["flag_mr","mauritania"],tags:["MR","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1f7.png"},{emoji:"🇲🇸",name:"montserrat",shortcodes:["flag_ms","montserrat"],tags:["MS","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1f8.png"},{emoji:"🇲🇹",name:"malta",shortcodes:["flag_mt","malta"],tags:["MT","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1f9.png"},{emoji:"🇲🇺",name:"mauritius",shortcodes:["flag_mu","mauritius"],tags:["MU","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1fa.png"},{emoji:"🇲🇻",name:"maldives",shortcodes:["flag_mv","maldives"],tags:["MV","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1fb.png"},{emoji:"🇲🇼",name:"malawi",shortcodes:["flag_mw","malawi"],tags:["MW","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1fc.png"},{emoji:"🇲🇽",name:"mexico",shortcodes:["flag_mx","mexico"],tags:["MX","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1fd.png"},{emoji:"🇲🇾",name:"malaysia",shortcodes:["flag_my","malaysia"],tags:["MY","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1fe.png"},{emoji:"🇲🇿",name:"mozambique",shortcodes:["flag_mz","mozambique"],tags:["MZ","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1ff.png"},{emoji:"🇳🇦",name:"namibia",shortcodes:["flag_na","namibia"],tags:["NA","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f3-1f1e6.png"},{emoji:"🇳🇨",name:"new_caledonia",shortcodes:["flag_nc","new_caledonia"],tags:["NC","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f3-1f1e8.png"},{emoji:"🇳🇪",name:"niger",shortcodes:["flag_ne","niger"],tags:["NE","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f3-1f1ea.png"},{emoji:"🇳🇫",name:"norfolk_island",shortcodes:["flag_nf","norfolk_island"],tags:["NF","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f3-1f1eb.png"},{emoji:"🇳🇬",name:"nigeria",shortcodes:["flag_ng","nigeria"],tags:["NG","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f3-1f1ec.png"},{emoji:"🇳🇮",name:"nicaragua",shortcodes:["flag_ni","nicaragua"],tags:["NI","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f3-1f1ee.png"},{emoji:"🇳🇱",name:"netherlands",shortcodes:["flag_nl","netherlands"],tags:["NL","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f3-1f1f1.png"},{emoji:"🇳🇴",name:"norway",shortcodes:["flag_no","norway"],tags:["NO","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f3-1f1f4.png"},{emoji:"🇳🇵",name:"nepal",shortcodes:["flag_np","nepal"],tags:["NP","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f3-1f1f5.png"},{emoji:"🇳🇷",name:"nauru",shortcodes:["flag_nr","nauru"],tags:["NR","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f3-1f1f7.png"},{emoji:"🇳🇺",name:"niue",shortcodes:["flag_nu","niue"],tags:["NU","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f3-1f1fa.png"},{emoji:"🇳🇿",name:"new_zealand",shortcodes:["flag_nz","new_zealand"],tags:["NZ","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f3-1f1ff.png"},{emoji:"🇴🇲",name:"oman",shortcodes:["flag_om","oman"],tags:["OM","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f4-1f1f2.png"},{emoji:"🇵🇦",name:"panama",shortcodes:["flag_pa","panama"],tags:["PA","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f5-1f1e6.png"},{emoji:"🇵🇪",name:"peru",shortcodes:["flag_pe","peru"],tags:["PE","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f5-1f1ea.png"},{emoji:"🇵🇫",name:"french_polynesia",shortcodes:["flag_pf","french_polynesia"],tags:["PF","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f5-1f1eb.png"},{emoji:"🇵🇬",name:"papua_new_guinea",shortcodes:["flag_pg","papua_new_guinea"],tags:["PG","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f5-1f1ec.png"},{emoji:"🇵🇭",name:"philippines",shortcodes:["flag_ph","philippines"],tags:["PH","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f5-1f1ed.png"},{emoji:"🇵🇰",name:"pakistan",shortcodes:["flag_pk","pakistan"],tags:["PK","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f5-1f1f0.png"},{emoji:"🇵🇱",name:"poland",shortcodes:["flag_pl","poland"],tags:["PL","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f5-1f1f1.png"},{emoji:"🇵🇲",name:"st_pierre_miquelon",shortcodes:["flag_pm","st_pierre_miquelon"],tags:["PM","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f5-1f1f2.png"},{emoji:"🇵🇳",name:"pitcairn_islands",shortcodes:["flag_pn","pitcairn_islands"],tags:["PN","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f5-1f1f3.png"},{emoji:"🇵🇷",name:"puerto_rico",shortcodes:["flag_pr","puerto_rico"],tags:["PR","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f5-1f1f7.png"},{emoji:"🇵🇸",name:"palestinian_territories",shortcodes:["flag_ps","palestinian_territories"],tags:["PS","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f5-1f1f8.png"},{emoji:"🇵🇹",name:"portugal",shortcodes:["flag_pt","portugal"],tags:["PT","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f5-1f1f9.png"},{emoji:"🇵🇼",name:"palau",shortcodes:["flag_pw","palau"],tags:["PW","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f5-1f1fc.png"},{emoji:"🇵🇾",name:"paraguay",shortcodes:["flag_py","paraguay"],tags:["PY","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f5-1f1fe.png"},{emoji:"🇶🇦",name:"qatar",shortcodes:["flag_qa","qatar"],tags:["QA","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f6-1f1e6.png"},{emoji:"🇷🇪",name:"reunion",shortcodes:["flag_re","reunion"],tags:["RE","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f7-1f1ea.png"},{emoji:"🇷🇴",name:"romania",shortcodes:["flag_ro","romania"],tags:["RO","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f7-1f1f4.png"},{emoji:"🇷🇸",name:"serbia",shortcodes:["flag_rs","serbia"],tags:["RS","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f7-1f1f8.png"},{emoji:"🇷🇺",name:"ru",shortcodes:["flag_ru","russia"],tags:["RU","flag"],group:"flags",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f7-1f1fa.png"},{emoji:"🇷🇼",name:"rwanda",shortcodes:["flag_rw","rwanda"],tags:["RW","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f7-1f1fc.png"},{emoji:"🇸🇦",name:"saudi_arabia",shortcodes:["flag_sa","saudi_arabia"],tags:["SA","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1e6.png"},{emoji:"🇸🇧",name:"solomon_islands",shortcodes:["flag_sb","solomon_islands"],tags:["SB","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1e7.png"},{emoji:"🇸🇨",name:"seychelles",shortcodes:["flag_sc","seychelles"],tags:["SC","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1e8.png"},{emoji:"🇸🇩",name:"sudan",shortcodes:["flag_sd","sudan"],tags:["SD","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1e9.png"},{emoji:"🇸🇪",name:"sweden",shortcodes:["flag_se","sweden"],tags:["SE","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1ea.png"},{emoji:"🇸🇬",name:"singapore",shortcodes:["flag_sg","singapore"],tags:["SG","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1ec.png"},{emoji:"🇸🇭",name:"st_helena",shortcodes:["flag_sh","st_helena"],tags:["SH","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1ed.png"},{emoji:"🇸🇮",name:"slovenia",shortcodes:["flag_si","slovenia"],tags:["SI","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1ee.png"},{emoji:"🇸🇯",name:"svalbard_jan_mayen",shortcodes:["flag_sj","svalbard_jan_mayen"],tags:["SJ","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1ef.png"},{emoji:"🇸🇰",name:"slovakia",shortcodes:["flag_sk","slovakia"],tags:["SK","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1f0.png"},{emoji:"🇸🇱",name:"sierra_leone",shortcodes:["flag_sl","sierra_leone"],tags:["SL","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1f1.png"},{emoji:"🇸🇲",name:"san_marino",shortcodes:["flag_sm","san_marino"],tags:["SM","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1f2.png"},{emoji:"🇸🇳",name:"senegal",shortcodes:["flag_sn","senegal"],tags:["SN","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1f3.png"},{emoji:"🇸🇴",name:"somalia",shortcodes:["flag_so","somalia"],tags:["SO","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1f4.png"},{emoji:"🇸🇷",name:"suriname",shortcodes:["flag_sr","suriname"],tags:["SR","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1f7.png"},{emoji:"🇸🇸",name:"south_sudan",shortcodes:["flag_ss","south_sudan"],tags:["SS","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1f8.png"},{emoji:"🇸🇹",name:"sao_tome_principe",shortcodes:["flag_st","sao_tome_principe"],tags:["ST","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1f9.png"},{emoji:"🇸🇻",name:"el_salvador",shortcodes:["el_salvador","flag_sv"],tags:["SV","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1fb.png"},{emoji:"🇸🇽",name:"sint_maarten",shortcodes:["flag_sx","sint_maarten"],tags:["SX","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1fd.png"},{emoji:"🇸🇾",name:"syria",shortcodes:["flag_sy","syria"],tags:["SY","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1fe.png"},{emoji:"🇸🇿",name:"swaziland",shortcodes:["eswatini","flag_sz","swaziland"],tags:["SZ","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1ff.png"},{emoji:"🇹🇦",name:"tristan_da_cunha",shortcodes:["flag_ta","tristan_da_cunha"],tags:["TA","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f9-1f1e6.png"},{emoji:"🇹🇨",name:"turks_caicos_islands",shortcodes:["flag_tc","turks_caicos_islands"],tags:["TC","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f9-1f1e8.png"},{emoji:"🇹🇩",name:"chad",shortcodes:["chad","flag_td"],tags:["TD","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f9-1f1e9.png"},{emoji:"🇹🇫",name:"french_southern_territories",shortcodes:["flag_tf","french_southern_territories"],tags:["TF","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f9-1f1eb.png"},{emoji:"🇹🇬",name:"togo",shortcodes:["flag_tg","togo"],tags:["TG","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f9-1f1ec.png"},{emoji:"🇹🇭",name:"thailand",shortcodes:["flag_th","thailand"],tags:["TH","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f9-1f1ed.png"},{emoji:"🇹🇯",name:"tajikistan",shortcodes:["flag_tj","tajikistan"],tags:["TJ","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f9-1f1ef.png"},{emoji:"🇹🇰",name:"tokelau",shortcodes:["flag_tk","tokelau"],tags:["TK","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f9-1f1f0.png"},{emoji:"🇹🇱",name:"timor_leste",shortcodes:["flag_tl","timor_leste"],tags:["TL","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f9-1f1f1.png"},{emoji:"🇹🇲",name:"turkmenistan",shortcodes:["flag_tm","turkmenistan"],tags:["TM","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f9-1f1f2.png"},{emoji:"🇹🇳",name:"tunisia",shortcodes:["flag_tn","tunisia"],tags:["TN","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f9-1f1f3.png"},{emoji:"🇹🇴",name:"tonga",shortcodes:["flag_to","tonga"],tags:["TO","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f9-1f1f4.png"},{emoji:"🇹🇷",name:"tr",shortcodes:["flag_tr","turkey_tr"],tags:["TR","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f9-1f1f7.png"},{emoji:"🇹🇹",name:"trinidad_tobago",shortcodes:["flag_tt","trinidad_tobago"],tags:["TT","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f9-1f1f9.png"},{emoji:"🇹🇻",name:"tuvalu",shortcodes:["flag_tv","tuvalu"],tags:["TV","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f9-1f1fb.png"},{emoji:"🇹🇼",name:"taiwan",shortcodes:["flag_tw","taiwan"],tags:["TW","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f9-1f1fc.png"},{emoji:"🇹🇿",name:"tanzania",shortcodes:["flag_tz","tanzania"],tags:["TZ","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f9-1f1ff.png"},{emoji:"🇺🇦",name:"ukraine",shortcodes:["flag_ua","ukraine"],tags:["UA","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fa-1f1e6.png"},{emoji:"🇺🇬",name:"uganda",shortcodes:["flag_ug","uganda"],tags:["UG","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fa-1f1ec.png"},{emoji:"🇺🇲",name:"us_outlying_islands",shortcodes:["flag_um","us_outlying_islands"],tags:["UM","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fa-1f1f2.png"},{emoji:"🇺🇳",name:"united_nations",shortcodes:["flag_un","un","united_nations"],tags:["UN","flag"],group:"flags",emoticons:[],version:4,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fa-1f1f3.png"},{emoji:"🇺🇸",name:"us",shortcodes:["flag_us","united_states","usa"],tags:["US","flag"],group:"flags",emoticons:[],version:.6,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fa-1f1f8.png"},{emoji:"🇺🇾",name:"uruguay",shortcodes:["flag_uy","uruguay"],tags:["UY","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fa-1f1fe.png"},{emoji:"🇺🇿",name:"uzbekistan",shortcodes:["flag_uz","uzbekistan"],tags:["UZ","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fa-1f1ff.png"},{emoji:"🇻🇦",name:"vatican_city",shortcodes:["flag_va","vatican_city"],tags:["VA","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fb-1f1e6.png"},{emoji:"🇻🇨",name:"st_vincent_grenadines",shortcodes:["flag_vc","st_vincent_grenadines"],tags:["VC","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fb-1f1e8.png"},{emoji:"🇻🇪",name:"venezuela",shortcodes:["flag_ve","venezuela"],tags:["VE","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fb-1f1ea.png"},{emoji:"🇻🇬",name:"british_virgin_islands",shortcodes:["british_virgin_islands","flag_vg"],tags:["VG","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fb-1f1ec.png"},{emoji:"🇻🇮",name:"us_virgin_islands",shortcodes:["flag_vi","us_virgin_islands"],tags:["VI","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fb-1f1ee.png"},{emoji:"🇻🇳",name:"vietnam",shortcodes:["flag_vn","vietnam"],tags:["VN","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fb-1f1f3.png"},{emoji:"🇻🇺",name:"vanuatu",shortcodes:["flag_vu","vanuatu"],tags:["VU","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fb-1f1fa.png"},{emoji:"🇼🇫",name:"wallis_futuna",shortcodes:["flag_wf","wallis_futuna"],tags:["WF","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fc-1f1eb.png"},{emoji:"🇼🇸",name:"samoa",shortcodes:["flag_ws","samoa"],tags:["WS","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fc-1f1f8.png"},{emoji:"🇽🇰",name:"kosovo",shortcodes:["flag_xk","kosovo"],tags:["XK","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fd-1f1f0.png"},{emoji:"🇾🇪",name:"yemen",shortcodes:["flag_ye","yemen"],tags:["YE","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fe-1f1ea.png"},{emoji:"🇾🇹",name:"mayotte",shortcodes:["flag_yt","mayotte"],tags:["YT","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fe-1f1f9.png"},{emoji:"🇿🇦",name:"south_africa",shortcodes:["flag_za","south_africa"],tags:["ZA","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ff-1f1e6.png"},{emoji:"🇿🇲",name:"zambia",shortcodes:["flag_zm","zambia"],tags:["ZM","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ff-1f1f2.png"},{emoji:"🇿🇼",name:"zimbabwe",shortcodes:["flag_zw","zimbabwe"],tags:["ZW","flag"],group:"flags",emoticons:[],version:2,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ff-1f1fc.png"},{emoji:"🏴",name:"england",shortcodes:["england","flag_gbeng"],tags:["flag","gbeng"],group:"flags",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3f4-e0067-e0062-e0065-e006e-e0067-e007f.png"},{emoji:"🏴",name:"scotland",shortcodes:["flag_gbsct","scotland"],tags:["flag","gbsct"],group:"flags",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3f4-e0067-e0062-e0073-e0063-e0074-e007f.png"},{emoji:"🏴",name:"wales",shortcodes:["flag_gbwls","wales"],tags:["flag","gbwls"],group:"flags",emoticons:[],version:5,fallbackImage:"https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3f4-e0067-e0062-e0077-e006c-e0073-e007f.png"}],P1=[{name:"atom",shortcodes:["atom"],tags:[],group:"GitHub",fallbackImage:"https://github.githubassets.com/images/icons/emoji/atom.png"},{name:"basecamp",shortcodes:["basecamp"],tags:[],group:"GitHub",fallbackImage:"https://github.githubassets.com/images/icons/emoji/basecamp.png"},{name:"basecampy",shortcodes:["basecampy"],tags:[],group:"GitHub",fallbackImage:"https://github.githubassets.com/images/icons/emoji/basecampy.png"},{name:"bowtie",shortcodes:["bowtie"],tags:[],group:"GitHub",fallbackImage:"https://github.githubassets.com/images/icons/emoji/bowtie.png"},{name:"electron",shortcodes:["electron"],tags:[],group:"GitHub",fallbackImage:"https://github.githubassets.com/images/icons/emoji/electron.png"},{name:"feelsgood",shortcodes:["feelsgood"],tags:[],group:"GitHub",fallbackImage:"https://github.githubassets.com/images/icons/emoji/feelsgood.png"},{name:"finnadie",shortcodes:["finnadie"],tags:[],group:"GitHub",fallbackImage:"https://github.githubassets.com/images/icons/emoji/finnadie.png"},{name:"goberserk",shortcodes:["goberserk"],tags:[],group:"GitHub",fallbackImage:"https://github.githubassets.com/images/icons/emoji/goberserk.png"},{name:"godmode",shortcodes:["godmode"],tags:[],group:"GitHub",fallbackImage:"https://github.githubassets.com/images/icons/emoji/godmode.png"},{name:"hurtrealbad",shortcodes:["hurtrealbad"],tags:[],group:"GitHub",fallbackImage:"https://github.githubassets.com/images/icons/emoji/hurtrealbad.png"},{name:"neckbeard",shortcodes:["neckbeard"],tags:[],group:"GitHub",fallbackImage:"https://github.githubassets.com/images/icons/emoji/neckbeard.png"},{name:"octocat",shortcodes:["octocat"],tags:[],group:"GitHub",fallbackImage:"https://github.githubassets.com/images/icons/emoji/octocat.png"},{name:"rage1",shortcodes:["rage1"],tags:[],group:"GitHub",fallbackImage:"https://github.githubassets.com/images/icons/emoji/rage1.png"},{name:"rage2",shortcodes:["rage2"],tags:[],group:"GitHub",fallbackImage:"https://github.githubassets.com/images/icons/emoji/rage2.png"},{name:"rage3",shortcodes:["rage3"],tags:[],group:"GitHub",fallbackImage:"https://github.githubassets.com/images/icons/emoji/rage3.png"},{name:"rage4",shortcodes:["rage4"],tags:[],group:"GitHub",fallbackImage:"https://github.githubassets.com/images/icons/emoji/rage4.png"},{name:"shipit",shortcodes:["shipit"],tags:[],group:"GitHub",fallbackImage:"https://github.githubassets.com/images/icons/emoji/shipit.png"},{name:"suspect",shortcodes:["suspect"],tags:[],group:"GitHub",fallbackImage:"https://github.githubassets.com/images/icons/emoji/suspect.png"},{name:"trollface",shortcodes:["trollface"],tags:[],group:"GitHub",fallbackImage:"https://github.githubassets.com/images/icons/emoji/trollface.png"}];[...hr,...P1];function z1(o,e){var t;return(t=e.find(n=>n.emoji===o.replace("︎","").replace("️","")))===null||t===void 0?void 0:t.shortcodes[0]}function qn(o,e){return e.find(t=>o===t.name||t.shortcodes.includes(o))}const $1=new ye("emojiSuggestion"),H1=/:([a-zA-Z0-9_+-]+):$/,V1=/:([a-zA-Z0-9_+-]+):/g,q1=Be.create({name:"emoji",inline:!0,group:"inline",selectable:!1,addOptions(){return{HTMLAttributes:{},emojis:hr,enableEmoticons:!1,forceFallbackImages:!1,suggestion:{char:":",pluginKey:$1,command:({editor:o,range:e,props:t})=>{var n;const a=o.view.state.selection.$to.nodeAfter;!((n=a==null?void 0:a.text)===null||n===void 0)&&n.startsWith(" ")&&(e.to+=1),o.chain().focus().insertContentAt(e,[{type:this.name,attrs:t},{type:"text",text:" "}]).run()},allow:({state:o,range:e})=>{const t=o.doc.resolve(e.from),n=o.schema.nodes[this.name];return!!t.parent.type.contentMatch.matchType(n)}}}},addStorage(){const{emojis:o}=this.options,e=function(t,n=JSON.stringify){const a={};return t.filter(s=>{const i=n(s);return!Object.prototype.hasOwnProperty.call(a,i)&&(a[i]=!0)})}(o.map(t=>t.version)).filter(t=>typeof t=="number").reduce((t,n)=>{const a=o.find(s=>s.version===n&&s.emoji);return{...t,[n]:!!a&&R1(a.emoji)}},{});return{emojis:this.options.emojis,isSupported:t=>!!t.version&&e[t.version]}},addAttributes:()=>({name:{default:null,parseHTML:o=>o.dataset.name,renderHTML:o=>({"data-name":o.name})}}),parseHTML(){return[{tag:`span[data-type="${this.name}"]`}]},renderHTML({HTMLAttributes:o,node:e}){const t=qn(e.attrs.name,this.options.emojis),n=_e(o,this.options.HTMLAttributes,{"data-type":this.name});if(!t)return["span",n,`:${e.attrs.name}:`];const a=this.storage.isSupported(t),s=!!(t!=null&&t.emoji),i=!!(t!=null&&t.fallbackImage);return["span",n,this.options.forceFallbackImages&&!s||this.options.forceFallbackImages&&i||this.options.forceFallbackImages&&!a&&i||(!a||!s)&&i?["img",{src:t.fallbackImage,draggable:"false",loading:"lazy",align:"absmiddle"}]:t.emoji||`:${t.shortcodes[0]}:`]},renderText({node:o}){const e=qn(o.attrs.name,this.options.emojis);return(e==null?void 0:e.emoji)||`:${o.attrs.name}:`},addCommands(){return{setEmoji:o=>({commands:e})=>{const t=qn(o,this.options.emojis);return!!t&&e.insertContent({type:this.name,attrs:{name:t.name}})}}},addInputRules(){const o=[];if(o.push(new Fn({find:H1,handler:({range:e,match:t,commands:n})=>{const a=t[1];qn(a,this.options.emojis)&&n.insertContentAt(e,{type:this.name,attrs:{name:a}})}})),this.options.enableEmoticons){const e=this.options.emojis.map(n=>n.emoticons).flat().filter(n=>n),t=new RegExp(`(?:^|\\s)(${e.map(n=>Yc(n)).join("|")}) $`);o.push(Ui({find:t,type:this.type,getAttributes:n=>{const a=this.options.emojis.find(s=>{var i;return(i=s.emoticons)===null||i===void 0?void 0:i.includes(n[1])});if(a)return{name:a.name}}}))}return o},addPasteRules(){return[new Tc({find:V1,handler:({range:o,match:e,commands:t})=>{const n=e[1];qn(n,this.options.emojis)&&t.insertContentAt(o,{type:this.name,attrs:{name:n}},{updateSelection:!1})}})]},addProseMirrorPlugins(){return[N1({editor:this.editor,...this.options.suggestion}),new ue({key:new ye("emoji"),props:{handleDoubleClickOn:(o,e,t)=>{if(t.type!==this.type)return!1;const n=e,a=n+t.nodeSize;return this.editor.commands.setTextSelection({from:n,to:a}),!0}},appendTransaction:(o,e,t)=>{if(!(o.some(s=>s.docChanged)&&!e.doc.eq(t.doc)))return;const{tr:n}=t,a=Vc(e.doc,o);return Wc(a).forEach(({newRange:s})=>{t.doc.resolve(s.from).parent.type.spec.code||qc(t.doc,s,i=>i.type.isText).forEach(({node:i,pos:r})=>{i.text&&[...i.text.matchAll(B1())].forEach(l=>{if(l.index===void 0)return;const p=l[0],c=z1(p,this.options.emojis);if(!c)return;const m=n.mapping.map(r+l.index);if(t.doc.resolve(m).parent.type.spec.code)return;const d=m+p.length,u=this.type.create({name:c});n.replaceRangeWith(m,d,u)})})}),n.steps.length?n:void 0}})]}}),W1={class:"dropdown-menu"},U1=["onClick"],K1=["src"],G1=f.defineComponent({__name:"EmojiList",props:{items:{},command:{},editor:{}},setup(o){const e=o,t=f.ref(0);f.watch(()=>e.items,()=>{t.value=0});const n=a=>{const s=e.items[a];s&&e.command({name:s.name})};return(a,s)=>(f.openBlock(),f.createElementBlock("div",W1,[(f.openBlock(!0),f.createElementBlock(f.Fragment,null,f.renderList(a.items,(i,r)=>(f.openBlock(),f.createElementBlock("button",{class:f.normalizeClass({"is-selected":r===t.value}),key:r,onClick:l=>n(r)},[i.fallbackImage?(f.openBlock(),f.createElementBlock("img",{key:0,src:i.fallbackImage,align:"absmiddle",alt:""},null,8,K1)):(f.openBlock(),f.createElementBlock(f.Fragment,{key:1},[f.createTextVNode(f.toDisplayString(i.emoji),1)],64)),f.createTextVNode(" :"+f.toDisplayString(i.name)+": ",1)],10,U1))),128))]))}}),J1={items:({editor:o,query:e})=>o.storage.emoji.emojis.filter(({shortcodes:t,tags:n})=>t.find(a=>a.startsWith(e.toLowerCase()))||n.find(a=>a.startsWith(e.toLowerCase()))).slice(0,7),render:()=>{let o,e;return{onStart:t=>{o=new Sv(G1,{props:t,editor:t.editor}),e=Pt("body",{getReferenceClientRect:t.clientRect,appendTo:()=>document.body,content:o.element,arrow:!1,showOnCreate:!0,interactive:!0,trigger:"manual",placement:"bottom-start",theme:"light-border"})},onUpdate(t){o.updateProps(t),e[0].setProps({getReferenceClientRect:t.clientRect})},onKeyDown(t){var n;return t.event.key==="Escape"?(e[0].hide(),o.destroy(),!0):(n=o.ref)==null?void 0:n.onKeyDown(t)},onExit(){e[0].destroy(),o.destroy()}}}};function Y1(o){return o&&o.__esModule&&Object.prototype.hasOwnProperty.call(o,"default")?o.default:o}function Jm(o){return o instanceof Map?o.clear=o.delete=o.set=function(){throw new Error("map is read-only")}:o instanceof Set&&(o.add=o.clear=o.delete=function(){throw new Error("set is read-only")}),Object.freeze(o),Object.getOwnPropertyNames(o).forEach(e=>{const t=o[e],n=typeof t;(n==="object"||n==="function")&&!Object.isFrozen(t)&&Jm(t)}),o}let Ym=class{constructor(e){e.data===void 0&&(e.data={}),this.data=e.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}};function Xm(o){return o.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function ro(o,...e){const t=Object.create(null);for(const n in o)t[n]=o[n];return e.forEach(function(n){for(const a in n)t[a]=n[a]}),t}const X1="</span>",Zm=o=>!!o.scope,Z1=(o,{prefix:e})=>{if(o.startsWith("language:"))return o.replace("language:","language-");if(o.includes(".")){const t=o.split(".");return[`${e}${t.shift()}`,...t.map((n,a)=>`${n}${"_".repeat(a+1)}`)].join(" ")}return`${e}${o}`};let Q1=class{constructor(e,t){this.buffer="",this.classPrefix=t.classPrefix,e.walk(this)}addText(e){this.buffer+=Xm(e)}openNode(e){if(!Zm(e))return;const t=Z1(e.scope,{prefix:this.classPrefix});this.span(t)}closeNode(e){Zm(e)&&(this.buffer+=X1)}value(){return this.buffer}span(e){this.buffer+=`<span class="${e}">`}};const Qm=(o={})=>{const e={children:[]};return Object.assign(e,o),e};let ek=class cu{constructor(){this.rootNode=Qm(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){this.top.children.push(e)}openNode(e){const t=Qm({scope:e});this.add(t),this.stack.push(t)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(e,t){return typeof t=="string"?e.addText(t):t.children&&(e.openNode(t),t.children.forEach(n=>this._walk(e,n)),e.closeNode(t)),e}static _collapse(e){typeof e!="string"&&e.children&&(e.children.every(t=>typeof t=="string")?e.children=[e.children.join("")]:e.children.forEach(t=>{cu._collapse(t)}))}},tk=class extends ek{constructor(e){super(),this.options=e}addText(e){e!==""&&this.add(e)}startScope(e){this.openNode(e)}endScope(){this.closeNode()}__addSublanguage(e,t){const n=e.root;t&&(n.scope=`language:${t}`),this.add(n)}toHTML(){return new Q1(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}};function Wn(o){return o?typeof o=="string"?o:o.source:null}function ed(o){return Fo("(?=",o,")")}function ok(o){return Fo("(?:",o,")*")}function nk(o){return Fo("(?:",o,")?")}function Fo(...o){return o.map(t=>Wn(t)).join("")}function ak(o){const e=o[o.length-1];return typeof e=="object"&&e.constructor===Object?(o.splice(o.length-1,1),e):{}}function br(...o){return"("+(ak(o).capture?"":"?:")+o.map(n=>Wn(n)).join("|")+")"}function td(o){return new RegExp(o.toString()+"|").exec("").length-1}function sk(o,e){const t=o&&o.exec(e);return t&&t.index===0}const ik=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function jr(o,{joinWith:e}){let t=0;return o.map(n=>{t+=1;const a=t;let s=Wn(n),i="";for(;s.length>0;){const r=ik.exec(s);if(!r){i+=s;break}i+=s.substring(0,r.index),s=s.substring(r.index+r[0].length),r[0][0]==="\\"&&r[1]?i+="\\"+String(Number(r[1])+a):(i+=r[0],r[0]==="("&&t++)}return i}).map(n=>`(${n})`).join(e)}const rk=/\b\B/,od="[a-zA-Z]\\w*",vr="[a-zA-Z_]\\w*",nd="\\b\\d+(\\.\\d+)?",ad="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",sd="\\b(0b[01]+)",lk="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",pk=(o={})=>{const e=/^#![ ]*\//;return o.binary&&(o.begin=Fo(e,/.*\b/,o.binary,/\b.*/)),ro({scope:"meta",begin:e,end:/$/,relevance:0,"on:begin":(t,n)=>{t.index!==0&&n.ignoreMatch()}},o)},Un={begin:"\\\\[\\s\\S]",relevance:0},ck={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[Un]},mk={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[Un]},dk={begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},Ja=function(o,e,t={}){const n=ro({scope:"comment",begin:o,end:e,contains:[]},t);n.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});const a=br("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/);return n.contains.push({begin:Fo(/[ ]+/,"(",a,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),n},uk=Ja("//","$"),gk=Ja("/\\*","\\*/"),fk=Ja("#","$"),hk={scope:"number",begin:nd,relevance:0},bk={scope:"number",begin:ad,relevance:0},jk={scope:"number",begin:sd,relevance:0},vk={scope:"regexp",begin:/\/(?=[^/\n]*\/)/,end:/\/[gimuy]*/,contains:[Un,{begin:/\[/,end:/\]/,relevance:0,contains:[Un]}]},kk={scope:"title",begin:od,relevance:0},yk={scope:"title",begin:vr,relevance:0},_k={begin:"\\.\\s*"+vr,relevance:0};var Ya=Object.freeze({__proto__:null,APOS_STRING_MODE:ck,BACKSLASH_ESCAPE:Un,BINARY_NUMBER_MODE:jk,BINARY_NUMBER_RE:sd,COMMENT:Ja,C_BLOCK_COMMENT_MODE:gk,C_LINE_COMMENT_MODE:uk,C_NUMBER_MODE:bk,C_NUMBER_RE:ad,END_SAME_AS_BEGIN:function(o){return Object.assign(o,{"on:begin":(e,t)=>{t.data._beginMatch=e[1]},"on:end":(e,t)=>{t.data._beginMatch!==e[1]&&t.ignoreMatch()}})},HASH_COMMENT_MODE:fk,IDENT_RE:od,MATCH_NOTHING_RE:rk,METHOD_GUARD:_k,NUMBER_MODE:hk,NUMBER_RE:nd,PHRASAL_WORDS_MODE:dk,QUOTE_STRING_MODE:mk,REGEXP_MODE:vk,RE_STARTERS_RE:lk,SHEBANG:pk,TITLE_MODE:kk,UNDERSCORE_IDENT_RE:vr,UNDERSCORE_TITLE_MODE:yk});function Dk(o,e){o.input[o.index-1]==="."&&e.ignoreMatch()}function wk(o,e){o.className!==void 0&&(o.scope=o.className,delete o.className)}function Ik(o,e){e&&o.beginKeywords&&(o.begin="\\b("+o.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",o.__beforeBegin=Dk,o.keywords=o.keywords||o.beginKeywords,delete o.beginKeywords,o.relevance===void 0&&(o.relevance=0))}function Ek(o,e){Array.isArray(o.illegal)&&(o.illegal=br(...o.illegal))}function Ck(o,e){if(o.match){if(o.begin||o.end)throw new Error("begin & end are not supported with match");o.begin=o.match,delete o.match}}function xk(o,e){o.relevance===void 0&&(o.relevance=1)}const Sk=(o,e)=>{if(!o.beforeMatch)return;if(o.starts)throw new Error("beforeMatch cannot be used with starts");const t=Object.assign({},o);Object.keys(o).forEach(n=>{delete o[n]}),o.keywords=t.keywords,o.begin=Fo(t.beforeMatch,ed(t.begin)),o.starts={relevance:0,contains:[Object.assign(t,{endsParent:!0})]},o.relevance=0,delete t.beforeMatch},Mk=["of","and","for","in","not","or","if","then","parent","list","value"],Fk="keyword";function id(o,e,t=Fk){const n=Object.create(null);return typeof o=="string"?a(t,o.split(" ")):Array.isArray(o)?a(t,o):Object.keys(o).forEach(function(s){Object.assign(n,id(o[s],e,s))}),n;function a(s,i){e&&(i=i.map(r=>r.toLowerCase())),i.forEach(function(r){const l=r.split("|");n[l[0]]=[s,Ok(l[0],l[1])]})}}function Ok(o,e){return e?Number(e):Ak(o)?0:1}function Ak(o){return Mk.includes(o.toLowerCase())}const rd={},Oo=o=>{console.error(o)},ld=(o,...e)=>{console.log(`WARN: ${o}`,...e)},sn=(o,e)=>{rd[`${o}/${e}`]||(console.log(`Deprecated as of ${o}. ${e}`),rd[`${o}/${e}`]=!0)},Xa=new Error;function pd(o,e,{key:t}){let n=0;const a=o[t],s={},i={};for(let r=1;r<=e.length;r++)i[r+n]=a[r],s[r+n]=!0,n+=td(e[r-1]);o[t]=i,o[t]._emit=s,o[t]._multi=!0}function Tk(o){if(Array.isArray(o.begin)){if(o.skip||o.excludeBegin||o.returnBegin)throw Oo("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),Xa;if(typeof o.beginScope!="object"||o.beginScope===null)throw Oo("beginScope must be object"),Xa;pd(o,o.begin,{key:"beginScope"}),o.begin=jr(o.begin,{joinWith:""})}}function Nk(o){if(Array.isArray(o.end)){if(o.skip||o.excludeEnd||o.returnEnd)throw Oo("skip, excludeEnd, returnEnd not compatible with endScope: {}"),Xa;if(typeof o.endScope!="object"||o.endScope===null)throw Oo("endScope must be object"),Xa;pd(o,o.end,{key:"endScope"}),o.end=jr(o.end,{joinWith:""})}}function Bk(o){o.scope&&typeof o.scope=="object"&&o.scope!==null&&(o.beginScope=o.scope,delete o.scope)}function Rk(o){Bk(o),typeof o.beginScope=="string"&&(o.beginScope={_wrap:o.beginScope}),typeof o.endScope=="string"&&(o.endScope={_wrap:o.endScope}),Tk(o),Nk(o)}function Lk(o){function e(i,r){return new RegExp(Wn(i),"m"+(o.case_insensitive?"i":"")+(o.unicodeRegex?"u":"")+(r?"g":""))}class t{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(r,l){l.position=this.position++,this.matchIndexes[this.matchAt]=l,this.regexes.push([l,r]),this.matchAt+=td(r)+1}compile(){this.regexes.length===0&&(this.exec=()=>null);const r=this.regexes.map(l=>l[1]);this.matcherRe=e(jr(r,{joinWith:"|"}),!0),this.lastIndex=0}exec(r){this.matcherRe.lastIndex=this.lastIndex;const l=this.matcherRe.exec(r);if(!l)return null;const p=l.findIndex((m,d)=>d>0&&m!==void 0),c=this.matchIndexes[p];return l.splice(0,p),Object.assign(l,c)}}class n{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(r){if(this.multiRegexes[r])return this.multiRegexes[r];const l=new t;return this.rules.slice(r).forEach(([p,c])=>l.addRule(p,c)),l.compile(),this.multiRegexes[r]=l,l}resumingScanAtSamePosition(){return this.regexIndex!==0}considerAll(){this.regexIndex=0}addRule(r,l){this.rules.push([r,l]),l.type==="begin"&&this.count++}exec(r){const l=this.getMatcher(this.regexIndex);l.lastIndex=this.lastIndex;let p=l.exec(r);if(this.resumingScanAtSamePosition()&&!(p&&p.index===this.lastIndex)){const c=this.getMatcher(0);c.lastIndex=this.lastIndex+1,p=c.exec(r)}return p&&(this.regexIndex+=p.position+1,this.regexIndex===this.count&&this.considerAll()),p}}function a(i){const r=new n;return i.contains.forEach(l=>r.addRule(l.begin,{rule:l,type:"begin"})),i.terminatorEnd&&r.addRule(i.terminatorEnd,{type:"end"}),i.illegal&&r.addRule(i.illegal,{type:"illegal"}),r}function s(i,r){const l=i;if(i.isCompiled)return l;[wk,Ck,Rk,Sk].forEach(c=>c(i,r)),o.compilerExtensions.forEach(c=>c(i,r)),i.__beforeBegin=null,[Ik,Ek,xk].forEach(c=>c(i,r)),i.isCompiled=!0;let p=null;return typeof i.keywords=="object"&&i.keywords.$pattern&&(i.keywords=Object.assign({},i.keywords),p=i.keywords.$pattern,delete i.keywords.$pattern),p=p||/\w+/,i.keywords&&(i.keywords=id(i.keywords,o.case_insensitive)),l.keywordPatternRe=e(p,!0),r&&(i.begin||(i.begin=/\B|\b/),l.beginRe=e(l.begin),!i.end&&!i.endsWithParent&&(i.end=/\B|\b/),i.end&&(l.endRe=e(l.end)),l.terminatorEnd=Wn(l.end)||"",i.endsWithParent&&r.terminatorEnd&&(l.terminatorEnd+=(i.end?"|":"")+r.terminatorEnd)),i.illegal&&(l.illegalRe=e(i.illegal)),i.contains||(i.contains=[]),i.contains=[].concat(...i.contains.map(function(c){return Pk(c==="self"?i:c)})),i.contains.forEach(function(c){s(c,l)}),i.starts&&s(i.starts,r),l.matcher=a(l),l}if(o.compilerExtensions||(o.compilerExtensions=[]),o.contains&&o.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return o.classNameAliases=ro(o.classNameAliases||{}),s(o)}function cd(o){return o?o.endsWithParent||cd(o.starts):!1}function Pk(o){return o.variants&&!o.cachedVariants&&(o.cachedVariants=o.variants.map(function(e){return ro(o,{variants:null},e)})),o.cachedVariants?o.cachedVariants:cd(o)?ro(o,{starts:o.starts?ro(o.starts):null}):Object.isFrozen(o)?ro(o):o}var zk="11.10.0";let $k=class extends Error{constructor(e,t){super(e),this.name="HTMLInjectionError",this.html=t}};const kr=Xm,md=ro,dd=Symbol("nomatch"),Hk=7,ud=function(o){const e=Object.create(null),t=Object.create(null),n=[];let a=!0;const s="Could not find the language '{}', did you forget to load/include a language module?",i={disableAutodetect:!0,name:"Plain text",contains:[]};let r={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:tk};function l(v){return r.noHighlightRe.test(v)}function p(v){let _=v.className+" ";_+=v.parentNode?v.parentNode.className:"";const F=r.languageDetectRe.exec(_);if(F){const B=C(F[1]);return B||(ld(s.replace("{}",F[1])),ld("Falling back to no-highlight mode for this block.",v)),B?F[1]:"no-highlight"}return _.split(/\s+/).find(B=>l(B)||C(B))}function c(v,_,F){let B="",K="";typeof _=="object"?(B=v,F=_.ignoreIllegals,K=_.language):(sn("10.7.0","highlight(lang, code, ...args) has been deprecated."),sn("10.7.0",`Please use highlight(code, options) instead.
|
|
114
|
-
https://github.com/highlightjs/highlight.js/issues/2277`),K=v,B=_),F===void 0&&(F=!0);const oe={code:B,language:K};L("before:highlight",oe);const de=oe.result?oe.result:m(oe.language,oe.code,F);return de.code=oe.code,L("after:highlight",de),de}function m(v,_,F,B){const K=Object.create(null);function oe(y,E){return y.keywords[E]}function de(){if(!M.keywords){Y.addText(V);return}let y=0;M.keywordPatternRe.lastIndex=0;let E=M.keywordPatternRe.exec(V),A="";for(;E;){A+=V.substring(y,E.index);const z=me.case_insensitive?E[0].toLowerCase():E[0],se=oe(M,z);if(se){const[ve,ea]=se;if(Y.addText(A),A="",K[z]=(K[z]||0)+1,K[z]<=Hk&&(Oe+=ea),ve.startsWith("_"))A+=E[0];else{const w=me.classNameAliases[ve]||ve;re(E[0],w)}}else A+=E[0];y=M.keywordPatternRe.lastIndex,E=M.keywordPatternRe.exec(V)}A+=V.substring(y),Y.addText(A)}function De(){if(V==="")return;let y=null;if(typeof M.subLanguage=="string"){if(!e[M.subLanguage]){Y.addText(V);return}y=m(M.subLanguage,V,!0,He[M.subLanguage]),He[M.subLanguage]=y._top}else y=u(V,M.subLanguage.length?M.subLanguage:null);M.relevance>0&&(Oe+=y.relevance),Y.__addSublanguage(y._emitter,y.language)}function te(){M.subLanguage!=null?De():de(),V=""}function re(y,E){y!==""&&(Y.startScope(E),Y.addText(y),Y.endScope())}function rt(y,E){let A=1;const z=E.length-1;for(;A<=z;){if(!y._emit[A]){A++;continue}const se=me.classNameAliases[y[A]]||y[A],ve=E[A];se?re(ve,se):(V=ve,de(),V=""),A++}}function $e(y,E){return y.scope&&typeof y.scope=="string"&&Y.openNode(me.classNameAliases[y.scope]||y.scope),y.beginScope&&(y.beginScope._wrap?(re(V,me.classNameAliases[y.beginScope._wrap]||y.beginScope._wrap),V=""):y.beginScope._multi&&(rt(y.beginScope,E),V="")),M=Object.create(y,{parent:{value:M}}),M}function lt(y,E,A){let z=sk(y.endRe,A);if(z){if(y["on:end"]){const se=new Ym(y);y["on:end"](E,se),se.isMatchIgnored&&(z=!1)}if(z){for(;y.endsParent&&y.parent;)y=y.parent;return y}}if(y.endsWithParent)return lt(y.parent,E,A)}function pt(y){return M.matcher.regexIndex===0?(V+=y[0],1):(dt=!0,0)}function Mt(y){const E=y[0],A=y.rule,z=new Ym(A),se=[A.__beforeBegin,A["on:begin"]];for(const ve of se)if(ve&&(ve(y,z),z.isMatchIgnored))return pt(E);return A.skip?V+=E:(A.excludeBegin&&(V+=E),te(),!A.returnBegin&&!A.excludeBegin&&(V=E)),$e(A,y),A.returnBegin?0:E.length}function uo(y){const E=y[0],A=_.substring(y.index),z=lt(M,y,A);if(!z)return dd;const se=M;M.endScope&&M.endScope._wrap?(te(),re(E,M.endScope._wrap)):M.endScope&&M.endScope._multi?(te(),rt(M.endScope,y)):se.skip?V+=E:(se.returnEnd||se.excludeEnd||(V+=E),te(),se.excludeEnd&&(V=E));do M.scope&&Y.closeNode(),!M.skip&&!M.subLanguage&&(Oe+=M.relevance),M=M.parent;while(M!==z.parent);return z.starts&&$e(z.starts,y),se.returnEnd?0:E.length}function Ht(){const y=[];for(let E=M;E!==me;E=E.parent)E.scope&&y.unshift(E.scope);y.forEach(E=>Y.openNode(E))}let Ge={};function Ft(y,E){const A=E&&E[0];if(V+=y,A==null)return te(),0;if(Ge.type==="begin"&&E.type==="end"&&Ge.index===E.index&&A===""){if(V+=_.slice(E.index,E.index+1),!a){const z=new Error(`0 width match regex (${v})`);throw z.languageName=v,z.badRule=Ge.rule,z}return 1}if(Ge=E,E.type==="begin")return Mt(E);if(E.type==="illegal"&&!F){const z=new Error('Illegal lexeme "'+A+'" for mode "'+(M.scope||"<unnamed>")+'"');throw z.mode=M,z}else if(E.type==="end"){const z=uo(E);if(z!==dd)return z}if(E.type==="illegal"&&A==="")return 1;if(mt>1e5&&mt>E.index*3)throw new Error("potential infinite loop, way more iterations than matches");return V+=A,A.length}const me=C(v);if(!me)throw Oo(s.replace("{}",v)),new Error('Unknown language: "'+v+'"');const Vt=Lk(me);let ct="",M=B||Vt;const He={},Y=new r.__emitter(r);Ht();let V="",Oe=0,je=0,mt=0,dt=!1;try{if(me.__emitTokens)me.__emitTokens(_,Y);else{for(M.matcher.considerAll();;){mt++,dt?dt=!1:M.matcher.considerAll(),M.matcher.lastIndex=je;const y=M.matcher.exec(_);if(!y)break;const E=_.substring(je,y.index),A=Ft(E,y);je=y.index+A}Ft(_.substring(je))}return Y.finalize(),ct=Y.toHTML(),{language:v,value:ct,relevance:Oe,illegal:!1,_emitter:Y,_top:M}}catch(y){if(y.message&&y.message.includes("Illegal"))return{language:v,value:kr(_),illegal:!0,relevance:0,_illegalBy:{message:y.message,index:je,context:_.slice(je-100,je+100),mode:y.mode,resultSoFar:ct},_emitter:Y};if(a)return{language:v,value:kr(_),illegal:!1,relevance:0,errorRaised:y,_emitter:Y,_top:M};throw y}}function d(v){const _={value:kr(v),illegal:!1,relevance:0,_top:i,_emitter:new r.__emitter(r)};return _._emitter.addText(v),_}function u(v,_){_=_||r.languages||Object.keys(e);const F=d(v),B=_.filter(C).filter(X).map(te=>m(te,v,!1));B.unshift(F);const K=B.sort((te,re)=>{if(te.relevance!==re.relevance)return re.relevance-te.relevance;if(te.language&&re.language){if(C(te.language).supersetOf===re.language)return 1;if(C(re.language).supersetOf===te.language)return-1}return 0}),[oe,de]=K,De=oe;return De.secondBest=de,De}function g(v,_,F){const B=_&&t[_]||F;v.classList.add("hljs"),v.classList.add(`language-${B}`)}function h(v){let _=null;const F=p(v);if(l(F))return;if(L("before:highlightElement",{el:v,language:F}),v.dataset.highlighted){console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",v);return}if(v.children.length>0&&(r.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."),console.warn("https://github.com/highlightjs/highlight.js/wiki/security"),console.warn("The element with unescaped HTML:"),console.warn(v)),r.throwUnescapedHTML))throw new $k("One of your code blocks includes unescaped HTML.",v.innerHTML);_=v;const B=_.textContent,K=F?c(B,{language:F,ignoreIllegals:!0}):u(B);v.innerHTML=K.value,v.dataset.highlighted="yes",g(v,F,K.language),v.result={language:K.language,re:K.relevance,relevance:K.relevance},K.secondBest&&(v.secondBest={language:K.secondBest.language,relevance:K.secondBest.relevance}),L("after:highlightElement",{el:v,result:K,text:B})}function b(v){r=md(r,v)}const k=()=>{j(),sn("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function I(){j(),sn("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let S=!1;function j(){if(document.readyState==="loading"){S=!0;return}document.querySelectorAll(r.cssSelector).forEach(h)}function T(){S&&j()}typeof window<"u"&&window.addEventListener&&window.addEventListener("DOMContentLoaded",T,!1);function D(v,_){let F=null;try{F=_(o)}catch(B){if(Oo("Language definition for '{}' could not be registered.".replace("{}",v)),a)Oo(B);else throw B;F=i}F.name||(F.name=v),e[v]=F,F.rawDefinition=_.bind(null,o),F.aliases&&q(F.aliases,{languageName:v})}function P(v){delete e[v];for(const _ of Object.keys(t))t[_]===v&&delete t[_]}function U(){return Object.keys(e)}function C(v){return v=(v||"").toLowerCase(),e[v]||e[t[v]]}function q(v,{languageName:_}){typeof v=="string"&&(v=[v]),v.forEach(F=>{t[F.toLowerCase()]=_})}function X(v){const _=C(v);return _&&!_.disableAutodetect}function ae(v){v["before:highlightBlock"]&&!v["before:highlightElement"]&&(v["before:highlightElement"]=_=>{v["before:highlightBlock"](Object.assign({block:_.el},_))}),v["after:highlightBlock"]&&!v["after:highlightElement"]&&(v["after:highlightElement"]=_=>{v["after:highlightBlock"](Object.assign({block:_.el},_))})}function ne(v){ae(v),n.push(v)}function ce(v){const _=n.indexOf(v);_!==-1&&n.splice(_,1)}function L(v,_){const F=v;n.forEach(function(B){B[F]&&B[F](_)})}function H(v){return sn("10.7.0","highlightBlock will be removed entirely in v12.0"),sn("10.7.0","Please use highlightElement now."),h(v)}Object.assign(o,{highlight:c,highlightAuto:u,highlightAll:j,highlightElement:h,highlightBlock:H,configure:b,initHighlighting:k,initHighlightingOnLoad:I,registerLanguage:D,unregisterLanguage:P,listLanguages:U,getLanguage:C,registerAliases:q,autoDetection:X,inherit:md,addPlugin:ne,removePlugin:ce}),o.debugMode=function(){a=!1},o.safeMode=function(){a=!0},o.versionString=zk,o.regex={concat:Fo,lookahead:ed,either:br,optional:nk,anyNumberOfTimes:ok};for(const v in Ya)typeof Ya[v]=="object"&&Jm(Ya[v]);return Object.assign(o,Ya),o},rn=ud({});rn.newInstance=()=>ud({});var Vk=rn;rn.HighlightJS=rn,rn.default=rn;var qk=Y1(Vk);function gd(o,e=[]){return o.map(t=>{const n=[...e,...t.properties?t.properties.className:[]];return t.children?gd(t.children,n):{text:t.value,classes:n}}).flat()}function fd(o){return o.value||o.children||[]}function Wk(o){return!!qk.getLanguage(o)}function hd({doc:o,name:e,lowlight:t,defaultLanguage:n}){const a=[];return Pi(o,s=>s.type.name===e).forEach(s=>{var i;let r=s.pos+1;const l=s.node.attrs.language||n,p=t.listLanguages(),c=l&&(p.includes(l)||Wk(l)||!((i=t.registered)===null||i===void 0)&&i.call(t,l))?fd(t.highlight(l,s.node.textContent)):fd(t.highlightAuto(s.node.textContent));gd(c).forEach(m=>{const d=r+m.text.length;if(m.classes.length){const u=ze.inline(r,d,{class:m.classes.join(" ")});a.push(u)}r=d})}),he.create(o,a)}function Uk(o){return typeof o=="function"}function Kk({name:o,lowlight:e,defaultLanguage:t}){if(!["highlight","highlightAuto","listLanguages"].every(a=>Uk(e[a])))throw Error("You should provide an instance of lowlight to use the code-block-lowlight extension");const n=new ue({key:new ye("lowlight"),state:{init:(a,{doc:s})=>hd({doc:s,name:o,lowlight:e,defaultLanguage:t}),apply:(a,s,i,r)=>{const l=i.selection.$head.parent.type.name,p=r.selection.$head.parent.type.name,c=Pi(i.doc,d=>d.type.name===o),m=Pi(r.doc,d=>d.type.name===o);return a.docChanged&&([l,p].includes(o)||m.length!==c.length||a.steps.some(d=>d.from!==void 0&&d.to!==void 0&&c.some(u=>u.pos>=d.from&&u.pos+u.node.nodeSize<=d.to)))?hd({doc:a.doc,name:o,lowlight:e,defaultLanguage:t}):s.map(a.mapping,a.doc)}},props:{decorations(a){return n.getState(a)}}});return n}const Gk=$m.extend({addOptions(){var o;return{...(o=this.parent)===null||o===void 0?void 0:o.call(this),lowlight:{},languageClassPrefix:"language-",exitOnTripleEnter:!0,exitOnArrowDown:!0,defaultLanguage:null,HTMLAttributes:{}}},addProseMirrorPlugins(){var o;return[...((o=this.parent)===null||o===void 0?void 0:o.call(this))||[],Kk({name:this.name,lowlight:this.options.lowlight,defaultLanguage:this.options.defaultLanguage})]}});function Jk(o){return o&&o.__esModule&&Object.prototype.hasOwnProperty.call(o,"default")?o.default:o}function bd(o){return o instanceof Map?o.clear=o.delete=o.set=function(){throw new Error("map is read-only")}:o instanceof Set&&(o.add=o.clear=o.delete=function(){throw new Error("set is read-only")}),Object.freeze(o),Object.getOwnPropertyNames(o).forEach(e=>{const t=o[e],n=typeof t;(n==="object"||n==="function")&&!Object.isFrozen(t)&&bd(t)}),o}class jd{constructor(e){e.data===void 0&&(e.data={}),this.data=e.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}}function vd(o){return o.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function lo(o,...e){const t=Object.create(null);for(const n in o)t[n]=o[n];return e.forEach(function(n){for(const a in n)t[a]=n[a]}),t}const Yk="</span>",kd=o=>!!o.scope,Xk=(o,{prefix:e})=>{if(o.startsWith("language:"))return o.replace("language:","language-");if(o.includes(".")){const t=o.split(".");return[`${e}${t.shift()}`,...t.map((n,a)=>`${n}${"_".repeat(a+1)}`)].join(" ")}return`${e}${o}`};class Zk{constructor(e,t){this.buffer="",this.classPrefix=t.classPrefix,e.walk(this)}addText(e){this.buffer+=vd(e)}openNode(e){if(!kd(e))return;const t=Xk(e.scope,{prefix:this.classPrefix});this.span(t)}closeNode(e){kd(e)&&(this.buffer+=Yk)}value(){return this.buffer}span(e){this.buffer+=`<span class="${e}">`}}const yd=(o={})=>{const e={children:[]};return Object.assign(e,o),e};class yr{constructor(){this.rootNode=yd(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){this.top.children.push(e)}openNode(e){const t=yd({scope:e});this.add(t),this.stack.push(t)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(e,t){return typeof t=="string"?e.addText(t):t.children&&(e.openNode(t),t.children.forEach(n=>this._walk(e,n)),e.closeNode(t)),e}static _collapse(e){typeof e!="string"&&e.children&&(e.children.every(t=>typeof t=="string")?e.children=[e.children.join("")]:e.children.forEach(t=>{yr._collapse(t)}))}}class Qk extends yr{constructor(e){super(),this.options=e}addText(e){e!==""&&this.add(e)}startScope(e){this.openNode(e)}endScope(){this.closeNode()}__addSublanguage(e,t){const n=e.root;t&&(n.scope=`language:${t}`),this.add(n)}toHTML(){return new Zk(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}}function Kn(o){return o?typeof o=="string"?o:o.source:null}function _d(o){return Ao("(?=",o,")")}function ey(o){return Ao("(?:",o,")*")}function ty(o){return Ao("(?:",o,")?")}function Ao(...o){return o.map(t=>Kn(t)).join("")}function oy(o){const e=o[o.length-1];return typeof e=="object"&&e.constructor===Object?(o.splice(o.length-1,1),e):{}}function _r(...o){return"("+(oy(o).capture?"":"?:")+o.map(n=>Kn(n)).join("|")+")"}function Dd(o){return new RegExp(o.toString()+"|").exec("").length-1}function ny(o,e){const t=o&&o.exec(e);return t&&t.index===0}const ay=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function Dr(o,{joinWith:e}){let t=0;return o.map(n=>{t+=1;const a=t;let s=Kn(n),i="";for(;s.length>0;){const r=ay.exec(s);if(!r){i+=s;break}i+=s.substring(0,r.index),s=s.substring(r.index+r[0].length),r[0][0]==="\\"&&r[1]?i+="\\"+String(Number(r[1])+a):(i+=r[0],r[0]==="("&&t++)}return i}).map(n=>`(${n})`).join(e)}const sy=/\b\B/,wd="[a-zA-Z]\\w*",wr="[a-zA-Z_]\\w*",Id="\\b\\d+(\\.\\d+)?",Ed="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",Cd="\\b(0b[01]+)",iy="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",ry=(o={})=>{const e=/^#![ ]*\//;return o.binary&&(o.begin=Ao(e,/.*\b/,o.binary,/\b.*/)),lo({scope:"meta",begin:e,end:/$/,relevance:0,"on:begin":(t,n)=>{t.index!==0&&n.ignoreMatch()}},o)},Gn={begin:"\\\\[\\s\\S]",relevance:0},ly={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[Gn]},py={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[Gn]},cy={begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},Za=function(o,e,t={}){const n=lo({scope:"comment",begin:o,end:e,contains:[]},t);n.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});const a=_r("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/);return n.contains.push({begin:Ao(/[ ]+/,"(",a,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),n},my=Za("//","$"),dy=Za("/\\*","\\*/"),uy=Za("#","$"),gy={scope:"number",begin:Id,relevance:0},fy={scope:"number",begin:Ed,relevance:0},hy={scope:"number",begin:Cd,relevance:0},by={scope:"regexp",begin:/\/(?=[^/\n]*\/)/,end:/\/[gimuy]*/,contains:[Gn,{begin:/\[/,end:/\]/,relevance:0,contains:[Gn]}]},jy={scope:"title",begin:wd,relevance:0},vy={scope:"title",begin:wr,relevance:0},ky={begin:"\\.\\s*"+wr,relevance:0};var Qa=Object.freeze({__proto__:null,APOS_STRING_MODE:ly,BACKSLASH_ESCAPE:Gn,BINARY_NUMBER_MODE:hy,BINARY_NUMBER_RE:Cd,COMMENT:Za,C_BLOCK_COMMENT_MODE:dy,C_LINE_COMMENT_MODE:my,C_NUMBER_MODE:fy,C_NUMBER_RE:Ed,END_SAME_AS_BEGIN:function(o){return Object.assign(o,{"on:begin":(e,t)=>{t.data._beginMatch=e[1]},"on:end":(e,t)=>{t.data._beginMatch!==e[1]&&t.ignoreMatch()}})},HASH_COMMENT_MODE:uy,IDENT_RE:wd,MATCH_NOTHING_RE:sy,METHOD_GUARD:ky,NUMBER_MODE:gy,NUMBER_RE:Id,PHRASAL_WORDS_MODE:cy,QUOTE_STRING_MODE:py,REGEXP_MODE:by,RE_STARTERS_RE:iy,SHEBANG:ry,TITLE_MODE:jy,UNDERSCORE_IDENT_RE:wr,UNDERSCORE_TITLE_MODE:vy});function yy(o,e){o.input[o.index-1]==="."&&e.ignoreMatch()}function _y(o,e){o.className!==void 0&&(o.scope=o.className,delete o.className)}function Dy(o,e){e&&o.beginKeywords&&(o.begin="\\b("+o.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",o.__beforeBegin=yy,o.keywords=o.keywords||o.beginKeywords,delete o.beginKeywords,o.relevance===void 0&&(o.relevance=0))}function wy(o,e){Array.isArray(o.illegal)&&(o.illegal=_r(...o.illegal))}function Iy(o,e){if(o.match){if(o.begin||o.end)throw new Error("begin & end are not supported with match");o.begin=o.match,delete o.match}}function Ey(o,e){o.relevance===void 0&&(o.relevance=1)}const Cy=(o,e)=>{if(!o.beforeMatch)return;if(o.starts)throw new Error("beforeMatch cannot be used with starts");const t=Object.assign({},o);Object.keys(o).forEach(n=>{delete o[n]}),o.keywords=t.keywords,o.begin=Ao(t.beforeMatch,_d(t.begin)),o.starts={relevance:0,contains:[Object.assign(t,{endsParent:!0})]},o.relevance=0,delete t.beforeMatch},xy=["of","and","for","in","not","or","if","then","parent","list","value"],Sy="keyword";function xd(o,e,t=Sy){const n=Object.create(null);return typeof o=="string"?a(t,o.split(" ")):Array.isArray(o)?a(t,o):Object.keys(o).forEach(function(s){Object.assign(n,xd(o[s],e,s))}),n;function a(s,i){e&&(i=i.map(r=>r.toLowerCase())),i.forEach(function(r){const l=r.split("|");n[l[0]]=[s,My(l[0],l[1])]})}}function My(o,e){return e?Number(e):Fy(o)?0:1}function Fy(o){return xy.includes(o.toLowerCase())}const Sd={},To=o=>{console.error(o)},Md=(o,...e)=>{console.log(`WARN: ${o}`,...e)},ln=(o,e)=>{Sd[`${o}/${e}`]||(console.log(`Deprecated as of ${o}. ${e}`),Sd[`${o}/${e}`]=!0)},es=new Error;function Fd(o,e,{key:t}){let n=0;const a=o[t],s={},i={};for(let r=1;r<=e.length;r++)i[r+n]=a[r],s[r+n]=!0,n+=Dd(e[r-1]);o[t]=i,o[t]._emit=s,o[t]._multi=!0}function Oy(o){if(Array.isArray(o.begin)){if(o.skip||o.excludeBegin||o.returnBegin)throw To("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),es;if(typeof o.beginScope!="object"||o.beginScope===null)throw To("beginScope must be object"),es;Fd(o,o.begin,{key:"beginScope"}),o.begin=Dr(o.begin,{joinWith:""})}}function Ay(o){if(Array.isArray(o.end)){if(o.skip||o.excludeEnd||o.returnEnd)throw To("skip, excludeEnd, returnEnd not compatible with endScope: {}"),es;if(typeof o.endScope!="object"||o.endScope===null)throw To("endScope must be object"),es;Fd(o,o.end,{key:"endScope"}),o.end=Dr(o.end,{joinWith:""})}}function Ty(o){o.scope&&typeof o.scope=="object"&&o.scope!==null&&(o.beginScope=o.scope,delete o.scope)}function Ny(o){Ty(o),typeof o.beginScope=="string"&&(o.beginScope={_wrap:o.beginScope}),typeof o.endScope=="string"&&(o.endScope={_wrap:o.endScope}),Oy(o),Ay(o)}function By(o){function e(i,r){return new RegExp(Kn(i),"m"+(o.case_insensitive?"i":"")+(o.unicodeRegex?"u":"")+(r?"g":""))}class t{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(r,l){l.position=this.position++,this.matchIndexes[this.matchAt]=l,this.regexes.push([l,r]),this.matchAt+=Dd(r)+1}compile(){this.regexes.length===0&&(this.exec=()=>null);const r=this.regexes.map(l=>l[1]);this.matcherRe=e(Dr(r,{joinWith:"|"}),!0),this.lastIndex=0}exec(r){this.matcherRe.lastIndex=this.lastIndex;const l=this.matcherRe.exec(r);if(!l)return null;const p=l.findIndex((m,d)=>d>0&&m!==void 0),c=this.matchIndexes[p];return l.splice(0,p),Object.assign(l,c)}}class n{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(r){if(this.multiRegexes[r])return this.multiRegexes[r];const l=new t;return this.rules.slice(r).forEach(([p,c])=>l.addRule(p,c)),l.compile(),this.multiRegexes[r]=l,l}resumingScanAtSamePosition(){return this.regexIndex!==0}considerAll(){this.regexIndex=0}addRule(r,l){this.rules.push([r,l]),l.type==="begin"&&this.count++}exec(r){const l=this.getMatcher(this.regexIndex);l.lastIndex=this.lastIndex;let p=l.exec(r);if(this.resumingScanAtSamePosition()&&!(p&&p.index===this.lastIndex)){const c=this.getMatcher(0);c.lastIndex=this.lastIndex+1,p=c.exec(r)}return p&&(this.regexIndex+=p.position+1,this.regexIndex===this.count&&this.considerAll()),p}}function a(i){const r=new n;return i.contains.forEach(l=>r.addRule(l.begin,{rule:l,type:"begin"})),i.terminatorEnd&&r.addRule(i.terminatorEnd,{type:"end"}),i.illegal&&r.addRule(i.illegal,{type:"illegal"}),r}function s(i,r){const l=i;if(i.isCompiled)return l;[_y,Iy,Ny,Cy].forEach(c=>c(i,r)),o.compilerExtensions.forEach(c=>c(i,r)),i.__beforeBegin=null,[Dy,wy,Ey].forEach(c=>c(i,r)),i.isCompiled=!0;let p=null;return typeof i.keywords=="object"&&i.keywords.$pattern&&(i.keywords=Object.assign({},i.keywords),p=i.keywords.$pattern,delete i.keywords.$pattern),p=p||/\w+/,i.keywords&&(i.keywords=xd(i.keywords,o.case_insensitive)),l.keywordPatternRe=e(p,!0),r&&(i.begin||(i.begin=/\B|\b/),l.beginRe=e(l.begin),!i.end&&!i.endsWithParent&&(i.end=/\B|\b/),i.end&&(l.endRe=e(l.end)),l.terminatorEnd=Kn(l.end)||"",i.endsWithParent&&r.terminatorEnd&&(l.terminatorEnd+=(i.end?"|":"")+r.terminatorEnd)),i.illegal&&(l.illegalRe=e(i.illegal)),i.contains||(i.contains=[]),i.contains=[].concat(...i.contains.map(function(c){return Ry(c==="self"?i:c)})),i.contains.forEach(function(c){s(c,l)}),i.starts&&s(i.starts,r),l.matcher=a(l),l}if(o.compilerExtensions||(o.compilerExtensions=[]),o.contains&&o.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return o.classNameAliases=lo(o.classNameAliases||{}),s(o)}function Od(o){return o?o.endsWithParent||Od(o.starts):!1}function Ry(o){return o.variants&&!o.cachedVariants&&(o.cachedVariants=o.variants.map(function(e){return lo(o,{variants:null},e)})),o.cachedVariants?o.cachedVariants:Od(o)?lo(o,{starts:o.starts?lo(o.starts):null}):Object.isFrozen(o)?lo(o):o}var Ly="11.10.0";class Py extends Error{constructor(e,t){super(e),this.name="HTMLInjectionError",this.html=t}}const Ir=vd,Ad=lo,Td=Symbol("nomatch"),zy=7,Nd=function(o){const e=Object.create(null),t=Object.create(null),n=[];let a=!0;const s="Could not find the language '{}', did you forget to load/include a language module?",i={disableAutodetect:!0,name:"Plain text",contains:[]};let r={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:Qk};function l(v){return r.noHighlightRe.test(v)}function p(v){let _=v.className+" ";_+=v.parentNode?v.parentNode.className:"";const F=r.languageDetectRe.exec(_);if(F){const B=C(F[1]);return B||(Md(s.replace("{}",F[1])),Md("Falling back to no-highlight mode for this block.",v)),B?F[1]:"no-highlight"}return _.split(/\s+/).find(B=>l(B)||C(B))}function c(v,_,F){let B="",K="";typeof _=="object"?(B=v,F=_.ignoreIllegals,K=_.language):(ln("10.7.0","highlight(lang, code, ...args) has been deprecated."),ln("10.7.0",`Please use highlight(code, options) instead.
|
|
115
|
-
https://github.com/highlightjs/highlight.js/issues/2277`),K=v,B=_),F===void 0&&(F=!0);const oe={code:B,language:K};L("before:highlight",oe);const de=oe.result?oe.result:m(oe.language,oe.code,F);return de.code=oe.code,L("after:highlight",de),de}function m(v,_,F,B){const K=Object.create(null);function oe(y,E){return y.keywords[E]}function de(){if(!M.keywords){Y.addText(V);return}let y=0;M.keywordPatternRe.lastIndex=0;let E=M.keywordPatternRe.exec(V),A="";for(;E;){A+=V.substring(y,E.index);const z=me.case_insensitive?E[0].toLowerCase():E[0],se=oe(M,z);if(se){const[ve,ea]=se;if(Y.addText(A),A="",K[z]=(K[z]||0)+1,K[z]<=zy&&(Oe+=ea),ve.startsWith("_"))A+=E[0];else{const w=me.classNameAliases[ve]||ve;re(E[0],w)}}else A+=E[0];y=M.keywordPatternRe.lastIndex,E=M.keywordPatternRe.exec(V)}A+=V.substring(y),Y.addText(A)}function De(){if(V==="")return;let y=null;if(typeof M.subLanguage=="string"){if(!e[M.subLanguage]){Y.addText(V);return}y=m(M.subLanguage,V,!0,He[M.subLanguage]),He[M.subLanguage]=y._top}else y=u(V,M.subLanguage.length?M.subLanguage:null);M.relevance>0&&(Oe+=y.relevance),Y.__addSublanguage(y._emitter,y.language)}function te(){M.subLanguage!=null?De():de(),V=""}function re(y,E){y!==""&&(Y.startScope(E),Y.addText(y),Y.endScope())}function rt(y,E){let A=1;const z=E.length-1;for(;A<=z;){if(!y._emit[A]){A++;continue}const se=me.classNameAliases[y[A]]||y[A],ve=E[A];se?re(ve,se):(V=ve,de(),V=""),A++}}function $e(y,E){return y.scope&&typeof y.scope=="string"&&Y.openNode(me.classNameAliases[y.scope]||y.scope),y.beginScope&&(y.beginScope._wrap?(re(V,me.classNameAliases[y.beginScope._wrap]||y.beginScope._wrap),V=""):y.beginScope._multi&&(rt(y.beginScope,E),V="")),M=Object.create(y,{parent:{value:M}}),M}function lt(y,E,A){let z=ny(y.endRe,A);if(z){if(y["on:end"]){const se=new jd(y);y["on:end"](E,se),se.isMatchIgnored&&(z=!1)}if(z){for(;y.endsParent&&y.parent;)y=y.parent;return y}}if(y.endsWithParent)return lt(y.parent,E,A)}function pt(y){return M.matcher.regexIndex===0?(V+=y[0],1):(dt=!0,0)}function Mt(y){const E=y[0],A=y.rule,z=new jd(A),se=[A.__beforeBegin,A["on:begin"]];for(const ve of se)if(ve&&(ve(y,z),z.isMatchIgnored))return pt(E);return A.skip?V+=E:(A.excludeBegin&&(V+=E),te(),!A.returnBegin&&!A.excludeBegin&&(V=E)),$e(A,y),A.returnBegin?0:E.length}function uo(y){const E=y[0],A=_.substring(y.index),z=lt(M,y,A);if(!z)return Td;const se=M;M.endScope&&M.endScope._wrap?(te(),re(E,M.endScope._wrap)):M.endScope&&M.endScope._multi?(te(),rt(M.endScope,y)):se.skip?V+=E:(se.returnEnd||se.excludeEnd||(V+=E),te(),se.excludeEnd&&(V=E));do M.scope&&Y.closeNode(),!M.skip&&!M.subLanguage&&(Oe+=M.relevance),M=M.parent;while(M!==z.parent);return z.starts&&$e(z.starts,y),se.returnEnd?0:E.length}function Ht(){const y=[];for(let E=M;E!==me;E=E.parent)E.scope&&y.unshift(E.scope);y.forEach(E=>Y.openNode(E))}let Ge={};function Ft(y,E){const A=E&&E[0];if(V+=y,A==null)return te(),0;if(Ge.type==="begin"&&E.type==="end"&&Ge.index===E.index&&A===""){if(V+=_.slice(E.index,E.index+1),!a){const z=new Error(`0 width match regex (${v})`);throw z.languageName=v,z.badRule=Ge.rule,z}return 1}if(Ge=E,E.type==="begin")return Mt(E);if(E.type==="illegal"&&!F){const z=new Error('Illegal lexeme "'+A+'" for mode "'+(M.scope||"<unnamed>")+'"');throw z.mode=M,z}else if(E.type==="end"){const z=uo(E);if(z!==Td)return z}if(E.type==="illegal"&&A==="")return 1;if(mt>1e5&&mt>E.index*3)throw new Error("potential infinite loop, way more iterations than matches");return V+=A,A.length}const me=C(v);if(!me)throw To(s.replace("{}",v)),new Error('Unknown language: "'+v+'"');const Vt=By(me);let ct="",M=B||Vt;const He={},Y=new r.__emitter(r);Ht();let V="",Oe=0,je=0,mt=0,dt=!1;try{if(me.__emitTokens)me.__emitTokens(_,Y);else{for(M.matcher.considerAll();;){mt++,dt?dt=!1:M.matcher.considerAll(),M.matcher.lastIndex=je;const y=M.matcher.exec(_);if(!y)break;const E=_.substring(je,y.index),A=Ft(E,y);je=y.index+A}Ft(_.substring(je))}return Y.finalize(),ct=Y.toHTML(),{language:v,value:ct,relevance:Oe,illegal:!1,_emitter:Y,_top:M}}catch(y){if(y.message&&y.message.includes("Illegal"))return{language:v,value:Ir(_),illegal:!0,relevance:0,_illegalBy:{message:y.message,index:je,context:_.slice(je-100,je+100),mode:y.mode,resultSoFar:ct},_emitter:Y};if(a)return{language:v,value:Ir(_),illegal:!1,relevance:0,errorRaised:y,_emitter:Y,_top:M};throw y}}function d(v){const _={value:Ir(v),illegal:!1,relevance:0,_top:i,_emitter:new r.__emitter(r)};return _._emitter.addText(v),_}function u(v,_){_=_||r.languages||Object.keys(e);const F=d(v),B=_.filter(C).filter(X).map(te=>m(te,v,!1));B.unshift(F);const K=B.sort((te,re)=>{if(te.relevance!==re.relevance)return re.relevance-te.relevance;if(te.language&&re.language){if(C(te.language).supersetOf===re.language)return 1;if(C(re.language).supersetOf===te.language)return-1}return 0}),[oe,de]=K,De=oe;return De.secondBest=de,De}function g(v,_,F){const B=_&&t[_]||F;v.classList.add("hljs"),v.classList.add(`language-${B}`)}function h(v){let _=null;const F=p(v);if(l(F))return;if(L("before:highlightElement",{el:v,language:F}),v.dataset.highlighted){console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",v);return}if(v.children.length>0&&(r.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."),console.warn("https://github.com/highlightjs/highlight.js/wiki/security"),console.warn("The element with unescaped HTML:"),console.warn(v)),r.throwUnescapedHTML))throw new Py("One of your code blocks includes unescaped HTML.",v.innerHTML);_=v;const B=_.textContent,K=F?c(B,{language:F,ignoreIllegals:!0}):u(B);v.innerHTML=K.value,v.dataset.highlighted="yes",g(v,F,K.language),v.result={language:K.language,re:K.relevance,relevance:K.relevance},K.secondBest&&(v.secondBest={language:K.secondBest.language,relevance:K.secondBest.relevance}),L("after:highlightElement",{el:v,result:K,text:B})}function b(v){r=Ad(r,v)}const k=()=>{j(),ln("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function I(){j(),ln("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let S=!1;function j(){if(document.readyState==="loading"){S=!0;return}document.querySelectorAll(r.cssSelector).forEach(h)}function T(){S&&j()}typeof window<"u"&&window.addEventListener&&window.addEventListener("DOMContentLoaded",T,!1);function D(v,_){let F=null;try{F=_(o)}catch(B){if(To("Language definition for '{}' could not be registered.".replace("{}",v)),a)To(B);else throw B;F=i}F.name||(F.name=v),e[v]=F,F.rawDefinition=_.bind(null,o),F.aliases&&q(F.aliases,{languageName:v})}function P(v){delete e[v];for(const _ of Object.keys(t))t[_]===v&&delete t[_]}function U(){return Object.keys(e)}function C(v){return v=(v||"").toLowerCase(),e[v]||e[t[v]]}function q(v,{languageName:_}){typeof v=="string"&&(v=[v]),v.forEach(F=>{t[F.toLowerCase()]=_})}function X(v){const _=C(v);return _&&!_.disableAutodetect}function ae(v){v["before:highlightBlock"]&&!v["before:highlightElement"]&&(v["before:highlightElement"]=_=>{v["before:highlightBlock"](Object.assign({block:_.el},_))}),v["after:highlightBlock"]&&!v["after:highlightElement"]&&(v["after:highlightElement"]=_=>{v["after:highlightBlock"](Object.assign({block:_.el},_))})}function ne(v){ae(v),n.push(v)}function ce(v){const _=n.indexOf(v);_!==-1&&n.splice(_,1)}function L(v,_){const F=v;n.forEach(function(B){B[F]&&B[F](_)})}function H(v){return ln("10.7.0","highlightBlock will be removed entirely in v12.0"),ln("10.7.0","Please use highlightElement now."),h(v)}Object.assign(o,{highlight:c,highlightAuto:u,highlightAll:j,highlightElement:h,highlightBlock:H,configure:b,initHighlighting:k,initHighlightingOnLoad:I,registerLanguage:D,unregisterLanguage:P,listLanguages:U,getLanguage:C,registerAliases:q,autoDetection:X,inherit:Ad,addPlugin:ne,removePlugin:ce}),o.debugMode=function(){a=!1},o.safeMode=function(){a=!0},o.versionString=Ly,o.regex={concat:Ao,lookahead:_d,either:_r,optional:ty,anyNumberOfTimes:ey};for(const v in Qa)typeof Qa[v]=="object"&&bd(Qa[v]);return Object.assign(o,Qa),o},pn=Nd({});pn.newInstance=()=>Nd({});var $y=pn;pn.HighlightJS=pn,pn.default=pn;const Hy=Jk($y),Bd={},Vy="hljs-";function qy(o){const e=Hy.newInstance();return{highlight:t,highlightAuto:n,listLanguages:a,register:s,registerAlias:i,registered:r};function t(l,p,c){const m=c||Bd,d=typeof m.prefix=="string"?m.prefix:Vy;if(!e.getLanguage(l))throw new Error("Unknown language: `"+l+"` is not registered");e.configure({__emitter:Wy,classPrefix:d});const u=e.highlight(p,{ignoreIllegals:!0,language:l});if(u.errorRaised)throw new Error("Could not highlight with `Highlight.js`",{cause:u.errorRaised});const g=u._emitter.root,h=g.data;return h.language=u.language,h.relevance=u.relevance,g}function n(l,p){const m=(p||Bd).subset||a();let d=-1,u=0,g;for(;++d<m.length;){const h=m[d];if(!e.getLanguage(h))continue;const b=t(h,l,p);b.data&&b.data.relevance!==void 0&&b.data.relevance>u&&(u=b.data.relevance,g=b)}return g||{type:"root",children:[],data:{language:void 0,relevance:u}}}function a(){return e.listLanguages()}function s(l,p){if(typeof l=="string")e.registerLanguage(l,p);else{let c;for(c in l)Object.hasOwn(l,c)&&e.registerLanguage(c,l[c])}}function i(l,p){if(typeof l=="string")e.registerAliases(typeof p=="string"?p:[...p],{languageName:l});else{let c;for(c in l)if(Object.hasOwn(l,c)){const m=l[c];e.registerAliases(typeof m=="string"?m:[...m],{languageName:c})}}}function r(l){return!!e.getLanguage(l)}}class Wy{constructor(e){this.options=e,this.root={type:"root",children:[],data:{language:void 0,relevance:0}},this.stack=[this.root]}addText(e){if(e==="")return;const t=this.stack[this.stack.length-1],n=t.children[t.children.length-1];n&&n.type==="text"?n.value+=e:t.children.push({type:"text",value:e})}startScope(e){this.openNode(String(e))}endScope(){this.closeNode()}__addSublanguage(e,t){const n=this.stack[this.stack.length-1],a=e.root.children;t?n.children.push({type:"element",tagName:"span",properties:{className:[t]},children:a}):n.children.push(...a)}openNode(e){const t=this,n=e.split(".").map(function(i,r){return r?i+"_".repeat(r):t.options.classPrefix+i}),a=this.stack[this.stack.length-1],s={type:"element",tagName:"span",properties:{className:n},children:[]};a.children.push(s),this.stack.push(s)}closeNode(){this.stack.pop()}finalize(){}toHTML(){return""}}const Uy=qy(),Ky=Gk.extend({addNodeView(){return({node:o,getPos:e,editor:t})=>{const n=document.createElement("div"),a=document.createElement("pre"),s=document.createElement("code"),i=document.createElement("select");i.setAttribute("class","code-select"),n.setAttribute("class","code-box");const r=["plaintext","java","javascript","html","shell"];return o.attrs.language&&r.lastIndexOf(o.attrs.language)<0&&r.push(o.attrs.language),r.forEach(l=>{const p=document.createElement("option");p.value=l,p.textContent=l,o.attrs.language===l&&(p.selected=!0),i.appendChild(p)}),i.addEventListener("change",l=>{const{value:p}=l.target;t.commands.updateAttributes("codeBlock",{language:p})}),a.appendChild(s),n.appendChild(i),n.appendChild(a),{dom:n,contentDOM:s}}}}).configure({lowlight:Uy}),Gy="aaa1rp3bb0ott3vie4c1le2ogado5udhabi7c0ademy5centure6ountant0s9o1tor4d0s1ult4e0g1ro2tna4f0l1rica5g0akhan5ency5i0g1rbus3force5tel5kdn3l0ibaba4pay4lfinanz6state5y2sace3tom5m0azon4ericanexpress7family11x2fam3ica3sterdam8nalytics7droid5quan4z2o0l2partments8p0le4q0uarelle8r0ab1mco4chi3my2pa2t0e3s0da2ia2sociates9t0hleta5torney7u0ction5di0ble3o3spost5thor3o0s4vianca6w0s2x0a2z0ure5ba0by2idu3namex3narepublic11d1k2r0celona5laycard4s5efoot5gains6seball5ketball8uhaus5yern5b0c1t1va3cg1n2d1e0ats2uty4er2ntley5rlin4st0buy5t2f1g1h0arti5i0ble3d1ke2ng0o3o1z2j1lack0friday9ockbuster8g1omberg7ue3m0s1w2n0pparibas9o0ats3ehringer8fa2m1nd2o0k0ing5sch2tik2on4t1utique6x2r0adesco6idgestone9oadway5ker3ther5ussels7s1t1uild0ers6siness6y1zz3v1w1y1z0h3ca0b1fe2l0l1vinklein9m0era3p2non3petown5ital0one8r0avan4ds2e0er0s4s2sa1e1h1ino4t0ering5holic7ba1n1re3c1d1enter4o1rn3f0a1d2g1h0anel2nel4rity4se2t2eap3intai5ristmas6ome4urch5i0priani6rcle4sco3tadel4i0c2y3k1l0aims4eaning6ick2nic1que6othing5ud3ub0med6m1n1o0ach3des3ffee4llege4ogne5m0cast4mbank4unity6pany2re3uter5sec4ndos3struction8ulting7tact3ractors9oking4l1p2rsica5untry4pon0s4rses6pa2r0edit0card4union9icket5own3s1uise0s6u0isinella9v1w1x1y0mru3ou3z2dabur3d1nce3ta1e1ing3sun4y2clk3ds2e0al0er2s3gree4livery5l1oitte5ta3mocrat6ntal2ist5si0gn4v2hl2iamonds6et2gital5rect0ory7scount3ver5h2y2j1k1m1np2o0cs1tor4g1mains5t1wnload7rive4tv2ubai3nlop4pont4rban5vag2r2z2earth3t2c0o2deka3u0cation8e1g1mail3erck5nergy4gineer0ing9terprises10pson4quipment8r0icsson6ni3s0q1tate5t1u0rovision8s2vents5xchange6pert3osed4ress5traspace10fage2il1rwinds6th3mily4n0s2rm0ers5shion4t3edex3edback6rrari3ero6i0delity5o2lm2nal1nce1ial7re0stone6mdale6sh0ing5t0ness6j1k1lickr3ghts4r2orist4wers5y2m1o0o0d1tball6rd1ex2sale4um3undation8x2r0ee1senius7l1ogans4ntier7tr2ujitsu5n0d2rniture7tbol5yi3ga0l0lery3o1up4me0s3p1rden4y2b0iz3d0n2e0a1nt0ing5orge5f1g0ee3h1i0ft0s3ves2ing5l0ass3e1obal2o4m0ail3bh2o1x2n1odaddy5ld0point6f2o0dyear5g0le4p1t1v2p1q1r0ainger5phics5tis4een3ipe3ocery4up4s1t1u0ardian6cci3ge2ide2tars5ru3w1y2hair2mburg5ngout5us3bo2dfc0bank7ealth0care8lp1sinki6re1mes5iphop4samitsu7tachi5v2k0t2m1n1ockey4ldings5iday5medepot5goods5s0ense7nda3rse3spital5t0ing5t0els3mail5use3w2r1sbc3t1u0ghes5yatt3undai7ibm2cbc2e1u2d1e0ee3fm2kano4l1m0amat4db2mo0bilien9n0c1dustries8finiti5o2g1k1stitute6urance4e4t0ernational10uit4vestments10o1piranga7q1r0ish4s0maili5t0anbul7t0au2v3jaguar4va3cb2e0ep2tzt3welry6io2ll2m0p2nj2o0bs1urg4t1y2p0morgan6rs3uegos4niper7kaufen5ddi3e0rryhotels6logistics9properties14fh2g1h1i0a1ds2m1ndle4tchen5wi3m1n1oeln3matsu5sher5p0mg2n2r0d1ed3uokgroup8w1y0oto4z2la0caixa5mborghini8er3ncaster6d0rover6xess5salle5t0ino3robe5w0yer5b1c1ds2ease3clerc5frak4gal2o2xus4gbt3i0dl2fe0insurance9style7ghting6ke2lly3mited4o2ncoln4k2psy3ve1ing5k1lc1p2oan0s3cker3us3l1ndon4tte1o3ve3pl0financial11r1s1t0d0a3u0ndbeck6xe1ury5v1y2ma0drid4if1son4keup4n0agement7go3p1rket0ing3s4riott5shalls7ttel5ba2c0kinsey7d1e0d0ia3et2lbourne7me1orial6n0u2rckmsd7g1h1iami3crosoft7l1ni1t2t0subishi9k1l0b1s2m0a2n1o0bi0le4da2e1i1m1nash3ey2ster5rmon3tgage6scow4to0rcycles9v0ie4p1q1r1s0d2t0n1r2u0seum3ic4v1w1x1y1z2na0b1goya4me2tura4vy3ba2c1e0c1t0bank4flix4work5ustar5w0s2xt0direct7us4f0l2g0o2hk2i0co2ke1on3nja3ssan1y5l1o0kia3rton4w0ruz3tv4p1r0a1w2tt2u1yc2z2obi1server7ffice5kinawa6layan0group9dnavy5lo3m0ega4ne1g1l0ine5oo2pen3racle3nge4g0anic5igins6saka4tsuka4t2vh3pa0ge2nasonic7ris2s1tners4s1y3y2ccw3e0t2f0izer5g1h0armacy6d1ilips5one2to0graphy6s4ysio5ics1tet2ures6d1n0g1k2oneer5zza4k1l0ace2y0station9umbing5s3m1n0c2ohl2ker3litie5rn2st3r0america6xi3ess3ime3o0d0uctions8f1gressive8mo2perties3y5tection8u0dential9s1t1ub2w0c2y2qa1pon3uebec3st5racing4dio4e0ad1lestate6tor2y4cipes5d0stone5umbrella9hab3ise0n3t2liance6n0t0als5pair3ort3ublican8st0aurant8view0s5xroth6ich0ardli6oh3l1o1p2o0cks3deo3gers4om3s0vp3u0gby3hr2n2w0e2yukyu6sa0arland6fe0ty4kura4le1on3msclub4ung5ndvik0coromant12ofi4p1rl2s1ve2xo3b0i1s2c0a1b1haeffler7midt4olarships8ol3ule3warz5ience5ot3d1e0arch3t2cure1ity6ek2lect4ner3rvices6ven3w1x0y3fr2g1h0angrila6rp2w2ell3ia1ksha5oes2p0ping5uji3w3i0lk2na1gles5te3j1k0i0n2y0pe4l0ing4m0art3ile4n0cf3o0ccer3ial4ftbank4ware6hu2lar2utions7ng1y2y2pa0ce3ort2t3r0l2s1t0ada2ples4r1tebank4farm7c0group6ockholm6rage3e3ream4udio2y3yle4u0cks3pplies3y2ort5rf1gery5zuki5v1watch4iss4x1y0dney4stems6z2tab1ipei4lk2obao4rget4tamotors6r2too4x0i3c0i2d0k2eam2ch0nology8l1masek5nnis4va3f1g1h0d1eater2re6iaa2ckets5enda4ps2res2ol4j0maxx4x2k0maxx5l1m0all4n1o0day3kyo3ols3p1ray3shiba5tal3urs3wn2yota3s3r0ade1ing4ining5vel0ers0insurance16ust3v2t1ube2i1nes3shu4v0s2w1z2ua1bank3s2g1k1nicom3versity8o2ol2ps2s1y1z2va0cations7na1guard7c1e0gas3ntures6risign5mögensberater2ung14sicherung10t2g1i0ajes4deo3g1king4llas4n1p1rgin4sa1ion4va1o3laanderen9n1odka3lvo3te1ing3o2yage5u2wales2mart4ter4ng0gou5tch0es6eather0channel12bcam3er2site5d0ding5ibo2r3f1hoswho6ien2ki2lliamhill9n0dows4e1ners6me2olterskluwer11odside6rk0s2ld3w2s1tc1f3xbox3erox4finity6ihuan4n2xx2yz3yachts4hoo3maxun5ndex5e1odobashi7ga2kohama6u0tube6t1un3za0ppos4ra3ero3ip2m1one3uerich6w2",Jy="ελ1υ2бг1ел3дети4ею2католик6ом3мкд2он1сква6онлайн5рг3рус2ф2сайт3рб3укр3қаз3հայ3ישראל5קום3ابوظبي5رامكو5لاردن4بحرين5جزائر5سعودية6عليان5مغرب5مارات5یران5بارت2زار4يتك3ھارت5تونس4سودان3رية5شبكة4عراق2ب2مان4فلسطين6قطر3كاثوليك6وم3مصر2ليسيا5وريتانيا7قع4همراه5پاکستان7ڀارت4कॉम3नेट3भारत0म्3ोत5संगठन5বাংলা5ভারত2ৰত4ਭਾਰਤ4ભારત4ଭାରତ4இந்தியா6லங்கை6சிங்கப்பூர்11భారత్5ಭಾರತ4ഭാരതം5ලංකා4คอม3ไทย3ລາວ3გე2みんな3アマゾン4クラウド4グーグル4コム2ストア3セール3ファッション6ポイント4世界2中信1国1國1文网3亚马逊3企业2佛山2信息2健康2八卦2公司1益2台湾1灣2商城1店1标2嘉里0大酒店5在线2大拿2天主教3娱乐2家電2广东2微博2慈善2我爱你3手机2招聘2政务1府2新加坡2闻2时尚2書籍2机构2淡马锡3游戏2澳門2点看2移动2组织机构4网址1店1站1络2联通2谷歌2购物2通販2集团2電訊盈科4飞利浦3食品2餐厅2香格里拉3港2닷넷1컴2삼성2한국2",cn=(o,e)=>{for(const t in e)o[t]=e[t];return o},Er="numeric",Cr="ascii",xr="alpha",ts="asciinumeric",ns="alphanumeric",Sr="domain",Rd="emoji",Yy="scheme",Xy="slashscheme",Ld="whitespace";function Zy(o,e){return o in e||(e[o]=[]),e[o]}function No(o,e,t){e[Er]&&(e[ts]=!0,e[ns]=!0),e[Cr]&&(e[ts]=!0,e[xr]=!0),e[ts]&&(e[ns]=!0),e[xr]&&(e[ns]=!0),e[ns]&&(e[Sr]=!0),e[Rd]&&(e[Sr]=!0);for(const n in e){const a=Zy(n,t);a.indexOf(o)<0&&a.push(o)}}function Qy(o,e){const t={};for(const n in e)e[n].indexOf(o)>=0&&(t[n]=!0);return t}function Ke(o){o===void 0&&(o=null),this.j={},this.jr=[],this.jd=null,this.t=o}Ke.groups={},Ke.prototype={accepts(){return!!this.t},go(o){const e=this,t=e.j[o];if(t)return t;for(let n=0;n<e.jr.length;n++){const a=e.jr[n][0],s=e.jr[n][1];if(s&&a.test(o))return s}return e.jd},has(o,e){return e===void 0&&(e=!1),e?o in this.j:!!this.go(o)},ta(o,e,t,n){for(let a=0;a<o.length;a++)this.tt(o[a],e,t,n)},tr(o,e,t,n){n=n||Ke.groups;let a;return e&&e.j?a=e:(a=new Ke(e),t&&n&&No(e,t,n)),this.jr.push([o,a]),a},ts(o,e,t,n){let a=this;const s=o.length;if(!s)return a;for(let i=0;i<s-1;i++)a=a.tt(o[i]);return a.tt(o[s-1],e,t,n)},tt(o,e,t,n){n=n||Ke.groups;const a=this;if(e&&e.j)return a.j[o]=e,e;const s=e;let i,r=a.go(o);if(r?(i=new Ke,cn(i.j,r.j),i.jr.push.apply(i.jr,r.jr),i.jd=r.jd,i.t=r.t):i=new Ke,s){if(n)if(i.t&&typeof i.t=="string"){const l=cn(Qy(i.t,n),t);No(s,l,n)}else t&&No(s,t,n);i.t=s}return a.j[o]=i,i}};const Q=(o,e,t,n,a)=>o.ta(e,t,n,a),st=(o,e,t,n,a)=>o.tr(e,t,n,a),Pd=(o,e,t,n,a)=>o.ts(e,t,n,a),O=(o,e,t,n,a)=>o.tt(e,t,n,a),zt="WORD",Mr="UWORD",Jn="LOCALHOST",Fr="TLD",Or="UTLD",as="SCHEME",mn="SLASH_SCHEME",Ar="NUM",zd="WS",Tr="NL",Yn="OPENBRACE",Xn="CLOSEBRACE",ss="OPENBRACKET",is="CLOSEBRACKET",rs="OPENPAREN",ls="CLOSEPAREN",ps="OPENANGLEBRACKET",cs="CLOSEANGLEBRACKET",ms="FULLWIDTHLEFTPAREN",ds="FULLWIDTHRIGHTPAREN",us="LEFTCORNERBRACKET",gs="RIGHTCORNERBRACKET",fs="LEFTWHITECORNERBRACKET",hs="RIGHTWHITECORNERBRACKET",bs="FULLWIDTHLESSTHAN",js="FULLWIDTHGREATERTHAN",vs="AMPERSAND",ks="APOSTROPHE",ys="ASTERISK",po="AT",_s="BACKSLASH",Ds="BACKTICK",ws="CARET",co="COLON",Nr="COMMA",Is="DOLLAR",Et="DOT",Es="EQUALS",Br="EXCLAMATION",Ct="HYPHEN",Cs="PERCENT",xs="PIPE",Ss="PLUS",Ms="POUND",Fs="QUERY",Rr="QUOTE",Lr="SEMI",xt="SLASH",Zn="TILDE",Os="UNDERSCORE",$d="EMOJI",As="SYM";var Hd=Object.freeze({__proto__:null,WORD:zt,UWORD:Mr,LOCALHOST:Jn,TLD:Fr,UTLD:Or,SCHEME:as,SLASH_SCHEME:mn,NUM:Ar,WS:zd,NL:Tr,OPENBRACE:Yn,CLOSEBRACE:Xn,OPENBRACKET:ss,CLOSEBRACKET:is,OPENPAREN:rs,CLOSEPAREN:ls,OPENANGLEBRACKET:ps,CLOSEANGLEBRACKET:cs,FULLWIDTHLEFTPAREN:ms,FULLWIDTHRIGHTPAREN:ds,LEFTCORNERBRACKET:us,RIGHTCORNERBRACKET:gs,LEFTWHITECORNERBRACKET:fs,RIGHTWHITECORNERBRACKET:hs,FULLWIDTHLESSTHAN:bs,FULLWIDTHGREATERTHAN:js,AMPERSAND:vs,APOSTROPHE:ks,ASTERISK:ys,AT:po,BACKSLASH:_s,BACKTICK:Ds,CARET:ws,COLON:co,COMMA:Nr,DOLLAR:Is,DOT:Et,EQUALS:Es,EXCLAMATION:Br,HYPHEN:Ct,PERCENT:Cs,PIPE:xs,PLUS:Ss,POUND:Ms,QUERY:Fs,QUOTE:Rr,SEMI:Lr,SLASH:xt,TILDE:Zn,UNDERSCORE:Os,EMOJI:$d,SYM:As});const dn=/[a-z]/,Pr=new RegExp("\\p{L}","u"),zr=new RegExp("\\p{Emoji}","u"),$r=/\d/,Vd=/\s/,qd=`
|
|
116
|
-
`,e0="️",t0="";let Ts=null,Ns=null;function o0(o){o===void 0&&(o=[]);const e={};Ke.groups=e;const t=new Ke;Ts==null&&(Ts=Wd(Gy)),Ns==null&&(Ns=Wd(Jy)),O(t,"'",ks),O(t,"{",Yn),O(t,"}",Xn),O(t,"[",ss),O(t,"]",is),O(t,"(",rs),O(t,")",ls),O(t,"<",ps),O(t,">",cs),O(t,"(",ms),O(t,")",ds),O(t,"「",us),O(t,"」",gs),O(t,"『",fs),O(t,"』",hs),O(t,"<",bs),O(t,">",js),O(t,"&",vs),O(t,"*",ys),O(t,"@",po),O(t,"`",Ds),O(t,"^",ws),O(t,":",co),O(t,",",Nr),O(t,"$",Is),O(t,".",Et),O(t,"=",Es),O(t,"!",Br),O(t,"-",Ct),O(t,"%",Cs),O(t,"|",xs),O(t,"+",Ss),O(t,"#",Ms),O(t,"?",Fs),O(t,'"',Rr),O(t,"/",xt),O(t,";",Lr),O(t,"~",Zn),O(t,"_",Os),O(t,"\\",_s);const n=st(t,$r,Ar,{[Er]:!0});st(n,$r,n);const a=st(t,dn,zt,{[Cr]:!0});st(a,dn,a);const s=st(t,Pr,Mr,{[xr]:!0});st(s,dn),st(s,Pr,s);const i=st(t,Vd,zd,{[Ld]:!0});O(t,qd,Tr,{[Ld]:!0}),O(i,qd),st(i,Vd,i);const r=st(t,zr,$d,{[Rd]:!0});st(r,zr,r),O(r,e0,r);const l=O(r,t0);st(l,zr,r);const p=[[dn,a]],c=[[dn,null],[Pr,s]];for(let m=0;m<Ts.length;m++)mo(t,Ts[m],Fr,zt,p);for(let m=0;m<Ns.length;m++)mo(t,Ns[m],Or,Mr,c);No(Fr,{tld:!0,ascii:!0},e),No(Or,{utld:!0,alpha:!0},e),mo(t,"file",as,zt,p),mo(t,"mailto",as,zt,p),mo(t,"http",mn,zt,p),mo(t,"https",mn,zt,p),mo(t,"ftp",mn,zt,p),mo(t,"ftps",mn,zt,p),No(as,{scheme:!0,ascii:!0},e),No(mn,{slashscheme:!0,ascii:!0},e),o=o.sort((m,d)=>m[0]>d[0]?1:-1);for(let m=0;m<o.length;m++){const d=o[m][0],g=o[m][1]?{[Yy]:!0}:{[Xy]:!0};d.indexOf("-")>=0?g[Sr]=!0:dn.test(d)?$r.test(d)?g[ts]=!0:g[Cr]=!0:g[Er]=!0,Pd(t,d,d,g)}return Pd(t,"localhost",Jn,{ascii:!0}),t.jd=new Ke(As),{start:t,tokens:cn({groups:e},Hd)}}function n0(o,e){const t=a0(e.replace(/[A-Z]/g,r=>r.toLowerCase())),n=t.length,a=[];let s=0,i=0;for(;i<n;){let r=o,l=null,p=0,c=null,m=-1,d=-1;for(;i<n&&(l=r.go(t[i]));)r=l,r.accepts()?(m=0,d=0,c=r):m>=0&&(m+=t[i].length,d++),p+=t[i].length,s+=t[i].length,i++;s-=m,i-=d,p-=m,a.push({t:c.t,v:e.slice(s-p,s),s:s-p,e:s})}return a}function a0(o){const e=[],t=o.length;let n=0;for(;n<t;){let a=o.charCodeAt(n),s,i=a<55296||a>56319||n+1===t||(s=o.charCodeAt(n+1))<56320||s>57343?o[n]:o.slice(n,n+2);e.push(i),n+=i.length}return e}function mo(o,e,t,n,a){let s;const i=e.length;for(let r=0;r<i-1;r++){const l=e[r];o.j[l]?s=o.j[l]:(s=new Ke(n),s.jr=a.slice(),o.j[l]=s),o=s}return s=new Ke(t),s.jr=a.slice(),o.j[e[i-1]]=s,s}function Wd(o){const e=[],t=[];let n=0,a="0123456789";for(;n<o.length;){let s=0;for(;a.indexOf(o[n+s])>=0;)s++;if(s>0){e.push(t.join(""));for(let i=parseInt(o.substring(n,n+s),10);i>0;i--)t.pop();n+=s}else t.push(o[n]),n++}return e}const Qn={defaultProtocol:"http",events:null,format:Ud,formatHref:Ud,nl2br:!1,tagName:"a",target:null,rel:null,validate:!0,truncate:1/0,className:null,attributes:null,ignoreTags:[],render:null};function Hr(o,e){e===void 0&&(e=null);let t=cn({},Qn);o&&(t=cn(t,o instanceof Hr?o.o:o));const n=t.ignoreTags,a=[];for(let s=0;s<n.length;s++)a.push(n[s].toUpperCase());this.o=t,e&&(this.defaultRender=e),this.ignoreTags=a}Hr.prototype={o:Qn,ignoreTags:[],defaultRender(o){return o},check(o){return this.get("validate",o.toString(),o)},get(o,e,t){const n=e!=null;let a=this.o[o];return a&&(typeof a=="object"?(a=t.t in a?a[t.t]:Qn[o],typeof a=="function"&&n&&(a=a(e,t))):typeof a=="function"&&n&&(a=a(e,t.t,t)),a)},getObj(o,e,t){let n=this.o[o];return typeof n=="function"&&e!=null&&(n=n(e,t.t,t)),n},render(o){const e=o.render(this);return(this.get("render",null,o)||this.defaultRender)(e,o.t,o)}};function Ud(o){return o}function Kd(o,e){this.t="token",this.v=o,this.tk=e}Kd.prototype={isLink:!1,toString(){return this.v},toHref(o){return this.toString()},toFormattedString(o){const e=this.toString(),t=o.get("truncate",e,this),n=o.get("format",e,this);return t&&n.length>t?n.substring(0,t)+"…":n},toFormattedHref(o){return o.get("formatHref",this.toHref(o.get("defaultProtocol")),this)},startIndex(){return this.tk[0].s},endIndex(){return this.tk[this.tk.length-1].e},toObject(o){return o===void 0&&(o=Qn.defaultProtocol),{type:this.t,value:this.toString(),isLink:this.isLink,href:this.toHref(o),start:this.startIndex(),end:this.endIndex()}},toFormattedObject(o){return{type:this.t,value:this.toFormattedString(o),isLink:this.isLink,href:this.toFormattedHref(o),start:this.startIndex(),end:this.endIndex()}},validate(o){return o.get("validate",this.toString(),this)},render(o){const e=this,t=this.toHref(o.get("defaultProtocol")),n=o.get("formatHref",t,this),a=o.get("tagName",t,e),s=this.toFormattedString(o),i={},r=o.get("className",t,e),l=o.get("target",t,e),p=o.get("rel",t,e),c=o.getObj("attributes",t,e),m=o.getObj("events",t,e);return i.href=n,r&&(i.class=r),l&&(i.target=l),p&&(i.rel=p),c&&cn(i,c),{tagName:a,attributes:i,content:s,eventListeners:m}}};function Bs(o,e){class t extends Kd{constructor(a,s){super(a,s),this.t=o}}for(const n in e)t.prototype[n]=e[n];return t.t=o,t}const Gd=Bs("email",{isLink:!0,toHref(){return"mailto:"+this.toString()}}),Jd=Bs("text"),s0=Bs("nl"),Rs=Bs("url",{isLink:!0,toHref(o){return o===void 0&&(o=Qn.defaultProtocol),this.hasProtocol()?this.v:`${o}://${this.v}`},hasProtocol(){const o=this.tk;return o.length>=2&&o[0].t!==Jn&&o[1].t===co}}),it=o=>new Ke(o);function i0(o){let{groups:e}=o;const t=e.domain.concat([vs,ys,po,_s,Ds,ws,Is,Es,Ct,Ar,Cs,xs,Ss,Ms,xt,As,Zn,Os]),n=[ks,co,Nr,Et,Br,Fs,Rr,Lr,ps,cs,Yn,Xn,is,ss,rs,ls,ms,ds,us,gs,fs,hs,bs,js],a=[vs,ks,ys,_s,Ds,ws,Is,Es,Ct,Yn,Xn,Cs,xs,Ss,Ms,Fs,xt,As,Zn,Os],s=it(),i=O(s,Zn);Q(i,a,i),Q(i,e.domain,i);const r=it(),l=it(),p=it();Q(s,e.domain,r),Q(s,e.scheme,l),Q(s,e.slashscheme,p),Q(r,a,i),Q(r,e.domain,r);const c=O(r,po);O(i,po,c),O(l,po,c),O(p,po,c);const m=O(i,Et);Q(m,a,i),Q(m,e.domain,i);const d=it();Q(c,e.domain,d),Q(d,e.domain,d);const u=O(d,Et);Q(u,e.domain,d);const g=it(Gd);Q(u,e.tld,g),Q(u,e.utld,g),O(c,Jn,g);const h=O(d,Ct);Q(h,e.domain,d),Q(g,e.domain,d),O(g,Et,u),O(g,Ct,h);const b=O(g,co);Q(b,e.numeric,Gd);const k=O(r,Ct),I=O(r,Et);Q(k,e.domain,r),Q(I,a,i),Q(I,e.domain,r);const S=it(Rs);Q(I,e.tld,S),Q(I,e.utld,S),Q(S,e.domain,r),Q(S,a,i),O(S,Et,I),O(S,Ct,k),O(S,po,c);const j=O(S,co),T=it(Rs);Q(j,e.numeric,T);const D=it(Rs),P=it();Q(D,t,D),Q(D,n,P),Q(P,t,D),Q(P,n,P),O(S,xt,D),O(T,xt,D);const U=O(l,co),C=O(p,co),q=O(C,xt),X=O(q,xt);Q(l,e.domain,r),O(l,Et,I),O(l,Ct,k),Q(p,e.domain,r),O(p,Et,I),O(p,Ct,k),Q(U,e.domain,D),O(U,xt,D),Q(X,e.domain,D),Q(X,t,D),O(X,xt,D);const ae=[[Yn,Xn],[ss,is],[rs,ls],[ps,cs],[ms,ds],[us,gs],[fs,hs],[bs,js]];for(let ne=0;ne<ae.length;ne++){const[ce,L]=ae[ne],H=O(D,ce);O(P,ce,H),O(H,L,D);const v=it(Rs);Q(H,t,v);const _=it();Q(H,n),Q(v,t,v),Q(v,n,_),Q(_,t,v),Q(_,n,_),O(v,L,D),O(_,L,D)}return O(s,Jn,S),O(s,Tr,s0),{start:s,tokens:Hd}}function r0(o,e,t){let n=t.length,a=0,s=[],i=[];for(;a<n;){let r=o,l=null,p=null,c=0,m=null,d=-1;for(;a<n&&!(l=r.go(t[a].t));)i.push(t[a++]);for(;a<n&&(p=l||r.go(t[a].t));)l=null,r=p,r.accepts()?(d=0,m=r):d>=0&&d++,a++,c++;if(d<0)a-=c,a<n&&(i.push(t[a]),a++);else{i.length>0&&(s.push(Vr(Jd,e,i)),i=[]),a-=d,c-=d;const u=m.t,g=t.slice(a-c,a);s.push(Vr(u,e,g))}}return i.length>0&&s.push(Vr(Jd,e,i)),s}function Vr(o,e,t){const n=t[0].s,a=t[t.length-1].e,s=e.slice(n,a);return new o(s,t)}const l0=typeof console<"u"&&console&&console.warn||(()=>{}),p0="until manual call of linkify.init(). Register all schemes and plugins before invoking linkify the first time.",ge={scanner:null,parser:null,tokenQueue:[],pluginQueue:[],customSchemes:[],initialized:!1};function c0(){Ke.groups={},ge.scanner=null,ge.parser=null,ge.tokenQueue=[],ge.pluginQueue=[],ge.customSchemes=[],ge.initialized=!1}function Yd(o,e){if(e===void 0&&(e=!1),ge.initialized&&l0(`linkifyjs: already initialized - will not register custom scheme "${o}" ${p0}`),!/^[0-9a-z]+(-[0-9a-z]+)*$/.test(o))throw new Error(`linkifyjs: incorrect scheme format.
|
|
117
|
-
1. Must only contain digits, lowercase ASCII letters or "-"
|
|
118
|
-
2. Cannot start or end with "-"
|
|
119
|
-
3. "-" cannot repeat`);ge.customSchemes.push([o,e])}function m0(){ge.scanner=o0(ge.customSchemes);for(let o=0;o<ge.tokenQueue.length;o++)ge.tokenQueue[o][1]({scanner:ge.scanner});ge.parser=i0(ge.scanner.tokens);for(let o=0;o<ge.pluginQueue.length;o++)ge.pluginQueue[o][1]({scanner:ge.scanner,parser:ge.parser});ge.initialized=!0}function Xd(o){return ge.initialized||m0(),r0(ge.parser.start,o,n0(ge.scanner.start,o))}function Zd(o,e,t){if(e===void 0&&(e=null),t===void 0&&(t=null),e&&typeof e=="object"){if(t)throw Error(`linkifyjs: Invalid link type ${e}; must be a string`);t=e,e=null}const n=new Hr(t),a=Xd(o),s=[];for(let i=0;i<a.length;i++){const r=a[i];r.isLink&&(!e||r.t===e)&&n.check(r)&&s.push(r.toFormattedObject(n))}return s}function d0(o){return o.length===1?o[0].isLink:o.length===3&&o[1].isLink?["()","[]"].includes(o[0].value+o[2].value):!1}function u0(o){return new ue({key:new ye("autolink"),appendTransaction:(e,t,n)=>{const a=e.some(p=>p.docChanged)&&!t.doc.eq(n.doc),s=e.some(p=>p.getMeta("preventAutolink"));if(!a||s)return;const{tr:i}=n,r=Vc(t.doc,[...e]);if(Wc(r).forEach(({newRange:p})=>{const c=qc(n.doc,p,u=>u.isTextblock);let m,d;if(c.length>1?(m=c[0],d=n.doc.textBetween(m.pos,m.pos+m.node.nodeSize,void 0," ")):c.length&&n.doc.textBetween(p.from,p.to," "," ").endsWith(" ")&&(m=c[0],d=n.doc.textBetween(m.pos,p.to,void 0," ")),m&&d){const u=d.split(" ").filter(k=>k!=="");if(u.length<=0)return!1;const g=u[u.length-1],h=m.pos+d.lastIndexOf(g);if(!g)return!1;const b=Xd(g).map(k=>k.toObject(o.defaultProtocol));if(!d0(b))return!1;b.filter(k=>k.isLink).map(k=>({...k,from:h+k.start+1,to:h+k.end+1})).filter(k=>n.schema.marks.code?!n.doc.rangeHasMark(k.from,k.to,n.schema.marks.code):!0).filter(k=>o.validate(k.value)).forEach(k=>{Hi(k.from,k.to,n.doc).some(I=>I.mark.type===o.type)||i.addMark(k.from,k.to,o.type.create({href:k.href}))})}}),!!i.steps.length)return i}})}function g0(o){return new ue({key:new ye("handleClickLink"),props:{handleClick:(e,t,n)=>{var a,s;if(n.button!==0||!e.editable)return!1;let i=n.target;const r=[];for(;i.nodeName!=="DIV";)r.push(i),i=i.parentNode;if(!r.find(d=>d.nodeName==="A"))return!1;const l=$i(e.state,o.type.name),p=n.target,c=(a=p==null?void 0:p.href)!==null&&a!==void 0?a:l.href,m=(s=p==null?void 0:p.target)!==null&&s!==void 0?s:l.target;return p&&c?(window.open(c,m),!0):!1}}})}function f0(o){return new ue({key:new ye("handlePasteLink"),props:{handlePaste:(e,t,n)=>{const{state:a}=e,{selection:s}=a,{empty:i}=s;if(i)return!1;let r="";n.content.forEach(p=>{r+=p.textContent});const l=Zd(r,{defaultProtocol:o.defaultProtocol}).find(p=>p.isLink&&p.value===r);return!r||!l?!1:(o.editor.commands.setMark(o.type,{href:l.href}),!0)}}})}const h0=/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g;function Qd(o,e){const t=["http","https","ftp","ftps","mailto","tel","callto","sms","cid","xmpp"];return e&&e.forEach(n=>{const a=typeof n=="string"?n:n.scheme;a&&t.push(a)}),!o||o.replace(h0,"").match(new RegExp(`^(?:(?:${t.join("|")}):|[^a-z]|[a-z+.-]+(?:[^a-z+.-:]|$))`,"i"))}const b0=yt.create({name:"link",priority:1e3,keepOnSplit:!1,exitable:!0,onCreate(){this.options.protocols.forEach(o=>{if(typeof o=="string"){Yd(o);return}Yd(o.scheme,o.optionalSlashes)})},onDestroy(){c0()},inclusive(){return this.options.autolink},addOptions(){return{openOnClick:!0,linkOnPaste:!0,autolink:!0,protocols:[],defaultProtocol:"http",HTMLAttributes:{target:"_blank",rel:"noopener noreferrer nofollow",class:null},validate:o=>!!o}},addAttributes(){return{href:{default:null,parseHTML(o){return o.getAttribute("href")}},target:{default:this.options.HTMLAttributes.target},rel:{default:this.options.HTMLAttributes.rel},class:{default:this.options.HTMLAttributes.class}}},parseHTML(){return[{tag:"a[href]",getAttrs:o=>{const e=o.getAttribute("href");return!e||!Qd(e,this.options.protocols)?!1:null}}]},renderHTML({HTMLAttributes:o}){return Qd(o.href,this.options.protocols)?["a",_e(this.options.HTMLAttributes,o),0]:["a",_e(this.options.HTMLAttributes,{...o,href:""}),0]},addCommands(){return{setLink:o=>({chain:e})=>e().setMark(this.name,o).setMeta("preventAutolink",!0).run(),toggleLink:o=>({chain:e})=>e().toggleMark(this.name,o,{extendEmptyMarkRange:!0}).setMeta("preventAutolink",!0).run(),unsetLink:()=>({chain:o})=>o().unsetMark(this.name,{extendEmptyMarkRange:!0}).setMeta("preventAutolink",!0).run()}},addPasteRules(){return[Eo({find:o=>{const e=[];if(o){const{validate:t}=this.options,n=Zd(o).filter(a=>a.isLink&&t(a.value));n.length&&n.forEach(a=>e.push({text:a.value,data:{href:a.href},index:a.start}))}return e},type:this.type,getAttributes:o=>{var e;return{href:(e=o.data)===null||e===void 0?void 0:e.href}}})]},addProseMirrorPlugins(){const o=[];return this.options.autolink&&o.push(u0({type:this.type,defaultProtocol:this.options.defaultProtocol,validate:this.options.validate})),this.options.openOnClick===!0&&o.push(g0({type:this.type})),this.options.linkOnPaste&&o.push(f0({editor:this.editor,defaultProtocol:this.options.defaultProtocol,type:this.type})),o}}).extend({inclusive:!1,addOptions(){var o;return{...(o=this.parent)==null?void 0:o.call(this),openOnClick:!1,HTMLAttributes:{class:"link"}}},addProseMirrorPlugins(){var e;const{editor:o}=this;return[...((e=this.parent)==null?void 0:e.call(this))||[],new ue({props:{handleKeyDown:(t,n)=>{const{selection:a}=o.state;return n.key==="Escape"&&a.empty!==!0&&o.commands.focus(a.to,{scrollIntoView:!1}),!1},handleClick(t,n){const{schema:a,doc:s,tr:i}=t.state,r=Aa(s.resolve(n),a.marks.link);if(!r)return;const{from:l,to:p}=r,c=Math.min(l,p),m=Math.max(l,p);if(n<c||n>m)return;const d=$i(t.state,"_blank"),u=event.target,g=s.resolve(c),h=s.resolve(m),b=i.setSelection(new J(g,h));j0(u,d,o),t.dispatch(b)}}})]}});let eu;function j0(o,e,t){const n=document.createElement("div"),a=document.createElement("input");a.setAttribute("class","sus-link-input"),a.setAttribute("placeholder","编辑网址"),a.value=(o==null?void 0:o.href)??e.href,a.addEventListener("blur",s=>{t.commands.updateAttributes("link",{href:a.value})}),n.append(a),eu=Pt("body",{duration:0,getReferenceClientRect:()=>o.getBoundingClientRect(),content:n,arrow:!1,showOnCreate:!0,interactive:!0,trigger:"manual",placement:"bottom-start",theme:"light-border"})[0],eu.show()}const v0=["disabled"],k0={class:"ouo-btn__content"},tu="ouo-btn--",y0=f.defineComponent({__name:"index",props:{disabled:{type:Boolean},equilateral:{type:Boolean},style:{},color:{default:"primary"},shape:{default:"round"},size:{default:"size-auto"},type:{default:"default"}},setup(o){const e=o,t=e.equilateral?tu+"equilateral":"",{size:n,type:a,shape:s}=f.toRefs(e),i=c=>f.computed(()=>tu+c.value),r=i(n),l=i(a),p=i(s);return(c,m)=>(f.openBlock(),f.createElementBlock("button",{class:f.normalizeClass(["ouo-btn",["ouo-color--"+c.color,f.unref(r),f.unref(l),f.unref(p),f.unref(t)]]),disabled:c.disabled,style:f.normalizeStyle(c.style)},[f.createElementVNode("span",k0,[f.renderSlot(c.$slots,"default",{},void 0,!0)])],14,v0))}}),St=(o,e)=>{const t=o.__vccOpts||o;for(const[n,a]of e)t[n]=a;return t},qr=St(y0,[["__scopeId","data-v-538a40cc"]]);qr.install=o=>{o.component(qr.name,qr)};const $t=o=>(f.pushScopeId("data-v-9ee55abf"),o=o(),f.popScopeId(),o),_0={key:0,class:"ouo-loading__container"},D0=$t(()=>f.createElementVNode("div",{class:"ouo-loading--blue-orbit ouo-loading--leo"},null,-1)),w0=$t(()=>f.createElementVNode("div",{class:"ouo-loading--green-orbit ouo-loading--leo"},null,-1)),I0=$t(()=>f.createElementVNode("div",{class:"ouo-loading--red-orbit ouo-loading--leo"},null,-1)),E0=$t(()=>f.createElementVNode("div",{class:"ouo-loading--white-orbit ouo-loading--w1 ouo-loading--leo"},null,-1)),C0=$t(()=>f.createElementVNode("div",{class:"ouo-loading--white-orbit ouo-loading--w2 ouo-loading--leo"},null,-1)),x0=$t(()=>f.createElementVNode("div",{class:"ouo-loading--white-orbit ouo-loading--w3 ouo-loading--leo"},null,-1)),S0=[D0,w0,I0,E0,C0,x0],M0=$t(()=>f.createElementVNode("div",{class:"ouo-loading--wide"},[f.createElementVNode("div",{class:"ouo-loading-l1 ouo-loading-color"}),f.createElementVNode("div",{class:"ouo-loading-l2 ouo-loading-color"}),f.createElementVNode("div",{class:"ouo-loading-e1 ouo-loading-color ouo-loading-animation-effect-light"}),f.createElementVNode("div",{class:"ouo-loading-e2 ouo-loading-color ouo-loading-animation-effect-light-d"}),f.createElementVNode("div",{class:"ouo-loading-e3 ouo-loading-animation-effect-rot"},"X"),f.createElementVNode("div",{class:"ouo-loading-e4 ouo-loading-color ouo-loading-animation-effect-light"}),f.createElementVNode("div",{class:"ouo-loading-e5 ouo-loading-color ouo-loading-animation-effect-light-d"}),f.createElementVNode("div",{class:"ouo-loading-e6 ouo-loading-animation-effect-scale"},"*"),f.createElementVNode("div",{class:"ouo-loading-e7 ouo-loading-color"}),f.createElementVNode("div",{class:"ouo-loading-e8 ouo-loading-color"})],-1)),F0=[M0],O0=$t(()=>f.createElementVNode("div",{class:"ouo-loading__animation-1"},null,-1)),A0=$t(()=>f.createElementVNode("div",{class:"ouo-loading__animation-2"},null,-1)),T0=[O0,A0],N0=f.defineComponent({__name:"index",props:{show_on:{default:"body"},is_show:{type:Boolean},type:{default:"default"}},setup(o){return(e,t)=>(f.openBlock(),f.createBlock(f.Teleport,{to:e.show_on},[e.is_show?(f.openBlock(),f.createElementBlock("div",{key:0,class:f.normalizeClass(["ouo-loading__mask",["ouo-loading--"+e.type]])},[e.type==="star"?(f.openBlock(),f.createElementBlock("div",_0,S0)):e.type==="geometry"?(f.openBlock(),f.createElementBlock("div",{key:1,class:f.normalizeClass(["ouo-loading--"+e.type])},F0,2)):(f.openBlock(),f.createElementBlock("div",{key:2,class:f.normalizeClass([["ouo-loading--"+e.type],"ouo-loading__animation"])},T0,2))],2)):f.createCommentVNode("",!0)],8,["to"]))}}),Wr=St(N0,[["__scopeId","data-v-9ee55abf"]]);Wr.install=o=>{o.component(Wr.name,Wr)};const B0={class:"ouo-checkbox cursor-pointer"},R0={class:"ouo-checkbox__container"},L0=["disabled"],P0=f.createStaticVNode('<svg viewBox="0 0 21 18" data-v-b1fb9711><symbol id="ouo-checkbox-tick-path" viewBox="0 0 21 18" xmlns="http://www.w3.org/2000/svg" data-v-b1fb9711><path d="M5.22003 7.26C5.72003 7.76 7.57 9.7 8.67 11.45C12.2 6.05 15.65 3.5 19.19 1.69" fill="none" stroke-width="2.25" stroke-linecap="round" stroke-linejoin="round" data-v-b1fb9711></path></symbol><defs data-v-b1fb9711><mask id="ouo-checkbox-tick" data-v-b1fb9711><use class="ouo-checkbox-tick ouo-checkbox-mask" href="#ouo-checkbox-tick-path" data-v-b1fb9711></use></mask></defs><use class="ouo-checkbox-tick" href="#ouo-checkbox-tick-path" stroke="currentColor" data-v-b1fb9711></use><path class="ouo-checkbox-tick-in" mask="url(#ouo-checkbox-tick)" d="M18 9C18 10.4464 17.9036 11.8929 17.7589 13.1464C17.5179 15.6054 15.6054 17.5179 13.1625 17.7589C11.8929 17.9036 10.4464 18 9 18C7.55357 18 6.10714 17.9036 4.85357 17.7589C2.39464 17.5179 0.498214 15.6054 0.241071 13.1464C0.0964286 11.8929 0 10.4464 0 9C0 7.55357 0.0964286 6.10714 0.241071 4.8375C0.498214 2.39464 2.39464 0.482143 4.85357 0.241071C6.10714 0.0964286 7.55357 0 9 0C10.4464 0 11.8929 0.0964286 13.1625 0.241071C15.6054 0.482143 17.5179 2.39464 17.7589 4.8375C17.9036 6.10714 18 7.55357 18 9Z" data-v-b1fb9711></path></svg><svg class="ouo-checkbox-lines" viewBox="0 0 11 11" data-v-b1fb9711><path d="M5.88086 5.89441L9.53504 4.26746" data-v-b1fb9711></path><path d="M5.5274 8.78838L9.45391 9.55161" data-v-b1fb9711></path><path d="M3.49371 4.22065L5.55387 0.79198" data-v-b1fb9711></path></svg>',2),z0={class:"ouo-checkbox-content"},$0=f.defineComponent({__name:"index",props:{disabled:{type:Boolean,default:!1},checked:{type:Boolean,default:!1}},setup(o){const e=f.ref(o.checked);return(t,n)=>(f.openBlock(),f.createElementBlock("label",B0,[f.createElementVNode("span",R0,[f.withDirectives(f.createElementVNode("input",{class:"ouo-checkbox-input",type:"checkbox","onUpdate:modelValue":n[0]||(n[0]=a=>e.value=a),onChange:n[1]||(n[1]=a=>{t.$emit("update:modelValue",e.value),t.$emit("change")}),disabled:t.disabled},null,40,L0),[[f.vModelCheckbox,e.value]]),P0]),f.createElementVNode("span",z0,[f.renderSlot(t.$slots,"default",{},void 0,!0)])]))}}),Ls=St($0,[["__scopeId","data-v-b1fb9711"]]);Ls.install=o=>{o.component(Ls.name,Ls)};const H0={class:"ouo-tooltip"},V0={class:"ouo-tooltip-text"},q0=f.defineComponent({__name:"index",props:{text:{default:""}},setup(o){return(e,t)=>(f.openBlock(),f.createElementBlock("div",H0,[f.createElementVNode("span",V0,f.toDisplayString(e.text),1),f.renderSlot(e.$slots,"default",{},void 0,!0)]))}}),Ur=St(q0,[["__scopeId","data-v-7798e40f"]]);Ur.install=o=>{o.component(Ur.name,Ur)};const W0=o=>(f.pushScopeId("data-v-3f04c819"),o=o(),f.popScopeId(),o),U0={class:"ouo-switch"},K0={class:"ouo-switch__container"},G0=["disabled"],J0=W0(()=>f.createElementVNode("span",{class:"ouo-switch-slider cursor-pointer"},null,-1)),Y0={class:"ouo-switch-content"},X0=f.defineComponent({__name:"index",props:{disabled:{type:Boolean,default:!1},checked:{type:Boolean,default:!1}},setup(o){const e=f.ref(o.checked);return(t,n)=>(f.openBlock(),f.createElementBlock("label",U0,[f.createElementVNode("span",K0,[f.withDirectives(f.createElementVNode("input",{type:"checkbox","onUpdate:modelValue":n[0]||(n[0]=a=>e.value=a),onChange:n[1]||(n[1]=a=>{t.$emit("update:modelValue",e.value),t.$emit("change")}),disabled:t.disabled},null,40,G0),[[f.vModelCheckbox,e.value]]),J0]),f.createElementVNode("span",Y0,[f.renderSlot(t.$slots,"default",{},void 0,!0)])]))}}),Kr=St(X0,[["__scopeId","data-v-3f04c819"]]);Kr.install=o=>{o.component(Kr.name,Kr)};const Z0={class:"ouo-radio cursor-pointer"},Q0={class:"ouo-radio__container"},e6=["disabled","name","value"],t6={class:"ouo-radio-content"},o6=f.defineComponent({__name:"index",props:{disabled:{type:Boolean,default:!1},checked:{type:Boolean,default:!1},name:{default:"ahzoo"},value:{}},setup(o){const e=f.ref(o.checked);return(t,n)=>(f.openBlock(),f.createElementBlock("label",Z0,[f.createElementVNode("span",Q0,[f.withDirectives(f.createElementVNode("input",{type:"radio","onUpdate:modelValue":n[0]||(n[0]=a=>e.value=a),onChange:n[1]||(n[1]=a=>{t.$emit("update:modelValue",e.value),t.$emit("change")}),disabled:t.disabled,name:t.name,value:t.value},null,40,e6),[[f.vModelRadio,e.value]])]),f.createElementVNode("span",t6,[f.renderSlot(t.$slots,"default",{},void 0,!0)])]))}}),Gr=St(o6,[["__scopeId","data-v-e470964b"]]);Gr.install=o=>{o.component(Gr.name,Gr)};const n6={class:"ouo-todo"},a6=["id","checked","disabled","name","value"],s6=["for"],i6=f.defineComponent({__name:"index",props:{disabled:{type:Boolean,default:!1},checked:{type:Boolean,default:!1},name:{default:"ahzoo"},value:{},id:{default:"ahzoo"}},setup(o){return(e,t)=>(f.openBlock(),f.createElementBlock("div",n6,[f.createElementVNode("input",{type:"checkbox",id:e.id,checked:e.checked,disabled:e.disabled,name:e.name,value:e.value},null,8,a6),f.createElementVNode("label",{class:"cursor-pointer",for:e.id},[f.renderSlot(e.$slots,"default",{},void 0,!0)],8,s6)]))}}),Jr=St(i6,[["__scopeId","data-v-0b3d656e"]]);Jr.install=o=>{o.component(Jr.name,Jr)};const ou=o=>(f.pushScopeId("data-v-edc00193"),o=o(),f.popScopeId(),o),r6=["href","title","target","rel"],l6={key:0,class:"ouo-link--circle",viewBox:"0 0 70 36"},p6=ou(()=>f.createElementVNode("path",{d:"M6.9739 30.8153H63.0244C65.5269 30.8152 75.5358 -3.68471 35.4998 2.81531C-16.1598 11.2025 0.894099 33.9766 26.9922 34.3153C104.062 35.3153 54.5169 -6.68469 23.489 9.31527"},null,-1)),c6=[p6],m6={key:1,stroke:"currentColor",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},d6=ou(()=>f.createElementVNode("path",{d:"M14 5l7 7m0 0l-7 7m7-7H3","stroke-linejoin":"round","stroke-linecap":"round"},null,-1)),u6=[d6],g6="ouo-link--",f6=f.defineComponent({__name:"index",props:{type:{default:"default"},href:{default:"#"},title:{},target:{},ref:{}},setup(o){const e=o,{type:t}=f.toRefs(e),n=(a=>f.computed(()=>g6+a.value))(t);return(a,s)=>(f.openBlock(),f.createElementBlock("a",{class:f.normalizeClass(["ouo-link",[f.unref(n)]]),href:a.href,title:a.title,target:a.ref,rel:a.ref},[f.renderSlot(a.$slots,"default",{},void 0,!0),f.unref(n)==="ouo-link--circle"?(f.openBlock(),f.createElementBlock("svg",l6,c6)):(f.openBlock(),f.createElementBlock("svg",m6,u6))],10,r6))}}),Yr=St(f6,[["__scopeId","data-v-edc00193"]]);Yr.install=o=>{o.component(Yr.name,Yr)};const h6={class:"ouo-progress-bar"},b6={class:"tooltip"},j6=f.defineComponent({__name:"index",props:{progress:{default:0}},setup(o){return(e,t)=>(f.openBlock(),f.createElementBlock("div",h6,[f.createElementVNode("span",{class:"ouo-progress-per",style:f.normalizeStyle({width:e.progress+"%"})},[f.createElementVNode("span",b6,f.toDisplayString(e.progress)+"%",1)],4)]))}}),Xr=St(j6,[["__scopeId","data-v-9ef63707"]]);Xr.install=o=>{o.component(Xr.name,Xr)};const v6={class:"ouo-skeleton"},k6=f.defineComponent({__name:"index",props:{rows:{default:5}},setup(o){const e=o.rows;return(t,n)=>(f.openBlock(),f.createElementBlock("div",v6,[(f.openBlock(!0),f.createElementBlock(f.Fragment,null,f.renderList(f.unref(e),a=>(f.openBlock(),f.createElementBlock("div",{key:a,class:"ouo-skeleton-item ouo-skeleton-animate"}))),128))]))}}),Zr=St(k6,[["__scopeId","data-v-22f74f76"]]);Zr.install=o=>{o.component(Zr.name,Zr)};const nu=o=>(f.pushScopeId("data-v-664e2b61"),o=o(),f.popScopeId(),o),y6={class:"sus-comment relative flex flex-row w-full"},_6={class:"sus-comment-avatar"},D6=["src"],w6={class:"sus-comment__main"},I6={class:"sus-comment__info my-1"},E6={class:"sus-comment__info-input"},C6={class:"sus-comment__info-input","data-tippy-content":"点击昵称时可跳转"},x6=["data-tippy-content"],S6={class:"relative"},M6={class:"sus-comment__footer flex justify-between"},F6={class:"flex flex-row items-center"},O6={key:0,class:"p-1"},A6=[f.createStaticVNode('<g fill="none" data-v-664e2b61><path stroke="currentColor" stroke-linecap="round" stroke-width="1.5" d="M9 16c.85.63 1.885 1 3 1s2.15-.37 3-1" data-v-664e2b61></path><path fill="currentColor" d="M16 10.5c0 .828-.448 1.5-1 1.5s-1-.672-1-1.5s.448-1.5 1-1.5s1 .672 1 1.5" data-v-664e2b61></path><ellipse cx="9" cy="10.5" fill="currentColor" rx="1" ry="1.5" data-v-664e2b61></ellipse><path stroke="currentColor" stroke-linecap="round" stroke-width="1.5" d="M7 3.338A9.95 9.95 0 0 1 12 2c5.523 0 10 4.477 10 10s-4.477 10-10 10S2 17.523 2 12c0-1.821.487-3.53 1.338-5" data-v-664e2b61></path></g>',1)],T6={key:1,class:"sus-upload p-1"},N6=f.createStaticVNode('<label for="upload-input" data-v-664e2b61><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" data-v-664e2b61><g fill="none" stroke="currentColor" stroke-linecap="round" stroke-width="1.5" data-v-664e2b61><path d="m2 12.5l1.752-1.533a2.3 2.3 0 0 1 3.14.105l4.29 4.29a2 2 0 0 0 2.564.222l.299-.21a3 3 0 0 1 3.731.225L21 18.5m-6-13h3.5m0 0H22m-3.5 0V9m0-3.5V2" data-v-664e2b61></path><path d="M22 12c0 4.714 0 7.071-1.465 8.535C19.072 22 16.714 22 12 22s-7.071 0-8.536-1.465C2 19.072 2 16.714 2 12c0-1.128 0-2.122.02-3M12 2C7.286 2 4.929 2 3.464 3.464c-.424.425-.726.925-.94 1.536" data-v-664e2b61></path></g></svg></label>',1),B6={"data-tippy-content":"收到回复后通知",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},R6=[nu(()=>f.createElementVNode("path",{fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-width":"1.5",d:"M12 6v4m-4.5 9c.655 1.748 2.422 3 4.5 3q.367 0 .72-.05M16.5 19a4.5 4.5 0 0 1-1.302 1.84M9.107 2.674A6.5 6.5 0 0 1 12 2c3.727 0 6.75 3.136 6.75 7.005v.705a4.4 4.4 0 0 0 .692 2.375l1.108 1.724c1.011 1.575.239 3.716-1.52 4.214a25.8 25.8 0 0 1-14.06 0c-1.759-.498-2.531-2.639-1.52-4.213l1.108-1.725A4.4 4.4 0 0 0 5.25 9.71v-.705c0-1.074.233-2.092.65-3.002"},null,-1))],L6={"data-tippy-content":"收到回复后不通知",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},P6=[nu(()=>f.createElementVNode("g",{fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-width":"1.5"},[f.createElementVNode("path",{"stroke-linejoin":"round",d:"M10 9h4l-4 4h4"}),f.createElementVNode("path",{d:"M7.5 19c.655 1.748 2.422 3 4.5 3q.367 0 .72-.05M16.5 19a4.5 4.5 0 0 1-1.302 1.84M9.107 2.674A6.5 6.5 0 0 1 12 2c3.727 0 6.75 3.136 6.75 7.005v.705a4.4 4.4 0 0 0 .692 2.375l1.108 1.724c1.011 1.575.239 3.716-1.52 4.214a25.8 25.8 0 0 1-14.06 0c-1.759-.498-2.531-2.639-1.52-4.213l1.108-1.725A4.4 4.4 0 0 0 5.25 9.71v-.705c0-1.074.233-2.092.65-3.002"})],-1))],z6={class:"sus-comment__toolbar relative flex"},$6={class:"sus-comment__toolbar-mask absolute inset-0"},H6={class:"sus-comment__extend flex"},V6=["src"],q6=["onClick"],W6=[f.createStaticVNode('<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" data-v-664e2b61><g fill="none" stroke="currentColor" stroke-width="1.5" data-v-664e2b61><path stroke-linecap="round" d="M20.5 6h-17m6 5l.5 5m4.5-5l-.5 5" data-v-664e2b61></path><path d="M6.5 6h.11a2 2 0 0 0 1.83-1.32l.034-.103l.097-.291c.083-.249.125-.373.18-.479a1.5 1.5 0 0 1 1.094-.788C9.962 3 10.093 3 10.355 3h3.29c.262 0 .393 0 .51.019a1.5 1.5 0 0 1 1.094.788c.055.106.097.23.18.479l.097.291A2 2 0 0 0 17.5 6" data-v-664e2b61></path><path stroke-linecap="round" d="M18.374 15.4c-.177 2.654-.266 3.981-1.131 4.79s-2.195.81-4.856.81h-.774c-2.66 0-3.99 0-4.856-.81c-.865-.809-.953-2.136-1.13-4.79l-.46-6.9m13.666 0l-.2 3" data-v-664e2b61></path></g></svg>',1)],au=an(f.defineComponent({__name:"index",props:{reply:{},emojiList:{},mailTips:{default:"输入QQ邮箱自动获取头像"},toolBar:{},placeholder:{default:`支持常见的markdown语法,如图片、代码块等
|
|
120
|
-
输入”:“加表情缩写,快速查找表情
|
|
121
|
-
链接自动识别,无需额外操作`},comment:{}},emits:["on-save","on-cancel","add-image"],setup(o,{expose:e,emit:t}){var ne,ce;class n{constructor(){gt(this,"articleId","");gt(this,"userName","");gt(this,"userEmail","");gt(this,"userWebsite","");gt(this,"userAvatar","");gt(this,"content","");gt(this,"contentText","");gt(this,"replyName","");gt(this,"parentId","");gt(this,"notify",0);gt(this,"privacy",!1)}}const a=o;e({updateImage:D,updatePreviewImage:U});const s=t,i=a.emojiList,r=(ne=a.reply)==null?void 0:ne.userName,l=f.ref("在此处留下你的足迹吧!(支持markdown语法)"),p=f.reactive(new n),c=f.ref(""),m=f.ref(""),d=f.ref(!1),u=f.ref(null),g=f.ref([]),h=f.ref(null),b=((ce=a.comment)==null?void 0:ce.privacy)||!1,k=xv({extensions:[S1,F1,O1.configure({placeholder:a.placeholder}),b0.configure({openOnClick:!1,defaultProtocol:"https",linkOnPaste:!1}),q1.configure({emojis:[...hr,...i],enableEmoticons:!0,HTMLAttributes:{class:"emoji"},suggestion:J1}),Ky]});function I(){a.comment&&(p.privacy=a.comment.privacy||!1,p.notify=a.comment.notify||1,p.userName=a.comment.userName||"",p.userEmail=a.comment.userEmail||"",p.userWebsite=a.comment.userWebsite||"",p.userAvatar=a.comment.userAvatar||"",p.content=a.comment.content||"",p.articleId=a.comment.articleId||"")}async function S(){if(!(!k||!k.value)){if(c.value=k.value.getHTML(),p.userWebsite&&(p.userWebsite.concat("http://")||p.userWebsite.concat("https://")||(p.userWebsite="https://"+p.userWebsite)),localStorage.setItem("user",JSON.stringify(p)),localStorage.setItem("comment-content",c.value),a.reply.id!="0"){const L=a.reply.parentId;p.parentId=L==="0"?a.reply.id:L,p.replyName=a.reply.userName,l.value="@"+r+":"}p.content=c.value,p.contentText=k.value.getText(),s("on-save",p,h.value)}}function j(){localStorage.setItem("comment-content",""),s("on-cancel")}function T(){s("add-image",u.value,h.value)}function D(L){h.value||(h.value=[]),!h.value||h.value.length==0?h.value=L:h.value=P(h.value,L[0]),g.value=[];for(let H=0;H<h.value.length;H++)g.value.push(URL.createObjectURL(h.value[H]))}function P(L,H){return[...L,H]}function U(L){g.value=L}function C(){var L;p.userEmail.trim().endsWith("@qq.com")&&!p.userAvatar&&(m.value="https://thirdqq.qlogo.cn/g?b=sdk&nk="+((L=p.userEmail)==null?void 0:L.replace("@qq.com","").trim())+"&s=140")}function q(){p.notify==1?p.notify=0:p.notify=1}function X(L){!k||!k.value||(k.value.chain().focus().setEmoji(L.shortcodes[0]).run(),d.value=!1)}function ae(L){var H;try{if(!h.value||!h.value.length||h.value.length<=1){h.value=[],g.value=[];return}(H=h.value)==null||H.splice(L,1),g.value.splice(L,1)}catch(v){console.log(v),h.value=[],g.value=[]}}return f.onMounted(()=>{if(!k||!k.value)return;I();const L=localStorage.getItem("user");if(p.content&&p.content.length>3)k.value.commands.setContent(p.content);else{const H=localStorage.getItem("comment-content");H&&k.value.commands.setContent(H)}if(L){const H=JSON.parse(L);p.userName=H.userName,p.userEmail=H.userEmail,p.userWebsite=H.userWebsite,C()}p.notify=1,Pt("[data-tippy-content]")}),(L,H)=>(f.openBlock(),f.createElementBlock("div",y6,[f.withDirectives(f.createElementVNode("div",_6,[f.withDirectives(f.createElementVNode("img",{alt:"头像",src:m.value,class:"sus-avatar",onerror:"this.onerror=null,this.src='/error.webp'"},null,8,D6),[[f.vShow,!!m.value]]),f.withDirectives(f.createElementVNode("span",{class:"sus-avatar-text flex w-full h-full items-center justify-center"},f.toDisplayString(p.userName.charAt(0)),513),[[f.vShow,!m.value]])],512),[[f.vShow,L.toolBar.showUserInfo]]),f.createElementVNode("div",w6,[f.withDirectives(f.createElementVNode("div",I6,[f.createElementVNode("div",E6,[f.withDirectives(f.createElementVNode("input",{class:"sus-input sus-username",placeholder:"昵称(必填)","onUpdate:modelValue":H[0]||(H[0]=v=>p.userName=v),maxlength:"23"},null,512),[[f.vModelText,p.userName]])]),f.createElementVNode("div",C6,[f.withDirectives(f.createElementVNode("input",{class:"sus-input sus-web",placeholder:"网址(https://)","onUpdate:modelValue":H[1]||(H[1]=v=>p.userWebsite=v),maxlength:"35"},null,512),[[f.vModelText,p.userWebsite]])]),f.createElementVNode("div",{class:"sus-comment__info-input","data-tippy-content":L.mailTips},[f.withDirectives(f.createElementVNode("input",{onBlur:C,class:"sus-input sus-email",placeholder:"邮箱(不会公开,仅用于通知回复)","onUpdate:modelValue":H[2]||(H[2]=v=>p.userEmail=v),maxlength:"35"},null,544),[[f.vModelText,p.userEmail]])],8,x6)],512),[[f.vShow,L.toolBar.showUserInfo]]),f.createElementVNode("div",S6,[f.withDirectives(f.createVNode(Av,{class:"absolute bottom-2 left-1",emojiList:f.unref(i),onOnselect:X},null,8,["emojiList"]),[[f.vShow,d.value]]),f.createVNode(f.unref(Cv),{class:"sus-comment-input",editor:f.unref(k)},null,8,["editor"])]),f.createElementVNode("div",M6,[f.createElementVNode("div",F6,[f.unref(i).length>=0?(f.openBlock(),f.createElementBlock("div",O6,[(f.openBlock(),f.createElementBlock("svg",{onClick:H[3]||(H[3]=v=>d.value=!d.value),xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},A6))])):f.createCommentVNode("",!0),L.toolBar.showImage?(f.openBlock(),f.createElementBlock("div",T6,[f.createElementVNode("input",{ref_key:"imgRef",ref:u,onChange:T,type:"file",id:"upload-input",name:"image",accept:"image/*"},null,544),N6])):f.createCommentVNode("",!0),L.toolBar.showNotify?(f.openBlock(),f.createElementBlock("div",{key:2,onClick:q,class:"p-1"},[f.withDirectives((f.openBlock(),f.createElementBlock("svg",B6,R6,512)),[[f.vShow,p.notify===1]]),f.withDirectives((f.openBlock(),f.createElementBlock("svg",L6,P6,512)),[[f.vShow,p.notify!==1]])])):f.createCommentVNode("",!0)]),f.createElementVNode("div",{class:"sus-comment__footer-send flex justify-end my-2"},[f.createElementVNode("button",{class:"sus-button cancel mx-2",onClick:j},"取消"),f.createElementVNode("button",{class:"sus-button ok",onClick:S},"发送")])]),f.createElementVNode("div",z6,[f.withDirectives(f.createVNode(f.unref(Ls),{modelValue:p.privacy,"onUpdate:modelValue":H[4]||(H[4]=v=>p.privacy=v),checked:f.unref(b)},{default:f.withCtx(()=>[f.createTextVNode(" 仅博主可见 ")]),_:1},8,["modelValue","checked"]),[[f.vShow,L.toolBar.showPrivacy]]),f.withDirectives(f.createElementVNode("div",$6,null,512),[[f.vShow,L.toolBar.privacyDisable]])]),f.createElementVNode("div",H6,[(f.openBlock(!0),f.createElementBlock(f.Fragment,null,f.renderList(g.value,(v,_)=>(f.openBlock(),f.createElementBlock("div",{class:"sus-comment__extend-img relative",key:v},[f.createElementVNode("img",{class:"img-item",src:v,alt:""},null,8,V6),f.createElementVNode("div",{onClick:F=>ae(_),class:"mask"},W6,8,q6)]))),128))])])]))}}),[["__scopeId","data-v-664e2b61"]]);function U6(o){const e=new Date(o),t=e.getFullYear(),n=e.getMonth()+1,a=e.getDate(),s=new Date,i=s.getFullYear(),r=s.getMonth()+1,l=s.getDate();if(i===t&&r==n){const p=l-a;if(p===0)return"今天";if(p<7)return p+"天前"}return i===t?`${n}月${a}日`:`${t}年${n}月${a}日`}const Qr=o=>(f.pushScopeId("data-v-0ecc1ddf"),o=o(),f.popScopeId(),o),K6={class:"sus-item__container relative"},G6={class:"flex flex-row"},J6={class:"sus-comment-aside"},Y6={class:"sus-comment-avatar"},X6=["src"],Z6={class:"sus-item-floor mt-2"},Q6={class:"sus-item__main w-full overflow-hidden"},e_={class:"sus-item__user leading-loose"},t_=["rel","href"],o_={key:0,class:"sus-item-tag mx-1",title:"博主"},n_={key:1,class:"sus-item__content-name mx-1.5"},a_={class:"sus-item__user-date ml-3"},s_={key:0,class:"sus-item__content"},i_=Qr(()=>f.createElementVNode("div",{class:"sus-item-privacy"},null,-1)),r_=["innerHTML"],l_={key:1,class:"sus-item__content"},p_=["innerHTML"],c_={key:0,class:"sus-item__info flex justify-end mx-1"},m_={class:"sus-item__info-area flex items-center"},d_=Qr(()=>f.createElementVNode("svg",{class:"sus-svg",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},[f.createElementVNode("g",{fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-width":"1.5"},[f.createElementVNode("path",{d:"M12.5 7.041A3 3 0 1 0 14.959 9.5"}),f.createElementVNode("path",{d:"M5 15.216c-.647-1.654-1-3.415-1-5.073C4 5.646 7.582 2 12 2s8 3.646 8 8.143c0 4.462-2.553 9.67-6.537 11.531a3.45 3.45 0 0 1-2.926 0C9.265 21.08 8.138 20.144 7.194 19"})])],-1)),u_={class:"sus-item__info-useragent flex items-center ml-3"},g_=Qr(()=>f.createElementVNode("svg",{class:"sus-svg",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},[f.createElementVNode("path",{fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-width":"1.5",d:"M5 2.252c-.774.169-1.359.45-1.828.92C2 4.343 2 6.229 2 10v1c0 2.828 0 4.243.879 5.121C3.757 17 5.172 17 8 17h8c2.828 0 4.243 0 5.121-.879C22 15.243 22 13.828 22 11v-1c0-3.771 0-5.657-1.172-6.828S17.771 2 14 2H9m7 20H8m4-5v5m10-9h-6M2 13h10"})],-1)),Ps=an(f.defineComponent({__name:"item",props:{comment:{},lineHeight:{default:23},showFooter:{type:Boolean,default:!1},num:{default:1}},emits:["on-reply"],setup(o,{emit:e}){const t=o,n=f.ref(),a=f.ref(),s=f.ref(!1),i=e;function r(){n.value.style.display="block",s.value=!1}function l(){var g;const d=((g=n==null?void 0:n.value)==null?void 0:g.clientHeight)||0,u=t.lineHeight*5;d>=u&&(s.value=!0)}function p(){i("on-reply",t.comment)}function c(){t.comment.userAvatar||(t.comment.userAvatar="/error.webp")}function m(){var h;const d=new Date((h=t.comment)==null?void 0:h.createdDate),u=new Date,g=new Date(u.getFullYear()-1,u.getMonth(),u.getDate());return d>g?"ugc noopener nofollow":"ugc noopener noreferrer nofollow"}return f.onMounted(()=>{c(),l()}),(d,u)=>(f.openBlock(),f.createElementBlock("div",K6,[f.createElementVNode("div",G6,[f.withDirectives(f.createElementVNode("span",{onClick:p,class:"sus-item__info-reply absolute cursor-pointer"}," 回复 ",512),[[f.vShow,!d.comment.privacy]]),f.createElementVNode("div",J6,[f.createElementVNode("div",Y6,[f.withDirectives(f.createElementVNode("img",{alt:"",class:"sus-avatar",src:d.comment.userAvatar,onerror:"this.onerror=null,this.src='/error.webp'"},null,8,X6),[[f.vShow,!!d.comment.userAvatar]]),f.withDirectives(f.createElementVNode("span",{class:"sus-avatar-text flex w-full h-full items-center justify-center"},f.toDisplayString(d.comment.userName.charAt(0)),513),[[f.vShow,!d.comment.userAvatar]])]),f.createElementVNode("p",Z6,f.toDisplayString(d.num),1)]),f.createElementVNode("div",Q6,[f.createElementVNode("div",e_,[f.createElementVNode("a",{target:"_blank",rel:m(),href:d.comment.userWebsite,class:f.normalizeClass([d.comment.tagName,"sus-item__user-name font-semibold ml-1 cursor-pointer"])},f.toDisplayString(d.comment.userName),11,t_),d.comment.tagName==="owner"?(f.openBlock(),f.createElementBlock("span",o_," 博主 ")):f.createCommentVNode("",!0),d.comment.replyName?(f.openBlock(),f.createElementBlock("span",n_,"@"+f.toDisplayString(d.comment.replyName),1)):f.createCommentVNode("",!0),f.createElementVNode("span",a_,f.toDisplayString(f.unref(U6)(d.comment.createdDate)),1)]),d.comment.privacy?(f.openBlock(),f.createElementBlock("div",s_,[i_,f.createElementVNode("span",{class:"sus-item-privacy-text",innerHTML:d.comment.content},null,8,r_)])):(f.openBlock(),f.createElementBlock("div",l_,[f.createElementVNode("span",{ref_key:"contentDom",ref:n,class:"sus-item__content-text",innerHTML:d.comment.content+(d.comment.contentExtends||"")},null,8,p_),s.value?(f.openBlock(),f.createElementBlock("a",{key:0,ref_key:"showMoreDom",ref:a,class:"sus-show-detail my-1.5 cursor-pointer",onClick:r},"显示更多>",512)):f.createCommentVNode("",!0)]))])]),d.showFooter&&d.comment.area&&!d.comment.privacy?(f.openBlock(),f.createElementBlock("div",c_,[f.createElementVNode("span",m_,[d_,f.createTextVNode(" "+f.toDisplayString(d.comment.area),1)]),f.createElementVNode("span",u_,[g_,f.createTextVNode(" "+f.toDisplayString(d.comment.userAgent),1)])])):f.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-0ecc1ddf"]]),f_={class:"sus-comment__item"},h_={class:"sus-comment__item-child"},b_={key:2},j_={key:0,class:"sus-comment__item-footer flex justify-center w-full cursor-pointer"},su=an(f.defineComponent({__name:"index",props:{comment:{},lineHeight:{},showFooter:{type:Boolean}},emits:["on-reply"],setup(o,{emit:e}){const t=f.ref(!1),n=e;function a(s){n("on-reply",s)}return(s,i)=>{var r,l,p;return f.openBlock(),f.createElementBlock("div",f_,[f.createVNode(Ps,{comment:s.comment,onOnReply:i[0]||(i[0]=c=>a(s.comment)),lineHeight:s.lineHeight,showFooter:s.showFooter},null,8,["comment","lineHeight","showFooter"]),f.createElementVNode("div",h_,[((r=s.comment.child)==null?void 0:r.length)>0?(f.openBlock(),f.createBlock(Ps,{key:0,onOnReply:i[1]||(i[1]=c=>a(s.comment.child[0])),comment:s.comment.child[0],num:2,showFooter:s.showFooter,lineHeight:s.lineHeight,class:"sus-comment__item-child__item"},null,8,["comment","showFooter","lineHeight"])):f.createCommentVNode("",!0),((l=s.comment.child)==null?void 0:l.length)>1?(f.openBlock(),f.createBlock(Ps,{key:1,onOnReply:i[2]||(i[2]=c=>a(s.comment.child[1])),comment:s.comment.child[1],num:3,showFooter:s.showFooter,lineHeight:s.lineHeight,class:"sus-comment__item-child__item"},null,8,["comment","showFooter","lineHeight"])):f.createCommentVNode("",!0),((p=s.comment.child)==null?void 0:p.length)>2?(f.openBlock(),f.createElementBlock("div",b_,[t.value?f.createCommentVNode("",!0):(f.openBlock(),f.createElementBlock("div",j_,[f.createElementVNode("p",{class:"sus-load-more",onClick:i[3]||(i[3]=c=>t.value=!0)}," 查看更多回复 > ")])),t.value?(f.openBlock(!0),f.createElementBlock(f.Fragment,{key:1},f.renderList(s.comment.child.slice(2),(c,m)=>(f.openBlock(),f.createBlock(Ps,{onOnReply:d=>a(c),key:m,comment:c,num:4+m,showFooter:s.showFooter,lineHeight:s.lineHeight,class:"sus-comment__item-child__item"},null,8,["onOnReply","comment","num","showFooter","lineHeight"]))),128)):f.createCommentVNode("",!0)])):f.createCommentVNode("",!0)])])}}}),[["__scopeId","data-v-394137ac"]]),v_={class:"sus-top-item flex items-start p-1.5 overflow-hidden"},k_={class:"sus-top-item__info flex flex-col mr-1"},y_={class:"sus-top-item__user whitespace-nowrap"},__={key:0,class:"sus-top-item__reply whitespace-nowrap"},D_=["innerHTML"],iu=an(f.defineComponent({__name:"simple",props:{comment:{}},setup(o){return(e,t)=>(f.openBlock(),f.createElementBlock("div",v_,[f.createElementVNode("div",k_,[f.createElementVNode("span",y_,f.toDisplayString(e.comment.userName)+": ",1),e.comment.replyName?(f.openBlock(),f.createElementBlock("span",__,f.toDisplayString("@"+e.comment.replyName),1)):f.createCommentVNode("",!0)]),f.createElementVNode("span",{class:"sus-top-item__content w-full",innerHTML:e.comment.content},null,8,D_)]))}}),[["__scopeId","data-v-b136418d"]]),w_={class:"sus-top-item__user flex items-center"},I_={key:0,class:"sus-top-item__user-avatar ml-1 mr-2"},E_=["src"],C_={class:"sus-top-item__user-owner"},x_={class:"sus-top-item__user-reply ml-3 opacity-70"},S_=["innerHTML"],ru=an(f.defineComponent({__name:"index",props:{comment:{}},emits:["go-local"],setup(o,{emit:e}){const t=e;function n(){t("go-local")}return(a,s)=>(f.openBlock(),f.createElementBlock("div",{class:"sus-top-item p-1.5 cursor-pointer overflow-hidden",onClick:n},[f.createElementVNode("div",w_,[a.comment.userAvatar?(f.openBlock(),f.createElementBlock("div",I_,[f.createElementVNode("img",{alt:"",class:"sus-avatar",loading:"lazy",decoding:"async",src:a.comment.userAvatar,onerror:"this.onerror=null,this.src='/error.webp'"},null,8,E_)])):f.createCommentVNode("",!0),f.createElementVNode("div",C_,f.toDisplayString(a.comment.userName),1),f.createElementVNode("div",x_,f.toDisplayString(a.comment.replyName?"@"+a.comment.replyName:""),1)]),f.createElementVNode("div",{class:"sus-top-item__content p-1",innerHTML:a.comment.content},null,8,S_)]))}}),[["__scopeId","data-v-aa4077a9"]]),M_=[au,su,ru,iu],F_={install(o){M_.forEach(e=>{o.component(e.name,e)})}};Se.SuSComment=au,Se.SuSList=su,Se.SuSSimpleTop=iu,Se.SuSTop=ru,Se.default=F_,Object.defineProperties(Se,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|