@ckeditor/ckeditor5-emoji 45.2.1-alpha.10 β 45.2.1-alpha.2
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/build/emoji.js +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +8 -8
package/build/emoji.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
/*!
|
|
3
3
|
* @license Copyright (c) 2003-2025, CKSource Holding sp. z o.o. All rights reserved.
|
|
4
4
|
* For licensing, see LICENSE.md.
|
|
5
|
-
*/(()=>{var e={21:e=>{"use strict";e.exports=function(e,t){Object.keys(t).forEach(function(i){e.setAttribute(i,t[i])})}},51:e=>{"use strict";e.exports=function(e){var t=document.createElement("style");return e.setAttributes(t,e.attributes),e.insert(t,e.options),t}},59:(e,t,i)=>{"use strict";i.d(t,{A:()=>c});var o=i(758),s=i.n(o),r=i(935),n=i.n(r)()(s());n.push([e.id,".ck.ck-emoji__skin-tone{margin-left:var(--ck-spacing-standard)}.ck.ck-emoji__skin-tone>.ck.ck-dropdown .ck.ck-list__item{min-width:1em}.ck.ck-emoji__skin-tone>.ck.ck-dropdown .ck-button.ck-dropdown__button .ck-button__label{width:auto}",""]);const c=n},128:e=>{"use strict";var t={};e.exports=function(e,i){var o=function(e){if(void 0===t[e]){var i=document.querySelector(e);if(window.HTMLIFrameElement&&i instanceof window.HTMLIFrameElement)try{i=i.contentDocument.head}catch(e){i=null}t[e]=i}return t[e]}(e);if(!o)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");o.appendChild(i)}},146:function(e,t){var i,o,s;o=[],void 0===(s="function"==typeof(i=e=>{"use strict";var t=e=>{"number"==typeof e?e=""+e:"string"!=typeof e&&(e="");var t=k(e);return s(e,{_targetLower:t._lower,_targetLowerCodes:t.lowerCodes,_bitflags:t.bitflags})};class i{get indexes(){return this._indexes.slice(0,this._indexes.len).sort((e,t)=>e-t)}set indexes(e){return this._indexes=e}highlight(e,t){return((e,t="<b>",i="</b>")=>{for(var o="function"==typeof t?t:void 0,s=e.target,r=s.length,n=e.indexes,c="",a=0,l=0,d=!1,u=[],h=0;h<r;++h){var m=s[h];if(n[l]===h){if(++l,d||(d=!0,o?(u.push(c),c=""):c+=t),l===n.length){o?(c+=m,u.push(o(c,a++)),c="",u.push(s.substr(h+1))):c+=m+i+s.substr(h+1);break}}else d&&(d=!1,o?(u.push(o(c,a++)),c=""):c+=i);c+=m}return o?u:c})(this,e,t)}get score(){return r(this._score)}set score(e){this._score=n(e)}}class o extends Array{get score(){return r(this._score)}set score(e){this._score=n(e)}}var s=(e,t)=>{const o=new i;return o.target=e,o.obj=t.obj??B,o._score=t._score??C,o._indexes=t._indexes??[],o._targetLower=t._targetLower??"",o._targetLowerCodes=t._targetLowerCodes??B,o._nextBeginningIndexes=t._nextBeginningIndexes??B,o._bitflags=t._bitflags??0,o},r=e=>e===C?0:e>1?e:Math.E**(-2*((1-e)**.04307-1)),n=e=>0===e?C:e>1?e:1-Math.pow(Math.log(e)/-2+1,1/.04307),c=e=>{"number"==typeof e?e=""+e:"string"!=typeof e&&(e=""),e=e.trim();var t=k(e),i=[];if(t.containsSpace){var o=e.split(/\s+/);o=[...new Set(o)];for(var s=0;s<o.length;s++)if(""!==o[s]){var r=k(o[s]);i.push({lowerCodes:r.lowerCodes,_lower:o[s].toLowerCase(),containsSpace:!1})}}return{lowerCodes:t.lowerCodes,_lower:t._lower,containsSpace:t.containsSpace,bitflags:t.bitflags,spaceSearches:i}},a=e=>{if(e.length>999)return t(e);var i=g.get(e);return void 0!==i||(i=t(e),g.set(e,i)),i},l=e=>{if(e.length>999)return c(e);var t=p.get(e);return void 0!==t||(t=c(e),p.set(e,t)),t},d=(e,t)=>{var i=[];i.total=e.length;var r=t?.limit||E;if(t?.key)for(var n=0;n<e.length;n++){var c=e[n];if((h=V(c,t.key))!=B){T(h)||(h=a(h));var l=s(h.target,{_score:h._score,obj:c});if(i.push(l),i.length>=r)return i}}else if(t?.keys)for(n=0;n<e.length;n++){c=e[n];for(var d=new o(t.keys.length),u=t.keys.length-1;u>=0;--u)(h=V(c,t.keys[u]))?(T(h)||(h=a(h)),h._score=C,h._indexes.len=0,d[u]=h):d[u]=F;if(d.obj=c,d._score=C,i.push(d),i.length>=r)return i}else for(n=0;n<e.length;n++){var h;if((h=e[n])!=B&&(T(h)||(h=a(h)),h._score=C,h._indexes.len=0,i.push(h),i.length>=r))return i}return i},u=(e,t,o=!1,s=!1)=>{if(!1===o&&e.containsSpace)return h(e,t,s);for(var r=e._lower,n=e.lowerCodes,c=n[0],a=t._targetLowerCodes,l=n.length,d=a.length,u=0,m=0,k=0;;){if(c===a[m]){if(w[k++]=m,++u===l)break;c=n[u]}if(++m>=d)return B}u=0;var g=!1,p=0,_=t._nextBeginningIndexes;_===B&&(_=t._nextBeginningIndexes=f(t.target));var v=0;if((m=0===w[0]?0:_[w[0]-1])!==d)for(;;)if(m>=d){if(u<=0)break;if(++v>200)break;--u;var y=b[--p];m=_[y]}else if(n[u]===a[m]){if(b[p++]=m,++u===l){g=!0;break}++m}else m=_[m];var j=l<=1?-1:t._targetLower.indexOf(r,w[0]),x=!!~j,V=!!x&&(0===j||t._nextBeginningIndexes[j-1]===j);if(x&&!V)for(var T=0;T<_.length;T=_[T])if(!(T<=j)){for(var E=0;E<l&&n[E]===t._targetLowerCodes[T+E];E++);if(E===l){j=T,V=!0;break}}var C=e=>{for(var t=0,i=0,o=1;o<l;++o)e[o]-e[o-1]!==1&&(t-=e[o],++i);if(t-=(e[l-1]-e[0]-(l-1)+12)*i,0!==e[0]&&(t-=e[0]*e[0]*.2),g){var s=1;for(o=_[0];o<d;o=_[o])++s;s>24&&(t*=10*(s-24))}else t*=1e3;return t-=(d-l)/2,x&&(t/=1+l*l*1),V&&(t/=1+l*l*1),t-=(d-l)/2};if(g)if(V){for(T=0;T<l;++T)w[T]=j+T;P=w,S=C(w)}else P=b,S=C(b);else{if(x)for(var T=0;T<l;++T)w[T]=j+T;var P,S=C(P=w)}for(t._score=S,T=0;T<l;++T)t._indexes[T]=P[T];t._indexes.len=l;const A=new i;return A.target=t.target,A._score=t._score,A._indexes=t._indexes,A},h=(e,t,i)=>{for(var o=new Set,s=0,r=B,n=0,c=e.spaceSearches,a=c.length,l=0,d=()=>{for(let e=l-1;e>=0;e--)t._nextBeginningIndexes[_[2*e+0]]=_[2*e+1]},h=!1,m=0;m<a;++m){y[m]=C;var k=c[m];if(r=u(k,t),i){if(r===B)continue;h=!0}else if(r===B)return d(),B;if(m!==a-1){var f=r._indexes,g=!0;for(let e=0;e<f.len-1;e++)if(f[e+1]-f[e]!==1){g=!1;break}if(g){var p=f[f.len-1]+1,w=t._nextBeginningIndexes[p-1];for(let e=p-1;e>=0&&w===t._nextBeginningIndexes[e];e--)t._nextBeginningIndexes[e]=p,_[2*l+0]=e,_[2*l+1]=w,l++}}s+=r._score/a,y[m]=r._score/a,r._indexes[0]<n&&(s-=2*(n-r._indexes[0])),n=r._indexes[0];for(var b=0;b<r._indexes.len;++b)o.add(r._indexes[b])}if(i&&!h)return B;d();var v=u(e,t,!0);if(v!==B&&v._score>s){if(i)for(m=0;m<a;++m)y[m]=v._score/a;return v}i&&(r=t),r._score=s,m=0;for(let e of o)r._indexes[m++]=e;return r._indexes.len=m,r},m=e=>e.replace(/\p{Script=Latin}+/gu,e=>e.normalize("NFD")).replace(/[\u0300-\u036f]/g,""),k=e=>{for(var t=(e=m(e)).length,i=e.toLowerCase(),o=[],s=0,r=!1,n=0;n<t;++n){var c=o[n]=i.charCodeAt(n);32!==c?s|=1<<(c>=97&&c<=122?c-97:c>=48&&c<=57?26:c<=127?30:31):r=!0}return{lowerCodes:o,bitflags:s,containsSpace:r,_lower:i}},f=e=>{for(var t=(e=m(e)).length,i=(e=>{for(var t=e.length,i=[],o=0,s=!1,r=!1,n=0;n<t;++n){var c=e.charCodeAt(n),a=c>=65&&c<=90,l=a||c>=97&&c<=122||c>=48&&c<=57,d=a&&!s||!r||!l;s=a,r=l,d&&(i[o++]=n)}return i})(e),o=[],s=i[0],r=0,n=0;n<t;++n)s>n?o[n]=s:(s=i[++r],o[n]=void 0===s?t:s);return o},g=new Map,p=new Map,w=[],b=[],_=[],v=[],y=[],j=[],x=[],V=(e,t)=>{var i=e[t];if(void 0!==i)return i;if("function"==typeof t)return t(e);var o=t;Array.isArray(t)||(o=t.split("."));for(var s=o.length,r=-1;e&&++r<s;)e=e[o[r]];return e},T=e=>"object"==typeof e&&"number"==typeof e._bitflags,E=1/0,C=-E,P=[];P.total=0;var S,A,I,L,B=null,F=t(""),M=(S=[],A=0,L=e=>{for(var t=0,i=S[t],o=1;o<A;){var s=o+1;t=o,s<A&&S[s]._score<S[o]._score&&(t=s),S[t-1>>1]=S[t],o=1+(t<<1)}for(var r=t-1>>1;t>0&&i._score<S[r]._score;r=(t=r)-1>>1)S[t]=S[r];S[t]=i},(I={}).add=e=>{var t=A;S[A++]=e;for(var i=t-1>>1;t>0&&e._score<S[i]._score;i=(t=i)-1>>1)S[t]=S[i];S[t]=e},I.poll=e=>{if(0!==A){var t=S[0];return S[0]=S[--A],L(),t}},I.peek=e=>{if(0!==A)return S[0]},I.replaceTop=e=>{S[0]=e,L()},I);return{single:(e,t)=>{if(!e||!t)return B;var i=l(e);T(t)||(t=a(t));var o=i.bitflags;return(o&t._bitflags)!==o?B:u(i,t)},go:(e,t,i)=>{if(!e)return i?.all?d(t,i):P;var s=l(e),r=s.bitflags,c=s.containsSpace,h=n(i?.threshold||0),m=i?.limit||E,k=0,f=0,g=t.length;function p(e){k<m?(M.add(e),++k):(++f,e._score>M.peek()._score&&M.replaceTop(e))}if(i?.key)for(var w=i.key,b=0;b<g;++b){var _=t[b];(z=V(_,w))&&(T(z)||(z=a(z)),(r&z._bitflags)===r&&(U=u(s,z))!==B&&(U._score<h||(U.obj=_,p(U))))}else if(i?.keys){var S=i.keys,A=S.length;e:for(b=0;b<g;++b){_=t[b];for(var I=0,L=0;L<A;++L)w=S[L],(z=V(_,w))?(T(z)||(z=a(z)),j[L]=z,I|=z._bitflags):j[L]=F;if((r&I)===r){if(c)for(let e=0;e<s.spaceSearches.length;e++)v[e]=C;for(L=0;L<A;++L)if((z=j[L])!==F)if(x[L]=u(s,z,!1,c),x[L]!==B){if(c)for(let e=0;e<s.spaceSearches.length;e++)y[e]>-1e3&&v[e]>C&&(D=(v[e]+y[e])/4)>v[e]&&(v[e]=D),y[e]>v[e]&&(v[e]=y[e])}else x[L]=F;else x[L]=F;if(c){for(let e=0;e<s.spaceSearches.length;e++)if(v[e]===C)continue e}else{var O=!1;for(let e=0;e<A;e++)if(x[e]._score!==C){O=!0;break}if(!O)continue}var N=new o(A);for(let e=0;e<A;e++)N[e]=x[e];if(c){var R=0;for(let e=0;e<s.spaceSearches.length;e++)R+=v[e]}else{R=C;for(let e=0;e<A;e++){var D;(U=N[e])._score>-1e3&&R>C&&(D=(R+U._score)/4)>R&&(R=D),U._score>R&&(R=U._score)}}if(N.obj=_,N._score=R,i?.scoreFn){if(!(R=i.scoreFn(N)))continue;R=n(R),N._score=R}R<h||p(N)}}}else for(b=0;b<g;++b){var z,U;(z=t[b])&&(T(z)||(z=a(z)),(r&z._bitflags)===r&&(U=u(s,z))!==B&&(U._score<h||p(U)))}if(0===k)return P;var q=new Array(k);for(b=k-1;b>=0;--b)q[b]=M.poll();return q.total=k+f,q},prepare:t,cleanup:()=>{g.clear(),p.clear()}}})?i.apply(t,o):i)||(e.exports=s)},223:(e,t,i)=>{"use strict";i.d(t,{A:()=>c});var o=i(758),s=i.n(o),r=i(935),n=i.n(r)()(s());n.push([e.id,".ck.ck-emoji__categories-list{display:flex;justify-content:space-between;margin:0 var(--ck-spacing-large)}.ck.ck-emoji__categories-list>.ck.ck-button.ck-button_with-text{border-width:0;border-bottom:2px solid transparent;font-size:var(--ck-font-size-big);min-height:var(--ck-font-size-big);min-width:var(--ck-font-size-big);padding:0}.ck.ck-emoji__categories-list>.ck.ck-button.ck-button_with-text.ck-emoji__category-item.ck-on{border-bottom-color:var(--ck-color-base-active)}.ck.ck-emoji__categories-list>.ck.ck-button.ck-button_with-text>span{margin:auto}",""]);const c=n},237:e=>{"use strict";e.exports=CKEditor5.dll},291:(e,t,i)=>{"use strict";i.d(t,{A:()=>c});var o=i(758),s=i.n(o),r=i(935),n=i.n(r)()(s());n.push([e.id,":root{--ck-emoji-grid-tile-size:27px}.ck.ck-emoji .ck.ck-emoji__tiles{border-top:1px solid var(--ck-color-base-border);max-height:min(265px,40vh);max-width:100%;overflow-x:hidden;overflow-y:auto}.ck.ck-emoji .ck.ck-emoji__tiles .ck-emoji__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--ck-emoji-grid-tile-size),1fr));margin:var(--ck-spacing-standard) var(--ck-spacing-large);grid-gap:var(--ck-spacing-small)}.ck.ck-emoji .ck.ck-emoji__tiles .ck-emoji__tile{border:0;font-size:1.5em;height:var(--ck-emoji-grid-tile-size);min-height:var(--ck-emoji-grid-tile-size);min-width:var(--ck-emoji-grid-tile-size);padding:0;transition:box-shadow .2s ease;width:var(--ck-emoji-grid-tile-size)}@media (prefers-reduced-motion:reduce){.ck.ck-emoji .ck.ck-emoji__tiles .ck-emoji__tile{transition:none}}.ck.ck-emoji .ck.ck-emoji__tiles .ck-emoji__tile:focus:not(.ck-disabled),.ck.ck-emoji .ck.ck-emoji__tiles .ck-emoji__tile:hover:not(.ck-disabled){border:0;box-shadow:inset 0 0 0 1px var(--ck-color-base-background),0 0 0 2px var(--ck-color-focus-border)}.ck.ck-emoji .ck.ck-emoji__tiles .ck-emoji__tile .ck-button__label{line-height:var(--ck-emoji-grid-tile-size);text-align:center;width:100%}",""]);const c=n},311:(e,t,i)=>{e.exports=i(237)("./src/ui.js")},355:(e,t,i)=>{e.exports=i(237)("./src/icons.js")},501:(e,t,i)=>{"use strict";i.d(t,{A:()=>c});var o=i(758),s=i.n(o),r=i(935),n=i.n(r)()(s());n.push([e.id,'.ck-vertical-form .ck-button:after{bottom:-1px;content:"";position:absolute;right:-1px;top:-1px;width:0;z-index:1}.ck-vertical-form .ck-button:focus:after{display:none}@media screen and (max-width:600px){.ck.ck-responsive-form .ck-button:after{bottom:-1px;content:"";position:absolute;right:-1px;top:-1px;width:0;z-index:1}.ck.ck-responsive-form .ck-button:focus:after{display:none}}.ck-vertical-form>.ck-button:nth-last-child(2):after{border-right:1px solid var(--ck-color-base-border)}.ck.ck-responsive-form{padding:var(--ck-spacing-large)}.ck.ck-responsive-form:focus{outline:none}[dir=ltr] .ck.ck-responsive-form>:not(:first-child),[dir=rtl] .ck.ck-responsive-form>:not(:last-child){margin-left:var(--ck-spacing-standard)}@media screen and (max-width:600px){.ck.ck-responsive-form{padding:0;width:calc(var(--ck-input-width)*.8)}.ck.ck-responsive-form .ck-labeled-field-view{margin:var(--ck-spacing-large) var(--ck-spacing-large) 0}.ck.ck-responsive-form .ck-labeled-field-view .ck-input-number,.ck.ck-responsive-form .ck-labeled-field-view .ck-input-text{min-width:0;width:100%}.ck.ck-responsive-form .ck-labeled-field-view .ck-labeled-field-view__error{white-space:normal}.ck.ck-responsive-form>.ck-button:nth-last-child(2):after{border-right:1px solid var(--ck-color-base-border)}.ck.ck-responsive-form>.ck-button:last-child,.ck.ck-responsive-form>.ck-button:nth-last-child(2){border-radius:0;margin-top:var(--ck-spacing-large);padding:var(--ck-spacing-standard)}.ck.ck-responsive-form>.ck-button:last-child:not(:focus),.ck.ck-responsive-form>.ck-button:nth-last-child(2):not(:focus){border-top:1px solid var(--ck-color-base-border)}[dir=ltr] .ck.ck-responsive-form>.ck-button:last-child,[dir=ltr] .ck.ck-responsive-form>.ck-button:nth-last-child(2),[dir=rtl] .ck.ck-responsive-form>.ck-button:last-child,[dir=rtl] .ck.ck-responsive-form>.ck-button:nth-last-child(2){margin-left:0}[dir=rtl] .ck.ck-responsive-form>.ck-button:last-child:last-of-type,[dir=rtl] .ck.ck-responsive-form>.ck-button:nth-last-child(2):last-of-type{border-right:1px solid var(--ck-color-base-border)}}',""]);const c=n},584:(e,t,i)=>{e.exports=i(237)("./src/utils.js")},591:e=>{"use strict";var t=[];function i(e){for(var i=-1,o=0;o<t.length;o++)if(t[o].identifier===e){i=o;break}return i}function o(e,o){for(var r={},n=[],c=0;c<e.length;c++){var a=e[c],l=o.base?a[0]+o.base:a[0],d=r[l]||0,u="".concat(l," ").concat(d);r[l]=d+1;var h=i(u),m={css:a[1],media:a[2],sourceMap:a[3],supports:a[4],layer:a[5]};if(-1!==h)t[h].references++,t[h].updater(m);else{var k=s(m,o);o.byIndex=c,t.splice(c,0,{identifier:u,updater:k,references:1})}n.push(u)}return n}function s(e,t){var i=t.domAPI(t);i.update(e);return function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap&&t.supports===e.supports&&t.layer===e.layer)return;i.update(e=t)}else i.remove()}}e.exports=function(e,s){var r=o(e=e||[],s=s||{});return function(e){e=e||[];for(var n=0;n<r.length;n++){var c=i(r[n]);t[c].references--}for(var a=o(e,s),l=0;l<r.length;l++){var d=i(r[l]);0===t[d].references&&(t[d].updater(),t.splice(d,1))}r=a}}},639:e=>{"use strict";var t,i=(t=[],function(e,i){return t[e]=i,t.filter(Boolean).join("\n")});function o(e,t,o,s){var r;if(o)r="";else{r="",s.supports&&(r+="@supports (".concat(s.supports,") {")),s.media&&(r+="@media ".concat(s.media," {"));var n=void 0!==s.layer;n&&(r+="@layer".concat(s.layer.length>0?" ".concat(s.layer):""," {")),r+=s.css,n&&(r+="}"),s.media&&(r+="}"),s.supports&&(r+="}")}if(e.styleSheet)e.styleSheet.cssText=i(t,r);else{var c=document.createTextNode(r),a=e.childNodes;a[t]&&e.removeChild(a[t]),a.length?e.insertBefore(c,a[t]):e.appendChild(c)}}var s={singleton:null,singletonCounter:0};e.exports=function(e){if("undefined"==typeof document)return{update:function(){},remove:function(){}};var t=s.singletonCounter++,i=s.singleton||(s.singleton=e.insertStyleElement(e));return{update:function(e){o(i,t,!1,e)},remove:function(e){o(i,t,!0,e)}}}},758:e=>{"use strict";e.exports=function(e){return e[1]}},767:(e,t,i)=>{"use strict";i.d(t,{A:()=>c});var o=i(758),s=i.n(o),r=i(935),n=i.n(r)()(s());n.push([e.id,".ck.ck-form.ck-emoji-picker-form{padding-bottom:0}.ck.ck-form.ck-emoji-picker-form .ck.ck-dropdown .ck-dropdown__button:not(:focus){border-color:transparent}",""]);const c=n},782:(e,t,i)=>{e.exports=i(237)("./src/core.js")},834:(e,t,i)=>{e.exports=i(237)("./src/typing.js")},913:(e,t,i)=>{"use strict";i.d(t,{A:()=>c});var o=i(758),s=i.n(o),r=i(935),n=i.n(r)()(s());n.push([e.id,".ck.ck-emoji{width:320px}.ck .ck.ck-emoji__search{align-items:center;display:flex;justify-content:space-between;padding:var(--ck-spacing-large);padding-bottom:var(--ck-spacing-medium)}.ck .ck.ck-emoji__search>.ck.ck-search{flex:1}.ck .ck-fake-emoji-selection{background:var(--ck-color-link-fake-selection)}.ck .ck-fake-emoji-selection_collapsed{border-right:1px solid var(--ck-color-base-text);height:100%;margin-right:-1px;outline:1px solid hsla(0,0%,100%,.5)}div.ck.ck-balloon-panel.ck-emoji-picker-balloon{z-index:calc(var( --ck-z-dialog ) + 1)}",""]);const c=n},922:(e,t,i)=>{"use strict";i.d(t,{A:()=>c});var o=i(758),s=i.n(o),r=i(935),n=i.n(r)()(s());n.push([e.id,":root{--ck-form-default-width:340px}.ck.ck-form{padding:0 0 var(--ck-spacing-large)}.ck.ck-form.ck-form_default-width{width:var(--ck-form-default-width)}.ck.ck-form:focus{outline:none}.ck.ck-form .ck.ck-input-number,.ck.ck-form .ck.ck-input-text{min-width:100%;width:0}.ck.ck-form .ck.ck-dropdown{min-width:100%}.ck.ck-form .ck.ck-dropdown .ck-dropdown__button:not(:focus){border:1px solid var(--ck-color-base-border)}.ck.ck-form .ck.ck-dropdown .ck-dropdown__button .ck-button__label{width:100%}@media screen and (max-width:600px){.ck.ck-form.ck-responsive-form .ck.ck-form__row.ck-form__row_with-submit{align-items:stretch;flex-direction:column;padding:0}.ck.ck-form.ck-responsive-form .ck.ck-form__row.ck-form__row_with-submit>.ck{margin:var(--ck-spacing-large) var(--ck-spacing-large) 0}.ck.ck-form.ck-responsive-form .ck.ck-form__row.ck-form__row_with-submit .ck-button_with-text{justify-content:center}.ck.ck-form.ck-responsive-form .ck.ck-form__row.ck-form__row_large-bottom-padding{padding-bottom:var(--ck-spacing-large)}}[dir=ltr] .ck.ck-form.ck-responsive-form>:not(:first-child),[dir=rtl] .ck.ck-form.ck-responsive-form>:not(:last-child){margin-left:0}",""]);const c=n},935:e=>{"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map(function(t){var i="",o=void 0!==t[5];return t[4]&&(i+="@supports (".concat(t[4],") {")),t[2]&&(i+="@media ".concat(t[2]," {")),o&&(i+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),i+=e(t),o&&(i+="}"),t[2]&&(i+="}"),t[4]&&(i+="}"),i}).join("")},t.i=function(e,i,o,s,r){"string"==typeof e&&(e=[[null,e,void 0]]);var n={};if(o)for(var c=0;c<this.length;c++){var a=this[c][0];null!=a&&(n[a]=!0)}for(var l=0;l<e.length;l++){var d=[].concat(e[l]);o&&n[d[0]]||(void 0!==r&&(void 0===d[5]||(d[1]="@layer".concat(d[5].length>0?" ".concat(d[5]):""," {").concat(d[1],"}")),d[5]=r),i&&(d[2]?(d[1]="@media ".concat(d[2]," {").concat(d[1],"}"),d[2]=i):d[2]=i),s&&(d[4]?(d[1]="@supports (".concat(d[4],") {").concat(d[1],"}"),d[4]=s):d[4]="".concat(s)),t.push(d))}},t}}},t={};function i(o){var s=t[o];if(void 0!==s)return s.exports;var r=t[o]={id:o,exports:{}};return e[o].call(r.exports,r,r.exports,i),r.exports}i.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return i.d(t,{a:t}),t},i.d=(e,t)=>{for(var o in t)i.o(t,o)&&!i.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:t[o]})},i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var o={};(()=>{"use strict";i.r(o),i.d(o,{Emoji:()=>Y,EmojiCommand:()=>b,EmojiMention:()=>g,EmojiPicker:()=>X,EmojiRepository:()=>h,EmojiUtils:()=>d});var e=i(782),t=i(584),s=i(834),r=i(146);function n(e){const t=function(){try{return document.createElement("canvas").getContext("2d",{willReadFrequently:!0})}catch{return null}}();if(!t)return!1;const i=20,o=Math.floor(12.5);t.font=o+"px Arial, Sans-Serif",t.textBaseline="top",t.canvas.width=40,t.canvas.height=25,t.clearRect(0,0,40,25),t.fillStyle="#FF0000",t.fillText(e,0,22),t.fillStyle="#0000FF",t.fillText(e,i,22);const s=t.getImageData(0,0,i,25).data,r=s.length;let n=0;for(;n<r&&!s[n+3];n+=4);if(n>=r)return!1;const c=i+n/4%i,a=Math.floor(n/4/i),l=t.getImageData(c,a,1,1).data;return s[n]===l[0]&&s[n+2]===l[2]&&!(t.measureText(e).width>=i)}const c={0:"default",1:"light",2:"medium-light",3:"medium",4:"medium-dark",5:"dark"},a={"π«©":16,"π«¨":15.1,"π« ":14,"πΆβπ«οΈ":13.1,"π§βπ»":12.1,"π₯°":11,"π€ͺ":5,"βοΈ":4,"π€£":3,"ππ½":2,"π":1,"π":.7,"π":.6};class l extends e.Plugin{static get pluginName(){return"EmojiUtils"}static get isOfficialPlugin(){return!0}isEmojiSupported(e,t,i){return!!(e.version<=t)&&(!this.hasZwj(e.emoji)||this.isEmojiZwjSupported(e,i))}getEmojiSupportedVersionByOs(){for(const[e,t]of Object.entries(a))if(l._isEmojiSupported(e))return t;return 0}hasZwj(e){return e.includes("β")}isEmojiZwjSupported(e,t){return this.getNodeWidth(t,e.emoji)<43.2}getNodeWidth(e,t){const i=document.createElement("span");i.textContent=t,e.appendChild(i);const o=i.offsetWidth;return e.removeChild(i),o}createEmojiWidthTestingContainer(){const e=document.createElement("div");return e.setAttribute("aria-hidden","true"),e.style.position="absolute",e.style.left="-9999px",e.style.whiteSpace="nowrap",e.style.fontSize="24px",e}normalizeEmojiSkinTone(e){const t={...e,skins:{default:e.emoji}};return e.skins&&e.skins.forEach(e=>{const i=c[e.tone];t.skins[i]=e.emoji}),t}isEmojiCategoryAllowed(e){return 2!==e.group}static _isEmojiSupported=n}const d=l;class u extends e.Plugin{_items;_url;_repositoryPromise;static get requires(){return[d]}static get pluginName(){return"EmojiRepository"}static get isOfficialPlugin(){return!0}constructor(e){super(e),e.config.define("emoji",{version:void 0,skinTone:"default",definitionsUrl:void 0,useCustomFont:!1}),this._url=this._getUrl(),this._repositoryPromise=new Promise(e=>{this._repositoryPromiseResolveCallback=e}),this._items=null}async init(){return this._warnAboutCdnUse(),await this._loadAndCacheEmoji(),this._items=this._getItems(),this._items?this._repositoryPromiseResolveCallback(!0):((0,t.logWarning)("emoji-repository-empty"),this._repositoryPromiseResolveCallback(!1))}getEmojiByQuery(e){if(!this._items)return[];return e.split(/\s/).filter(Boolean).some(e=>e.length>=2)?r.go(e,this._items,{threshold:.6,keys:["emoticon","annotation",t=>e.split(/\s/).filter(Boolean).flatMap(e=>t.tags?.filter(t=>t.startsWith(e))).join()]}).map(e=>e.obj):[]}getEmojiCategories(){const e=this._getItems();if(!e)return[];const{t}=this.editor.locale,i=[{title:t("Smileys & Expressions"),icon:"π",groupId:0},{title:t("Gestures & People"),icon:"π",groupId:1},{title:t("Animals & Nature"),icon:"π»",groupId:3},{title:t("Food & Drinks"),icon:"π",groupId:4},{title:t("Travel & Places"),icon:"π",groupId:5},{title:t("Activities"),icon:"π",groupId:6},{title:t("Objects"),icon:"π‘",groupId:7},{title:t("Symbols"),icon:"π΅",groupId:8},{title:t("Flags"),icon:"π",groupId:9}],o=function(e,t){const i={};for(let o=0;o<e.length;o++){const s=e[o],r=t(s);Object.hasOwn(i,r)||(i[r]=[]),i[r].push(s)}return i}(e,e=>e.group);return i.map(e=>({...e,items:o[e.groupId]}))}getSkinTones(){const{t:e}=this.editor.locale;return[{id:"default",icon:"π",tooltip:e("Default skin tone")},{id:"light",icon:"ππ»",tooltip:e("Light skin tone")},{id:"medium-light",icon:"ππΌ",tooltip:e("Medium Light skin tone")},{id:"medium",icon:"ππ½",tooltip:e("Medium skin tone")},{id:"medium-dark",icon:"ππΎ",tooltip:e("Medium Dark skin tone")},{id:"dark",icon:"ππΏ",tooltip:e("Dark skin tone")}]}isReady(){return this._repositoryPromise}_getUrl(){const{definitionsUrl:e,version:i}=this.editor.config.get("emoji");if(!e||"cdn"===e){const e=new URL("https://cdn.ckeditor.com/ckeditor5/data/emoji/{version}/en.json".replace("{version}",(i||16).toString()));return e.searchParams.set("editorVersion",t.version),e}return i&&(0,t.logWarning)("emoji-repository-redundant-version"),new URL(e)}_warnAboutCdnUse(){const e=this.editor,i=e.config.get("emoji"),o=e.config.get("licenseKey"),s=window[Symbol.for("cke distribution")];"GPL"!==o&&"cloud"!==s&&(i&&i.definitionsUrl||(0,t.logWarning)("emoji-repository-cdn-use"))}_getItems(){const e=u._results[this._url.href];return e&&e.length?e:null}async _loadAndCacheEmoji(){if(u._results[this._url.href])return;const e=await fetch(this._url,{cache:"force-cache"}).then(e=>e.ok?e.json():[]).catch(()=>[]);u._results[this._url.href]=this._normalizeEmoji(e)}_normalizeEmoji(e){const t=this.editor,i=t.config.get("emoji.useCustomFont"),o=t.plugins.get("EmojiUtils"),s=e.filter(e=>o.isEmojiCategoryAllowed(e));if(i)return s.map(e=>o.normalizeEmojiSkinTone(e));const r=o.getEmojiSupportedVersionByOs(),n=o.createEmojiWidthTestingContainer();document.body.appendChild(n);const c=s.filter(e=>o.isEmojiSupported(e,r,n)).map(e=>o.normalizeEmojiSkinTone(e));return n.remove(),c}static _results={}}const h=u,m=":",k=":__EMOJI_SHOW_ALL:",f=":__EMOJI_HINT:";class g extends e.Plugin{_emojiDropdownLimit;_skinTone;static get requires(){return[h,s.Typing,"Mention"]}static get pluginName(){return"EmojiMention"}static get isOfficialPlugin(){return!0}constructor(e){super(e),this.editor.config.define("emoji",{dropdownLimit:6}),this._emojiDropdownLimit=e.config.get("emoji.dropdownLimit"),this._skinTone=e.config.get("emoji.skinTone"),this._setupMentionConfiguration(e)}_setupMentionConfiguration(e){const i=e.config.get("mergeFields.prefix"),o=e.config.get("mention.feeds"),s=!!i&&i[0]===m;if(o.filter(e=>!e._isEmojiMarker).some(e=>e.marker===m)||s)return void(0,t.logWarning)("emoji-config-marker-already-used",{marker:m});if(o.some(e=>e._isEmojiMarker))return;const r={_isEmojiMarker:!0,marker:m,dropdownLimit:this._emojiDropdownLimit,itemRenderer:this._customItemRendererFactory(this.editor.t),feed:this._queryEmojiCallbackFactory()};this.editor.config.set("mention.feeds",[...o,r])}async init(){const e=this.editor;this.emojiPickerPlugin=e.plugins.has("EmojiPicker")?e.plugins.get("EmojiPicker"):null,this.emojiRepositoryPlugin=e.plugins.get("EmojiRepository"),this._isEmojiRepositoryAvailable=await this.emojiRepositoryPlugin.isReady(),this._isEmojiRepositoryAvailable&&e.once("ready",this._overrideMentionExecuteListener.bind(this))}_customItemRendererFactory(e){return t=>{const i=document.createElement("button");i.classList.add("ck"),i.classList.add("ck-button"),i.classList.add("ck-button_with-text"),i.id=`mention-list-item-id${t.id.slice(0,-1)}`,i.type="button",i.tabIndex=-1;const o=document.createElement("span");return o.classList.add("ck"),o.classList.add("ck-button__label"),i.appendChild(o),t.id===f?(i.classList.add("ck-list-item-button"),i.classList.add("ck-disabled"),o.textContent=e("Keep on typing to see the emoji.")):t.id===k?o.textContent=e("Show all emoji..."):o.textContent=`${t.text} ${t.id}`,i}}_overrideMentionExecuteListener(){const e=this.editor;e.commands.get("mention").on("execute",(t,i)=>{const o=i[0];if(o.marker===m&&(t.stop(),o.mention.id!==f))if(o.mention.id===k){const t=[...o.range.getItems()].filter(e=>e.is("$textProxy")).map(e=>e.data).reduce((e,t)=>e+t,"");e.model.change(t=>{e.model.deleteContent(t.createSelection(o.range))});const i=this.emojiPickerPlugin;i.showUI(t.slice(1)),setTimeout(()=>{i.emojiPickerView.focus()})}else e.execute("insertText",{text:o.mention.text,range:o.range})},{priority:"high"})}_queryEmojiCallbackFactory(){return e=>{if(e.startsWith(" "))return[];if(e.startsWith(m))return[];if(!this._isEmojiRepositoryAvailable)return[];const t=this.emojiRepositoryPlugin.getEmojiByQuery(e).map(e=>{let t=e.skins[this._skinTone]||e.skins.default;return this.emojiPickerPlugin&&(t=e.skins[this.emojiPickerPlugin.skinTone]||e.skins.default),{id:`:${e.annotation}:`,text:t}});if(!this.emojiPickerPlugin)return t.slice(0,this._emojiDropdownLimit);const i={id:e.length>1?k:f};return[...t.slice(0,this._emojiDropdownLimit-1),i]}}}var p=i(311),w=i(355);class b extends e.Command{refresh(){const e=this.editor.model,t=e.schema,i=e.document.selection;this.isEnabled=t.checkChild(i.getFirstPosition(),"$text")}execute(e=""){this.editor.plugins.get("EmojiPicker").showUI(e)}}var _=i(591),v=i.n(_),y=i(639),j=i.n(y),x=i(128),V=i.n(x),T=i(21),E=i.n(T),C=i(51),P=i.n(C),S=i(291),A={attributes:{"data-cke":!0}};A.setAttributes=E(),A.insert=V().bind(null,"head"),A.domAPI=j(),A.insertStyleElement=P();v()(S.A,A);S.A&&S.A.locals&&S.A.locals;class I extends p.View{tiles;focusTracker;keystrokes;emojiCategories;cachedTiles;_getEmojiByQuery;constructor(e,{categoryName:i,emojiCategories:o,getEmojiByQuery:s,skinTone:r}){super(e),this.set("isEmpty",!0),this.set("categoryName",i),this.set("skinTone",r),this.tiles=this.createCollection(),this.cachedTiles=this.createCollection(),this.focusTracker=new t.FocusTracker,this.keystrokes=new t.KeystrokeHandler,this._getEmojiByQuery=s,this.emojiCategories=o;const n=this.bindTemplate;this.setTemplate({tag:"div",children:[{tag:"div",attributes:{role:"grid",class:["ck","ck-emoji__grid"]},children:this.tiles}],attributes:{role:"tabpanel",class:["ck","ck-emoji__tiles",n.if("isEmpty","ck-hidden",e=>e)]}}),(0,p.addKeyboardHandlingForGrid)({keystrokeHandler:this.keystrokes,focusTracker:this.focusTracker,gridItems:this.tiles,numberOfColumns:()=>t.global.window.getComputedStyle(this.element.firstChild).getPropertyValue("grid-template-columns").split(" ").length,uiLanguageDirection:this.locale&&this.locale.uiLanguageDirection})}render(){super.render(),this.keystrokes.listenTo(this.element)}destroy(){super.destroy(),this.keystrokes.destroy(),this.focusTracker.destroy()}focus(){const e=this.tiles.first;e&&e.focus()}filter(e){const{matchingItems:t,allItems:i}=e?this._getItemsByQuery(e.source):this._getItemsByCategory();return this._updateGrid(t),this.set("isEmpty",0===t.length),{resultsCount:t.length,totalItemsCount:i.length}}_getItemsByQuery(e){return{matchingItems:this._getEmojiByQuery(e),allItems:this.emojiCategories.flatMap(e=>e.items)}}_getItemsByCategory(){const e=this.emojiCategories.find(e=>e.title===this.categoryName),{items:t}=e;return{matchingItems:t,allItems:t}}_updateGrid(e){[...this.tiles].forEach(e=>{this.focusTracker.remove(e),this.tiles.remove(e)}),e.map(e=>{const t=e.skins[this.skinTone]||e.skins.default;return this.cachedTiles.get(t)||this._createTile(t,e.annotation)}).forEach(e=>{this.tiles.add(e),this.focusTracker.add(e)})}_createTile(e,t){const i=new p.ButtonView(this.locale);return i.viewUid=e,i.extendTemplate({attributes:{class:["ck-emoji__tile"]}}),i.set({label:e,tooltip:t,withText:!0,ariaLabel:t,ariaLabelledBy:void 0}),i.on("execute",()=>{this.fire("execute",{name:t,emoji:e})}),this.cachedTiles.add(i),i}}var L=i(223),B={attributes:{"data-cke":!0}};B.setAttributes=E(),B.insert=V().bind(null,"head"),B.domAPI=j(),B.insertStyleElement=P();v()(L.A,B);L.A&&L.A.locals&&L.A.locals;class F extends p.View{focusTracker;keystrokes;focusCycler;buttonViews;constructor(e,{emojiCategories:i,categoryName:o}){super(e),this.buttonViews=this.createCollection(i.map(e=>this._createCategoryButton(e))),this.focusTracker=new t.FocusTracker,this.keystrokes=new t.KeystrokeHandler,this.focusCycler=new p.FocusCycler({focusables:this.buttonViews,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"arrowleft",focusNext:"arrowright"}}),this.setTemplate({tag:"div",attributes:{class:["ck","ck-emoji__categories-list"],role:"tablist"},children:this.buttonViews}),this.on("change:categoryName",(e,t,i,o)=>{const s=this.buttonViews.find(e=>e.tooltip===o);s&&(s.isOn=!1);this.buttonViews.find(e=>e.tooltip===i).isOn=!0}),this.set("categoryName",o)}render(){super.render(),this.buttonViews.forEach(e=>{this.focusTracker.add(e)}),this.keystrokes.listenTo(this.element)}destroy(){super.destroy(),this.focusTracker.destroy(),this.keystrokes.destroy(),this.buttonViews.destroy()}focus(){this.buttonViews.first.focus()}enableCategories(){this.buttonViews.forEach(e=>{e.isEnabled=!0})}disableCategories(){this.buttonViews.forEach(e=>{e.set({class:"",isEnabled:!1,isOn:!1})})}_createCategoryButton(e){const t=new p.ButtonView,i=t.bindTemplate;return t.extendTemplate({attributes:{"aria-selected":i.to("isOn",e=>e.toString()),class:["ck-emoji__category-item"]}}),t.set({ariaLabel:e.title,label:e.icon,role:"tab",tooltip:e.title,withText:!0,ariaLabelledBy:void 0}),t.on("execute",()=>{this.categoryName=e.title}),t.on("change:isEnabled",()=>{t.isEnabled&&t.tooltip===this.categoryName&&(t.isOn=!0)}),t}}function M(e){if(null==e)return"";if(Array.isArray(e))return e.map(M).join(",");const t=String(e);return"0"===t&&Object.is(Number(e),-0)?"-0":t}class O extends p.View{inputView;gridView;constructor(e,{gridView:t,resultsView:i}){super(e),this.gridView=t;const o=e.t;this.inputView=new p.SearchTextView(this.locale,{queryView:{label:o("Find an emoji (min. 2 characters)"),creator:p.createLabeledInputText},filteredView:this.gridView,infoView:{instance:i}}),this.setTemplate({tag:"div",attributes:{class:["ck","ck-search"],tabindex:"-1"},children:[this.inputView.queryView]}),this.inputView.delegate("search").to(this)}destroy(){super.destroy(),this.inputView.destroy()}search(e){const t=e?new RegExp(function(e){return e.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&")}(M(e)),"ig"):null;const i=this.gridView.filter(t);this.inputView.fire("search",{query:e,...i})}setInputValue(e){e?this.inputView.queryView.fieldView.value=e:this.inputView.queryView.fieldView.reset()}getInputValue(){return this.inputView.queryView.fieldView.element.value}focus(){this.inputView.focus()}}var N=i(59),R={attributes:{"data-cke":!0}};R.setAttributes=E(),R.insert=V().bind(null,"head"),R.domAPI=j(),R.insertStyleElement=P();v()(N.A,R);N.A&&N.A.locals&&N.A.locals;class D extends p.View{dropdownView;_skinTones;constructor(e,{skinTone:i,skinTones:o}){super(e),this.set("skinTone",i),this._skinTones=o;const s=(0,e.t)("Select skin tone"),r=(0,p.createDropdown)(e),n=new t.Collection;for(const{id:e,icon:t,tooltip:i}of this._skinTones){const o={type:"button",model:new p.ViewModel({value:e,label:t,ariaLabel:i,tooltip:i,tooltipPosition:"e",role:"menuitemradio",withText:!0,ariaLabelledBy:void 0})};o.model.bind("isOn").to(this,"skinTone",t=>t===e),n.add(o)}(0,p.addListToDropdown)(r,n,{ariaLabel:s,role:"menu"}),r.buttonView.set({label:this._getSkinTone().icon,ariaLabel:s,ariaLabelledBy:void 0,isOn:!1,withText:!0,tooltip:s}),this.dropdownView=r,this.listenTo(r,"execute",e=>{this.skinTone=e.source.value}),r.buttonView.bind("label").to(this,"skinTone",()=>this._getSkinTone().icon),r.buttonView.bind("ariaLabel").to(this,"skinTone",()=>`${this._getSkinTone().tooltip}, ${s}`),this.setTemplate({tag:"div",attributes:{class:["ck","ck-emoji__skin-tone"]},children:[r]})}focus(){this.dropdownView.buttonView.focus()}_getSkinTone(){return this._skinTones.find(e=>e.id===this.skinTone)}}class z extends p.View{items;focusTracker;keystrokes;focusCycler;searchView;toneView;categoriesView;gridView;infoView;constructor(e,{emojiCategories:i,getEmojiByQuery:o,skinTone:s,skinTones:r}){super(e);const n=i[0].title;this.gridView=new I(e,{categoryName:n,emojiCategories:i,getEmojiByQuery:o,skinTone:s}),this.infoView=new p.SearchInfoView,this.searchView=new O(e,{gridView:this.gridView,resultsView:this.infoView}),this.categoriesView=new F(e,{emojiCategories:i,categoryName:n}),this.toneView=new D(e,{skinTone:s,skinTones:r}),this.items=this.createCollection([this.searchView,this.toneView,this.categoriesView,this.gridView,this.infoView]),this.focusTracker=new t.FocusTracker,this.keystrokes=new t.KeystrokeHandler,this.focusCycler=new p.FocusCycler({focusables:this.items,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}}),this.setTemplate({tag:"div",children:[{tag:"div",children:[this.searchView,this.toneView],attributes:{class:["ck","ck-emoji__search"]}},this.categoriesView,this.gridView,{tag:"div",children:[this.infoView],attributes:{class:["ck","ck-search__results"]}}],attributes:{tabindex:"-1",class:["ck","ck-emoji","ck-search"]}}),this._setupEventListeners()}render(){super.render(),this.focusTracker.add(this.searchView.element),this.focusTracker.add(this.toneView.element),this.focusTracker.add(this.categoriesView.element),this.focusTracker.add(this.gridView.element),this.focusTracker.add(this.infoView.element),this.keystrokes.listenTo(this.element)}destroy(){super.destroy(),this.focusTracker.destroy(),this.keystrokes.destroy()}focus(){this.searchView.focus()}_setupEventListeners(){const e=this.locale.t;this.searchView.on("search",(e,t)=>{t.query?this.categoriesView.disableCategories():this.categoriesView.enableCategories()}),this.searchView.on("search",(t,i)=>{1===i.query.length?this.infoView.set({primaryText:e("Keep on typing to see the emoji."),secondaryText:e("The query must contain at least two characters."),isVisible:!0}):i.resultsCount?this.infoView.set({isVisible:!1}):this.infoView.set({primaryText:e('No emojis were found matching "%0".',i.query),secondaryText:e("Please try a different phrase or check the spelling."),isVisible:!0})}),this.searchView.on("search",()=>{this.fire("update"),this.gridView.element.scrollTo(0,0)}),this.categoriesView.on("change:categoryName",(e,t,i)=>{this.gridView.categoryName=i,this.searchView.search("")}),this.toneView.on("change:skinTone",(e,t,i)=>{this.gridView.skinTone=i,this.searchView.search(this.searchView.getInputValue())})}}var U=i(501),q={attributes:{"data-cke":!0}};q.setAttributes=E(),q.insert=V().bind(null,"head"),q.domAPI=j(),q.insertStyleElement=P();v()(U.A,q);U.A&&U.A.locals&&U.A.locals;var H=i(922),K={attributes:{"data-cke":!0}};K.setAttributes=E(),K.insert=V().bind(null,"head"),K.domAPI=j(),K.insertStyleElement=P();v()(H.A,K);H.A&&H.A.locals&&H.A.locals;var W=i(767),Q={attributes:{"data-cke":!0}};Q.setAttributes=E(),Q.insert=V().bind(null,"head"),Q.domAPI=j(),Q.insertStyleElement=P();v()(W.A,Q);W.A&&W.A.locals&&W.A.locals;class $ extends p.View{backButtonView;focusTracker=new t.FocusTracker;keystrokes=new t.KeystrokeHandler;children;_focusables=new p.ViewCollection;_focusCycler;constructor(e){super(e),this.backButtonView=this._createBackButton(),this.children=this.createCollection([this._createHeaderView()]),this._focusCycler=new p.FocusCycler({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}}),this.setTemplate({tag:"div",attributes:{class:["ck","ck-form","ck-emoji-picker-form","ck-responsive-form"],tabindex:"-1"},children:this.children})}render(){super.render();[...this.children.filter(p.isFocusable),this.backButtonView].forEach(e=>{this._focusables.add(e),this.focusTracker.add(e.element),(0,p.isViewWithFocusCycler)(e)&&this._focusCycler.chain(e.focusCycler)}),this.keystrokes.listenTo(this.element)}destroy(){super.destroy(),this.focusTracker.destroy(),this.keystrokes.destroy()}focus(){this._focusCycler.focusFirst()}_createBackButton(){const e=this.locale.t,t=new p.ButtonView(this.locale);return t.set({class:"ck-button-back",label:e("Back"),icon:w.IconPreviousArrow,tooltip:!0}),t.delegate("execute").to(this,"cancel"),t}_createHeaderView(){const e=this.locale.t,t=new p.FormHeaderView(this.locale,{label:e("Emoji picker")});return t.children.add(this.backButtonView,0),t}}var G=i(913),Z={attributes:{"data-cke":!0}};Z.setAttributes=E(),Z.insert=V().bind(null,"head"),Z.domAPI=j(),Z.insertStyleElement=P();v()(G.A,Z);G.A&&G.A.locals&&G.A.locals;const J="emoji-picker";class X extends e.Plugin{static get requires(){return[h,p.ContextualBalloon,p.Dialog,s.Typing]}static get pluginName(){return"EmojiPicker"}static get isOfficialPlugin(){return!0}async init(){const e=this.editor;if(this.balloonPlugin=e.plugins.get("ContextualBalloon"),this.emojiRepositoryPlugin=e.plugins.get("EmojiRepository"),!await this.emojiRepositoryPlugin.isReady())return;const t=new b(e);e.commands.add("emoji",t),e.ui.componentFactory.add("emoji",()=>{const e=this._createButton(p.ButtonView,t);return e.set({tooltip:!0}),e}),e.ui.componentFactory.add("menuBar:emoji",()=>this._createButton(p.MenuBarMenuListItemButtonView,t)),this._setupConversion()}destroy(){super.destroy(),this.emojiPickerView&&this.emojiPickerView.destroy()}get skinTone(){return this.emojiPickerView?this.emojiPickerView.gridView.skinTone:this.editor.config.get("emoji.skinTone")}showUI(e=""){this._showFakeVisualSelection(),this.emojiPickerView||(this.emojiPickerView=this._createEmojiPickerView()),e&&this.emojiPickerView.searchView.setInputValue(e),this.emojiPickerView.searchView.search(e),this.emojiPickerFormView||(this.emojiPickerFormView=this._createEmojiPickerFormView()),this.balloonPlugin.hasView(this.emojiPickerFormView)||(this.emojiPickerFormView.backButtonView.isVisible=!!this.balloonPlugin.visibleView,this.balloonPlugin.add({view:this.emojiPickerFormView,position:this._getBalloonPositionData(),balloonClassName:"ck-emoji-picker-balloon"})),this.emojiPickerView.focus()}_createButton(e,t){const i=new e(this.editor.locale),o=this.editor.locale.t;return i.bind("isEnabled").to(t,"isEnabled"),i.set({label:o("Emoji"),icon:w.IconEmoji,isToggleable:!0}),i.on("execute",()=>{this.editor.editing.view.scrollToTheSelection(),this.showUI()}),i}_createEmojiPickerView(){const e=new z(this.editor.locale,{emojiCategories:this.emojiRepositoryPlugin.getEmojiCategories(),skinTone:this.editor.config.get("emoji.skinTone"),skinTones:this.emojiRepositoryPlugin.getSkinTones(),getEmojiByQuery:e=>this.emojiRepositoryPlugin.getEmojiByQuery(e)});return this.listenTo(e.gridView,"execute",(e,t)=>{const i=this.editor,o=t.emoji;this._hideUI(),i.execute("insertText",{text:o})}),e}_createEmojiPickerFormView(){const e=new $(this.editor.locale);return e.children.add(this.emojiPickerView),this.listenTo(this.emojiPickerView,"update",()=>{this.balloonPlugin.visibleView===e&&this.balloonPlugin.updatePosition()}),this.listenTo(e,"cancel",()=>{this._hideUI()}),e.keystrokes.set("Esc",(e,t)=>{this._hideUI(),t()}),(0,p.clickOutsideHandler)({emitter:e,contextElements:[this.balloonPlugin.view.element],callback:()=>{this._hideUI(!1)},activator:()=>this.balloonPlugin.visibleView===e}),e}_hideUI(e=!0){this.balloonPlugin.remove(this.emojiPickerFormView),this.emojiPickerView.searchView.setInputValue(""),e&&this.editor.editing.view.focus(),this._hideFakeVisualSelection()}_setupConversion(){const e=this.editor;e.conversion.for("editingDowncast").markerToHighlight({model:J,view:{classes:["ck-fake-emoji-selection"]}}),e.conversion.for("editingDowncast").markerToElement({model:J,view:(e,{writer:t})=>{if(!e.markerRange.isCollapsed)return null;const i=t.createUIElement("span");return t.addClass(["ck-fake-emoji-selection","ck-fake-emoji-selection_collapsed"],i),i}})}_getBalloonPositionData(){const e=this.editor.editing.view,t=e.document;return{target:()=>e.domConverter.viewRangeToDom(t.selection.getFirstRange())}}_showFakeVisualSelection(){const e=this.editor.model;e.change(t=>{const i=e.document.selection.getFirstRange();if(e.markers.has(J))t.updateMarker(J,{range:i});else if(i.start.isAtEnd){const o=i.start.getLastMatchingPosition(({item:t})=>!e.schema.isContent(t),{boundaries:i});t.addMarker(J,{usingOperation:!1,affectsData:!1,range:t.createRange(o,i.end)})}else t.addMarker(J,{usingOperation:!1,affectsData:!1,range:i})})}_hideFakeVisualSelection(){const e=this.editor.model;e.markers.has(J)&&e.change(e=>{e.removeMarker(J)})}}class Y extends e.Plugin{static get requires(){return[g,X]}static get pluginName(){return"Emoji"}static get isOfficialPlugin(){return!0}}})(),(window.CKEditor5=window.CKEditor5||{}).emoji=o})();
|
|
5
|
+
*/(()=>{var e={21:e=>{"use strict";e.exports=function(e,t){Object.keys(t).forEach((function(i){e.setAttribute(i,t[i])}))}},51:e=>{"use strict";e.exports=function(e){var t=document.createElement("style");return e.setAttributes(t,e.attributes),e.insert(t,e.options),t}},59:(e,t,i)=>{"use strict";i.d(t,{A:()=>c});var o=i(758),s=i.n(o),r=i(935),n=i.n(r)()(s());n.push([e.id,".ck.ck-emoji__skin-tone{margin-left:var(--ck-spacing-standard)}.ck.ck-emoji__skin-tone>.ck.ck-dropdown .ck.ck-list__item{min-width:1em}.ck.ck-emoji__skin-tone>.ck.ck-dropdown .ck-button.ck-dropdown__button .ck-button__label{width:auto}",""]);const c=n},128:e=>{"use strict";var t={};e.exports=function(e,i){var o=function(e){if(void 0===t[e]){var i=document.querySelector(e);if(window.HTMLIFrameElement&&i instanceof window.HTMLIFrameElement)try{i=i.contentDocument.head}catch(e){i=null}t[e]=i}return t[e]}(e);if(!o)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");o.appendChild(i)}},146:function(e,t){var i,o,s;o=[],void 0===(s="function"==typeof(i=e=>{"use strict";var t=e=>{"number"==typeof e?e=""+e:"string"!=typeof e&&(e="");var t=k(e);return s(e,{_targetLower:t._lower,_targetLowerCodes:t.lowerCodes,_bitflags:t.bitflags})};class i{get indexes(){return this._indexes.slice(0,this._indexes.len).sort(((e,t)=>e-t))}set indexes(e){return this._indexes=e}highlight(e,t){return((e,t="<b>",i="</b>")=>{for(var o="function"==typeof t?t:void 0,s=e.target,r=s.length,n=e.indexes,c="",a=0,l=0,d=!1,u=[],h=0;h<r;++h){var m=s[h];if(n[l]===h){if(++l,d||(d=!0,o?(u.push(c),c=""):c+=t),l===n.length){o?(c+=m,u.push(o(c,a++)),c="",u.push(s.substr(h+1))):c+=m+i+s.substr(h+1);break}}else d&&(d=!1,o?(u.push(o(c,a++)),c=""):c+=i);c+=m}return o?u:c})(this,e,t)}get score(){return r(this._score)}set score(e){this._score=n(e)}}class o extends Array{get score(){return r(this._score)}set score(e){this._score=n(e)}}var s=(e,t)=>{const o=new i;return o.target=e,o.obj=t.obj??B,o._score=t._score??C,o._indexes=t._indexes??[],o._targetLower=t._targetLower??"",o._targetLowerCodes=t._targetLowerCodes??B,o._nextBeginningIndexes=t._nextBeginningIndexes??B,o._bitflags=t._bitflags??0,o},r=e=>e===C?0:e>1?e:Math.E**(-2*((1-e)**.04307-1)),n=e=>0===e?C:e>1?e:1-Math.pow(Math.log(e)/-2+1,1/.04307),c=e=>{"number"==typeof e?e=""+e:"string"!=typeof e&&(e=""),e=e.trim();var t=k(e),i=[];if(t.containsSpace){var o=e.split(/\s+/);o=[...new Set(o)];for(var s=0;s<o.length;s++)if(""!==o[s]){var r=k(o[s]);i.push({lowerCodes:r.lowerCodes,_lower:o[s].toLowerCase(),containsSpace:!1})}}return{lowerCodes:t.lowerCodes,_lower:t._lower,containsSpace:t.containsSpace,bitflags:t.bitflags,spaceSearches:i}},a=e=>{if(e.length>999)return t(e);var i=g.get(e);return void 0!==i||(i=t(e),g.set(e,i)),i},l=e=>{if(e.length>999)return c(e);var t=p.get(e);return void 0!==t||(t=c(e),p.set(e,t)),t},d=(e,t)=>{var i=[];i.total=e.length;var r=t?.limit||E;if(t?.key)for(var n=0;n<e.length;n++){var c=e[n];if((h=V(c,t.key))!=B){T(h)||(h=a(h));var l=s(h.target,{_score:h._score,obj:c});if(i.push(l),i.length>=r)return i}}else if(t?.keys)for(n=0;n<e.length;n++){c=e[n];for(var d=new o(t.keys.length),u=t.keys.length-1;u>=0;--u)(h=V(c,t.keys[u]))?(T(h)||(h=a(h)),h._score=C,h._indexes.len=0,d[u]=h):d[u]=F;if(d.obj=c,d._score=C,i.push(d),i.length>=r)return i}else for(n=0;n<e.length;n++){var h;if((h=e[n])!=B&&(T(h)||(h=a(h)),h._score=C,h._indexes.len=0,i.push(h),i.length>=r))return i}return i},u=(e,t,o=!1,s=!1)=>{if(!1===o&&e.containsSpace)return h(e,t,s);for(var r=e._lower,n=e.lowerCodes,c=n[0],a=t._targetLowerCodes,l=n.length,d=a.length,u=0,m=0,k=0;;){if(c===a[m]){if(w[k++]=m,++u===l)break;c=n[u]}if(++m>=d)return B}u=0;var g=!1,p=0,_=t._nextBeginningIndexes;_===B&&(_=t._nextBeginningIndexes=f(t.target));var v=0;if((m=0===w[0]?0:_[w[0]-1])!==d)for(;;)if(m>=d){if(u<=0)break;if(++v>200)break;--u;var y=b[--p];m=_[y]}else if(n[u]===a[m]){if(b[p++]=m,++u===l){g=!0;break}++m}else m=_[m];var j=l<=1?-1:t._targetLower.indexOf(r,w[0]),x=!!~j,V=!!x&&(0===j||t._nextBeginningIndexes[j-1]===j);if(x&&!V)for(var T=0;T<_.length;T=_[T])if(!(T<=j)){for(var E=0;E<l&&n[E]===t._targetLowerCodes[T+E];E++);if(E===l){j=T,V=!0;break}}var C=e=>{for(var t=0,i=0,o=1;o<l;++o)e[o]-e[o-1]!==1&&(t-=e[o],++i);if(t-=(e[l-1]-e[0]-(l-1)+12)*i,0!==e[0]&&(t-=e[0]*e[0]*.2),g){var s=1;for(o=_[0];o<d;o=_[o])++s;s>24&&(t*=10*(s-24))}else t*=1e3;return t-=(d-l)/2,x&&(t/=1+l*l*1),V&&(t/=1+l*l*1),t-=(d-l)/2};if(g)if(V){for(T=0;T<l;++T)w[T]=j+T;P=w,S=C(w)}else P=b,S=C(b);else{if(x)for(var T=0;T<l;++T)w[T]=j+T;var P,S=C(P=w)}for(t._score=S,T=0;T<l;++T)t._indexes[T]=P[T];t._indexes.len=l;const A=new i;return A.target=t.target,A._score=t._score,A._indexes=t._indexes,A},h=(e,t,i)=>{for(var o=new Set,s=0,r=B,n=0,c=e.spaceSearches,a=c.length,l=0,d=()=>{for(let e=l-1;e>=0;e--)t._nextBeginningIndexes[_[2*e+0]]=_[2*e+1]},h=!1,m=0;m<a;++m){y[m]=C;var k=c[m];if(r=u(k,t),i){if(r===B)continue;h=!0}else if(r===B)return d(),B;if(m!==a-1){var f=r._indexes,g=!0;for(let e=0;e<f.len-1;e++)if(f[e+1]-f[e]!==1){g=!1;break}if(g){var p=f[f.len-1]+1,w=t._nextBeginningIndexes[p-1];for(let e=p-1;e>=0&&w===t._nextBeginningIndexes[e];e--)t._nextBeginningIndexes[e]=p,_[2*l+0]=e,_[2*l+1]=w,l++}}s+=r._score/a,y[m]=r._score/a,r._indexes[0]<n&&(s-=2*(n-r._indexes[0])),n=r._indexes[0];for(var b=0;b<r._indexes.len;++b)o.add(r._indexes[b])}if(i&&!h)return B;d();var v=u(e,t,!0);if(v!==B&&v._score>s){if(i)for(m=0;m<a;++m)y[m]=v._score/a;return v}i&&(r=t),r._score=s,m=0;for(let e of o)r._indexes[m++]=e;return r._indexes.len=m,r},m=e=>e.replace(/\p{Script=Latin}+/gu,(e=>e.normalize("NFD"))).replace(/[\u0300-\u036f]/g,""),k=e=>{for(var t=(e=m(e)).length,i=e.toLowerCase(),o=[],s=0,r=!1,n=0;n<t;++n){var c=o[n]=i.charCodeAt(n);32!==c?s|=1<<(c>=97&&c<=122?c-97:c>=48&&c<=57?26:c<=127?30:31):r=!0}return{lowerCodes:o,bitflags:s,containsSpace:r,_lower:i}},f=e=>{for(var t=(e=m(e)).length,i=(e=>{for(var t=e.length,i=[],o=0,s=!1,r=!1,n=0;n<t;++n){var c=e.charCodeAt(n),a=c>=65&&c<=90,l=a||c>=97&&c<=122||c>=48&&c<=57,d=a&&!s||!r||!l;s=a,r=l,d&&(i[o++]=n)}return i})(e),o=[],s=i[0],r=0,n=0;n<t;++n)s>n?o[n]=s:(s=i[++r],o[n]=void 0===s?t:s);return o},g=new Map,p=new Map,w=[],b=[],_=[],v=[],y=[],j=[],x=[],V=(e,t)=>{var i=e[t];if(void 0!==i)return i;if("function"==typeof t)return t(e);var o=t;Array.isArray(t)||(o=t.split("."));for(var s=o.length,r=-1;e&&++r<s;)e=e[o[r]];return e},T=e=>"object"==typeof e&&"number"==typeof e._bitflags,E=1/0,C=-E,P=[];P.total=0;var S,A,I,L,B=null,F=t(""),M=(S=[],A=0,L=e=>{for(var t=0,i=S[t],o=1;o<A;){var s=o+1;t=o,s<A&&S[s]._score<S[o]._score&&(t=s),S[t-1>>1]=S[t],o=1+(t<<1)}for(var r=t-1>>1;t>0&&i._score<S[r]._score;r=(t=r)-1>>1)S[t]=S[r];S[t]=i},(I={}).add=e=>{var t=A;S[A++]=e;for(var i=t-1>>1;t>0&&e._score<S[i]._score;i=(t=i)-1>>1)S[t]=S[i];S[t]=e},I.poll=e=>{if(0!==A){var t=S[0];return S[0]=S[--A],L(),t}},I.peek=e=>{if(0!==A)return S[0]},I.replaceTop=e=>{S[0]=e,L()},I);return{single:(e,t)=>{if(!e||!t)return B;var i=l(e);T(t)||(t=a(t));var o=i.bitflags;return(o&t._bitflags)!==o?B:u(i,t)},go:(e,t,i)=>{if(!e)return i?.all?d(t,i):P;var s=l(e),r=s.bitflags,c=s.containsSpace,h=n(i?.threshold||0),m=i?.limit||E,k=0,f=0,g=t.length;function p(e){k<m?(M.add(e),++k):(++f,e._score>M.peek()._score&&M.replaceTop(e))}if(i?.key)for(var w=i.key,b=0;b<g;++b){var _=t[b];(z=V(_,w))&&(T(z)||(z=a(z)),(r&z._bitflags)===r&&(U=u(s,z))!==B&&(U._score<h||(U.obj=_,p(U))))}else if(i?.keys){var S=i.keys,A=S.length;e:for(b=0;b<g;++b){_=t[b];for(var I=0,L=0;L<A;++L)w=S[L],(z=V(_,w))?(T(z)||(z=a(z)),j[L]=z,I|=z._bitflags):j[L]=F;if((r&I)===r){if(c)for(let e=0;e<s.spaceSearches.length;e++)v[e]=C;for(L=0;L<A;++L)if((z=j[L])!==F)if(x[L]=u(s,z,!1,c),x[L]!==B){if(c)for(let e=0;e<s.spaceSearches.length;e++)y[e]>-1e3&&v[e]>C&&(D=(v[e]+y[e])/4)>v[e]&&(v[e]=D),y[e]>v[e]&&(v[e]=y[e])}else x[L]=F;else x[L]=F;if(c){for(let e=0;e<s.spaceSearches.length;e++)if(v[e]===C)continue e}else{var O=!1;for(let e=0;e<A;e++)if(x[e]._score!==C){O=!0;break}if(!O)continue}var N=new o(A);for(let e=0;e<A;e++)N[e]=x[e];if(c){var R=0;for(let e=0;e<s.spaceSearches.length;e++)R+=v[e]}else{R=C;for(let e=0;e<A;e++){var D;(U=N[e])._score>-1e3&&R>C&&(D=(R+U._score)/4)>R&&(R=D),U._score>R&&(R=U._score)}}if(N.obj=_,N._score=R,i?.scoreFn){if(!(R=i.scoreFn(N)))continue;R=n(R),N._score=R}R<h||p(N)}}}else for(b=0;b<g;++b){var z,U;(z=t[b])&&(T(z)||(z=a(z)),(r&z._bitflags)===r&&(U=u(s,z))!==B&&(U._score<h||p(U)))}if(0===k)return P;var q=new Array(k);for(b=k-1;b>=0;--b)q[b]=M.poll();return q.total=k+f,q},prepare:t,cleanup:()=>{g.clear(),p.clear()}}})?i.apply(t,o):i)||(e.exports=s)},223:(e,t,i)=>{"use strict";i.d(t,{A:()=>c});var o=i(758),s=i.n(o),r=i(935),n=i.n(r)()(s());n.push([e.id,".ck.ck-emoji__categories-list{display:flex;justify-content:space-between;margin:0 var(--ck-spacing-large)}.ck.ck-emoji__categories-list>.ck.ck-button.ck-button_with-text{border-width:0;border-bottom:2px solid transparent;font-size:var(--ck-font-size-big);min-height:var(--ck-font-size-big);min-width:var(--ck-font-size-big);padding:0}.ck.ck-emoji__categories-list>.ck.ck-button.ck-button_with-text.ck-emoji__category-item.ck-on{border-bottom-color:var(--ck-color-base-active)}.ck.ck-emoji__categories-list>.ck.ck-button.ck-button_with-text>span{margin:auto}",""]);const c=n},237:e=>{"use strict";e.exports=CKEditor5.dll},291:(e,t,i)=>{"use strict";i.d(t,{A:()=>c});var o=i(758),s=i.n(o),r=i(935),n=i.n(r)()(s());n.push([e.id,":root{--ck-emoji-grid-tile-size:27px}.ck.ck-emoji .ck.ck-emoji__tiles{border-top:1px solid var(--ck-color-base-border);max-height:min(265px,40vh);max-width:100%;overflow-x:hidden;overflow-y:auto}.ck.ck-emoji .ck.ck-emoji__tiles .ck-emoji__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--ck-emoji-grid-tile-size),1fr));margin:var(--ck-spacing-standard) var(--ck-spacing-large);grid-gap:var(--ck-spacing-small)}.ck.ck-emoji .ck.ck-emoji__tiles .ck-emoji__tile{border:0;font-size:1.5em;height:var(--ck-emoji-grid-tile-size);min-height:var(--ck-emoji-grid-tile-size);min-width:var(--ck-emoji-grid-tile-size);padding:0;transition:box-shadow .2s ease;width:var(--ck-emoji-grid-tile-size)}@media (prefers-reduced-motion:reduce){.ck.ck-emoji .ck.ck-emoji__tiles .ck-emoji__tile{transition:none}}.ck.ck-emoji .ck.ck-emoji__tiles .ck-emoji__tile:focus:not(.ck-disabled),.ck.ck-emoji .ck.ck-emoji__tiles .ck-emoji__tile:hover:not(.ck-disabled){border:0;box-shadow:inset 0 0 0 1px var(--ck-color-base-background),0 0 0 2px var(--ck-color-focus-border)}.ck.ck-emoji .ck.ck-emoji__tiles .ck-emoji__tile .ck-button__label{line-height:var(--ck-emoji-grid-tile-size);text-align:center;width:100%}",""]);const c=n},311:(e,t,i)=>{e.exports=i(237)("./src/ui.js")},355:(e,t,i)=>{e.exports=i(237)("./src/icons.js")},501:(e,t,i)=>{"use strict";i.d(t,{A:()=>c});var o=i(758),s=i.n(o),r=i(935),n=i.n(r)()(s());n.push([e.id,'.ck-vertical-form .ck-button:after{bottom:-1px;content:"";position:absolute;right:-1px;top:-1px;width:0;z-index:1}.ck-vertical-form .ck-button:focus:after{display:none}@media screen and (max-width:600px){.ck.ck-responsive-form .ck-button:after{bottom:-1px;content:"";position:absolute;right:-1px;top:-1px;width:0;z-index:1}.ck.ck-responsive-form .ck-button:focus:after{display:none}}.ck-vertical-form>.ck-button:nth-last-child(2):after{border-right:1px solid var(--ck-color-base-border)}.ck.ck-responsive-form{padding:var(--ck-spacing-large)}.ck.ck-responsive-form:focus{outline:none}[dir=ltr] .ck.ck-responsive-form>:not(:first-child),[dir=rtl] .ck.ck-responsive-form>:not(:last-child){margin-left:var(--ck-spacing-standard)}@media screen and (max-width:600px){.ck.ck-responsive-form{padding:0;width:calc(var(--ck-input-width)*.8)}.ck.ck-responsive-form .ck-labeled-field-view{margin:var(--ck-spacing-large) var(--ck-spacing-large) 0}.ck.ck-responsive-form .ck-labeled-field-view .ck-input-number,.ck.ck-responsive-form .ck-labeled-field-view .ck-input-text{min-width:0;width:100%}.ck.ck-responsive-form .ck-labeled-field-view .ck-labeled-field-view__error{white-space:normal}.ck.ck-responsive-form>.ck-button:nth-last-child(2):after{border-right:1px solid var(--ck-color-base-border)}.ck.ck-responsive-form>.ck-button:last-child,.ck.ck-responsive-form>.ck-button:nth-last-child(2){border-radius:0;margin-top:var(--ck-spacing-large);padding:var(--ck-spacing-standard)}.ck.ck-responsive-form>.ck-button:last-child:not(:focus),.ck.ck-responsive-form>.ck-button:nth-last-child(2):not(:focus){border-top:1px solid var(--ck-color-base-border)}[dir=ltr] .ck.ck-responsive-form>.ck-button:last-child,[dir=ltr] .ck.ck-responsive-form>.ck-button:nth-last-child(2),[dir=rtl] .ck.ck-responsive-form>.ck-button:last-child,[dir=rtl] .ck.ck-responsive-form>.ck-button:nth-last-child(2){margin-left:0}[dir=rtl] .ck.ck-responsive-form>.ck-button:last-child:last-of-type,[dir=rtl] .ck.ck-responsive-form>.ck-button:nth-last-child(2):last-of-type{border-right:1px solid var(--ck-color-base-border)}}',""]);const c=n},584:(e,t,i)=>{e.exports=i(237)("./src/utils.js")},591:e=>{"use strict";var t=[];function i(e){for(var i=-1,o=0;o<t.length;o++)if(t[o].identifier===e){i=o;break}return i}function o(e,o){for(var r={},n=[],c=0;c<e.length;c++){var a=e[c],l=o.base?a[0]+o.base:a[0],d=r[l]||0,u="".concat(l," ").concat(d);r[l]=d+1;var h=i(u),m={css:a[1],media:a[2],sourceMap:a[3],supports:a[4],layer:a[5]};if(-1!==h)t[h].references++,t[h].updater(m);else{var k=s(m,o);o.byIndex=c,t.splice(c,0,{identifier:u,updater:k,references:1})}n.push(u)}return n}function s(e,t){var i=t.domAPI(t);i.update(e);return function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap&&t.supports===e.supports&&t.layer===e.layer)return;i.update(e=t)}else i.remove()}}e.exports=function(e,s){var r=o(e=e||[],s=s||{});return function(e){e=e||[];for(var n=0;n<r.length;n++){var c=i(r[n]);t[c].references--}for(var a=o(e,s),l=0;l<r.length;l++){var d=i(r[l]);0===t[d].references&&(t[d].updater(),t.splice(d,1))}r=a}}},639:e=>{"use strict";var t,i=(t=[],function(e,i){return t[e]=i,t.filter(Boolean).join("\n")});function o(e,t,o,s){var r;if(o)r="";else{r="",s.supports&&(r+="@supports (".concat(s.supports,") {")),s.media&&(r+="@media ".concat(s.media," {"));var n=void 0!==s.layer;n&&(r+="@layer".concat(s.layer.length>0?" ".concat(s.layer):""," {")),r+=s.css,n&&(r+="}"),s.media&&(r+="}"),s.supports&&(r+="}")}if(e.styleSheet)e.styleSheet.cssText=i(t,r);else{var c=document.createTextNode(r),a=e.childNodes;a[t]&&e.removeChild(a[t]),a.length?e.insertBefore(c,a[t]):e.appendChild(c)}}var s={singleton:null,singletonCounter:0};e.exports=function(e){if("undefined"==typeof document)return{update:function(){},remove:function(){}};var t=s.singletonCounter++,i=s.singleton||(s.singleton=e.insertStyleElement(e));return{update:function(e){o(i,t,!1,e)},remove:function(e){o(i,t,!0,e)}}}},758:e=>{"use strict";e.exports=function(e){return e[1]}},767:(e,t,i)=>{"use strict";i.d(t,{A:()=>c});var o=i(758),s=i.n(o),r=i(935),n=i.n(r)()(s());n.push([e.id,".ck.ck-form.ck-emoji-picker-form{padding-bottom:0}.ck.ck-form.ck-emoji-picker-form .ck.ck-dropdown .ck-dropdown__button:not(:focus){border-color:transparent}",""]);const c=n},782:(e,t,i)=>{e.exports=i(237)("./src/core.js")},834:(e,t,i)=>{e.exports=i(237)("./src/typing.js")},913:(e,t,i)=>{"use strict";i.d(t,{A:()=>c});var o=i(758),s=i.n(o),r=i(935),n=i.n(r)()(s());n.push([e.id,".ck.ck-emoji{width:320px}.ck .ck.ck-emoji__search{align-items:center;display:flex;justify-content:space-between;padding:var(--ck-spacing-large);padding-bottom:var(--ck-spacing-medium)}.ck .ck.ck-emoji__search>.ck.ck-search{flex:1}.ck .ck-fake-emoji-selection{background:var(--ck-color-link-fake-selection)}.ck .ck-fake-emoji-selection_collapsed{border-right:1px solid var(--ck-color-base-text);height:100%;margin-right:-1px;outline:1px solid hsla(0,0%,100%,.5)}div.ck.ck-balloon-panel.ck-emoji-picker-balloon{z-index:calc(var( --ck-z-dialog ) + 1)}",""]);const c=n},922:(e,t,i)=>{"use strict";i.d(t,{A:()=>c});var o=i(758),s=i.n(o),r=i(935),n=i.n(r)()(s());n.push([e.id,":root{--ck-form-default-width:340px}.ck.ck-form{padding:0 0 var(--ck-spacing-large)}.ck.ck-form.ck-form_default-width{width:var(--ck-form-default-width)}.ck.ck-form:focus{outline:none}.ck.ck-form .ck.ck-input-number,.ck.ck-form .ck.ck-input-text{min-width:100%;width:0}.ck.ck-form .ck.ck-dropdown{min-width:100%}.ck.ck-form .ck.ck-dropdown .ck-dropdown__button:not(:focus){border:1px solid var(--ck-color-base-border)}.ck.ck-form .ck.ck-dropdown .ck-dropdown__button .ck-button__label{width:100%}@media screen and (max-width:600px){.ck.ck-form.ck-responsive-form .ck.ck-form__row.ck-form__row_with-submit{align-items:stretch;flex-direction:column;padding:0}.ck.ck-form.ck-responsive-form .ck.ck-form__row.ck-form__row_with-submit>.ck{margin:var(--ck-spacing-large) var(--ck-spacing-large) 0}.ck.ck-form.ck-responsive-form .ck.ck-form__row.ck-form__row_with-submit .ck-button_with-text{justify-content:center}.ck.ck-form.ck-responsive-form .ck.ck-form__row.ck-form__row_large-bottom-padding{padding-bottom:var(--ck-spacing-large)}}[dir=ltr] .ck.ck-form.ck-responsive-form>:not(:first-child),[dir=rtl] .ck.ck-form.ck-responsive-form>:not(:last-child){margin-left:0}",""]);const c=n},935:e=>{"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var i="",o=void 0!==t[5];return t[4]&&(i+="@supports (".concat(t[4],") {")),t[2]&&(i+="@media ".concat(t[2]," {")),o&&(i+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),i+=e(t),o&&(i+="}"),t[2]&&(i+="}"),t[4]&&(i+="}"),i})).join("")},t.i=function(e,i,o,s,r){"string"==typeof e&&(e=[[null,e,void 0]]);var n={};if(o)for(var c=0;c<this.length;c++){var a=this[c][0];null!=a&&(n[a]=!0)}for(var l=0;l<e.length;l++){var d=[].concat(e[l]);o&&n[d[0]]||(void 0!==r&&(void 0===d[5]||(d[1]="@layer".concat(d[5].length>0?" ".concat(d[5]):""," {").concat(d[1],"}")),d[5]=r),i&&(d[2]?(d[1]="@media ".concat(d[2]," {").concat(d[1],"}"),d[2]=i):d[2]=i),s&&(d[4]?(d[1]="@supports (".concat(d[4],") {").concat(d[1],"}"),d[4]=s):d[4]="".concat(s)),t.push(d))}},t}}},t={};function i(o){var s=t[o];if(void 0!==s)return s.exports;var r=t[o]={id:o,exports:{}};return e[o].call(r.exports,r,r.exports,i),r.exports}i.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return i.d(t,{a:t}),t},i.d=(e,t)=>{for(var o in t)i.o(t,o)&&!i.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:t[o]})},i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var o={};(()=>{"use strict";i.r(o),i.d(o,{Emoji:()=>Y,EmojiCommand:()=>b,EmojiMention:()=>g,EmojiPicker:()=>X,EmojiRepository:()=>h,EmojiUtils:()=>d});var e=i(782),t=i(584),s=i(834),r=i(146);function n(e){const t=function(){try{return document.createElement("canvas").getContext("2d",{willReadFrequently:!0})}catch{return null}}();if(!t)return!1;const i=20,o=Math.floor(12.5);t.font=o+"px Arial, Sans-Serif",t.textBaseline="top",t.canvas.width=40,t.canvas.height=25,t.clearRect(0,0,40,25),t.fillStyle="#FF0000",t.fillText(e,0,22),t.fillStyle="#0000FF",t.fillText(e,i,22);const s=t.getImageData(0,0,i,25).data,r=s.length;let n=0;for(;n<r&&!s[n+3];n+=4);if(n>=r)return!1;const c=i+n/4%i,a=Math.floor(n/4/i),l=t.getImageData(c,a,1,1).data;return s[n]===l[0]&&s[n+2]===l[2]&&!(t.measureText(e).width>=i)}const c={0:"default",1:"light",2:"medium-light",3:"medium",4:"medium-dark",5:"dark"},a={"π«©":16,"π«¨":15.1,"π« ":14,"πΆβπ«οΈ":13.1,"π§βπ»":12.1,"π₯°":11,"π€ͺ":5,"βοΈ":4,"π€£":3,"ππ½":2,"π":1,"π":.7,"π":.6};class l extends e.Plugin{static get pluginName(){return"EmojiUtils"}static get isOfficialPlugin(){return!0}isEmojiSupported(e,t,i){return!!(e.version<=t)&&(!this.hasZwj(e.emoji)||this.isEmojiZwjSupported(e,i))}getEmojiSupportedVersionByOs(){for(const[e,t]of Object.entries(a))if(l._isEmojiSupported(e))return t;return 0}hasZwj(e){return e.includes("β")}isEmojiZwjSupported(e,t){return this.getNodeWidth(t,e.emoji)<43.2}getNodeWidth(e,t){const i=document.createElement("span");i.textContent=t,e.appendChild(i);const o=i.offsetWidth;return e.removeChild(i),o}createEmojiWidthTestingContainer(){const e=document.createElement("div");return e.setAttribute("aria-hidden","true"),e.style.position="absolute",e.style.left="-9999px",e.style.whiteSpace="nowrap",e.style.fontSize="24px",e}normalizeEmojiSkinTone(e){const t={...e,skins:{default:e.emoji}};return e.skins&&e.skins.forEach((e=>{const i=c[e.tone];t.skins[i]=e.emoji})),t}isEmojiCategoryAllowed(e){return 2!==e.group}static _isEmojiSupported=n}const d=l;class u extends e.Plugin{_items;_url;_repositoryPromise;static get requires(){return[d]}static get pluginName(){return"EmojiRepository"}static get isOfficialPlugin(){return!0}constructor(e){super(e),e.config.define("emoji",{version:void 0,skinTone:"default",definitionsUrl:void 0,useCustomFont:!1}),this._url=this._getUrl(),this._repositoryPromise=new Promise((e=>{this._repositoryPromiseResolveCallback=e})),this._items=null}async init(){return this._warnAboutCdnUse(),await this._loadAndCacheEmoji(),this._items=this._getItems(),this._items?this._repositoryPromiseResolveCallback(!0):((0,t.logWarning)("emoji-repository-empty"),this._repositoryPromiseResolveCallback(!1))}getEmojiByQuery(e){if(!this._items)return[];return e.split(/\s/).filter(Boolean).some((e=>e.length>=2))?r.go(e,this._items,{threshold:.6,keys:["emoticon","annotation",t=>e.split(/\s/).filter(Boolean).flatMap((e=>t.tags?.filter((t=>t.startsWith(e))))).join()]}).map((e=>e.obj)):[]}getEmojiCategories(){const e=this._getItems();if(!e)return[];const{t}=this.editor.locale,i=[{title:t("Smileys & Expressions"),icon:"π",groupId:0},{title:t("Gestures & People"),icon:"π",groupId:1},{title:t("Animals & Nature"),icon:"π»",groupId:3},{title:t("Food & Drinks"),icon:"π",groupId:4},{title:t("Travel & Places"),icon:"π",groupId:5},{title:t("Activities"),icon:"π",groupId:6},{title:t("Objects"),icon:"π‘",groupId:7},{title:t("Symbols"),icon:"π΅",groupId:8},{title:t("Flags"),icon:"π",groupId:9}],o=function(e,t){const i={};for(let o=0;o<e.length;o++){const s=e[o],r=t(s);Object.hasOwn(i,r)||(i[r]=[]),i[r].push(s)}return i}(e,(e=>e.group));return i.map((e=>({...e,items:o[e.groupId]})))}getSkinTones(){const{t:e}=this.editor.locale;return[{id:"default",icon:"π",tooltip:e("Default skin tone")},{id:"light",icon:"ππ»",tooltip:e("Light skin tone")},{id:"medium-light",icon:"ππΌ",tooltip:e("Medium Light skin tone")},{id:"medium",icon:"ππ½",tooltip:e("Medium skin tone")},{id:"medium-dark",icon:"ππΎ",tooltip:e("Medium Dark skin tone")},{id:"dark",icon:"ππΏ",tooltip:e("Dark skin tone")}]}isReady(){return this._repositoryPromise}_getUrl(){const{definitionsUrl:e,version:i}=this.editor.config.get("emoji");if(!e||"cdn"===e){const e=new URL("https://cdn.ckeditor.com/ckeditor5/data/emoji/{version}/en.json".replace("{version}",(i||16).toString()));return e.searchParams.set("editorVersion",t.version),e}return i&&(0,t.logWarning)("emoji-repository-redundant-version"),new URL(e)}_warnAboutCdnUse(){const e=this.editor,i=e.config.get("emoji"),o=e.config.get("licenseKey"),s=window[Symbol.for("cke distribution")];"GPL"!==o&&"cloud"!==s&&(i&&i.definitionsUrl||(0,t.logWarning)("emoji-repository-cdn-use"))}_getItems(){const e=u._results[this._url.href];return e&&e.length?e:null}async _loadAndCacheEmoji(){if(u._results[this._url.href])return;const e=await fetch(this._url,{cache:"force-cache"}).then((e=>e.ok?e.json():[])).catch((()=>[]));u._results[this._url.href]=this._normalizeEmoji(e)}_normalizeEmoji(e){const t=this.editor,i=t.config.get("emoji.useCustomFont"),o=t.plugins.get("EmojiUtils"),s=e.filter((e=>o.isEmojiCategoryAllowed(e)));if(i)return s.map((e=>o.normalizeEmojiSkinTone(e)));const r=o.getEmojiSupportedVersionByOs(),n=o.createEmojiWidthTestingContainer();document.body.appendChild(n);const c=s.filter((e=>o.isEmojiSupported(e,r,n))).map((e=>o.normalizeEmojiSkinTone(e)));return n.remove(),c}static _results={}}const h=u,m=":",k=":__EMOJI_SHOW_ALL:",f=":__EMOJI_HINT:";class g extends e.Plugin{_emojiDropdownLimit;_skinTone;static get requires(){return[h,s.Typing,"Mention"]}static get pluginName(){return"EmojiMention"}static get isOfficialPlugin(){return!0}constructor(e){super(e),this.editor.config.define("emoji",{dropdownLimit:6}),this._emojiDropdownLimit=e.config.get("emoji.dropdownLimit"),this._skinTone=e.config.get("emoji.skinTone"),this._setupMentionConfiguration(e)}_setupMentionConfiguration(e){const i=e.config.get("mergeFields.prefix"),o=e.config.get("mention.feeds"),s=!!i&&i[0]===m;if(o.filter((e=>!e._isEmojiMarker)).some((e=>e.marker===m))||s)return void(0,t.logWarning)("emoji-config-marker-already-used",{marker:m});if(o.some((e=>e._isEmojiMarker)))return;const r={_isEmojiMarker:!0,marker:m,dropdownLimit:this._emojiDropdownLimit,itemRenderer:this._customItemRendererFactory(this.editor.t),feed:this._queryEmojiCallbackFactory()};this.editor.config.set("mention.feeds",[...o,r])}async init(){const e=this.editor;this.emojiPickerPlugin=e.plugins.has("EmojiPicker")?e.plugins.get("EmojiPicker"):null,this.emojiRepositoryPlugin=e.plugins.get("EmojiRepository"),this._isEmojiRepositoryAvailable=await this.emojiRepositoryPlugin.isReady(),this._isEmojiRepositoryAvailable&&e.once("ready",this._overrideMentionExecuteListener.bind(this))}_customItemRendererFactory(e){return t=>{const i=document.createElement("button");i.classList.add("ck"),i.classList.add("ck-button"),i.classList.add("ck-button_with-text"),i.id=`mention-list-item-id${t.id.slice(0,-1)}`,i.type="button",i.tabIndex=-1;const o=document.createElement("span");return o.classList.add("ck"),o.classList.add("ck-button__label"),i.appendChild(o),t.id===f?(i.classList.add("ck-list-item-button"),i.classList.add("ck-disabled"),o.textContent=e("Keep on typing to see the emoji.")):t.id===k?o.textContent=e("Show all emoji..."):o.textContent=`${t.text} ${t.id}`,i}}_overrideMentionExecuteListener(){const e=this.editor;e.commands.get("mention").on("execute",((t,i)=>{const o=i[0];if(o.marker===m&&(t.stop(),o.mention.id!==f))if(o.mention.id===k){const t=[...o.range.getItems()].filter((e=>e.is("$textProxy"))).map((e=>e.data)).reduce(((e,t)=>e+t),"");e.model.change((t=>{e.model.deleteContent(t.createSelection(o.range))}));const i=this.emojiPickerPlugin;i.showUI(t.slice(1)),setTimeout((()=>{i.emojiPickerView.focus()}))}else e.execute("insertText",{text:o.mention.text,range:o.range})}),{priority:"high"})}_queryEmojiCallbackFactory(){return e=>{if(e.startsWith(" "))return[];if(e.startsWith(m))return[];if(!this._isEmojiRepositoryAvailable)return[];const t=this.emojiRepositoryPlugin.getEmojiByQuery(e).map((e=>{let t=e.skins[this._skinTone]||e.skins.default;return this.emojiPickerPlugin&&(t=e.skins[this.emojiPickerPlugin.skinTone]||e.skins.default),{id:`:${e.annotation}:`,text:t}}));if(!this.emojiPickerPlugin)return t.slice(0,this._emojiDropdownLimit);const i={id:e.length>1?k:f};return[...t.slice(0,this._emojiDropdownLimit-1),i]}}}var p=i(311),w=i(355);class b extends e.Command{refresh(){const e=this.editor.model,t=e.schema,i=e.document.selection;this.isEnabled=t.checkChild(i.getFirstPosition(),"$text")}execute(e=""){this.editor.plugins.get("EmojiPicker").showUI(e)}}var _=i(591),v=i.n(_),y=i(639),j=i.n(y),x=i(128),V=i.n(x),T=i(21),E=i.n(T),C=i(51),P=i.n(C),S=i(291),A={attributes:{"data-cke":!0}};A.setAttributes=E(),A.insert=V().bind(null,"head"),A.domAPI=j(),A.insertStyleElement=P();v()(S.A,A);S.A&&S.A.locals&&S.A.locals;class I extends p.View{tiles;focusTracker;keystrokes;emojiCategories;cachedTiles;_getEmojiByQuery;constructor(e,{categoryName:i,emojiCategories:o,getEmojiByQuery:s,skinTone:r}){super(e),this.set("isEmpty",!0),this.set("categoryName",i),this.set("skinTone",r),this.tiles=this.createCollection(),this.cachedTiles=this.createCollection(),this.focusTracker=new t.FocusTracker,this.keystrokes=new t.KeystrokeHandler,this._getEmojiByQuery=s,this.emojiCategories=o;const n=this.bindTemplate;this.setTemplate({tag:"div",children:[{tag:"div",attributes:{role:"grid",class:["ck","ck-emoji__grid"]},children:this.tiles}],attributes:{role:"tabpanel",class:["ck","ck-emoji__tiles",n.if("isEmpty","ck-hidden",(e=>e))]}}),(0,p.addKeyboardHandlingForGrid)({keystrokeHandler:this.keystrokes,focusTracker:this.focusTracker,gridItems:this.tiles,numberOfColumns:()=>t.global.window.getComputedStyle(this.element.firstChild).getPropertyValue("grid-template-columns").split(" ").length,uiLanguageDirection:this.locale&&this.locale.uiLanguageDirection})}render(){super.render(),this.keystrokes.listenTo(this.element)}destroy(){super.destroy(),this.keystrokes.destroy(),this.focusTracker.destroy()}focus(){const e=this.tiles.first;e&&e.focus()}filter(e){const{matchingItems:t,allItems:i}=e?this._getItemsByQuery(e.source):this._getItemsByCategory();return this._updateGrid(t),this.set("isEmpty",0===t.length),{resultsCount:t.length,totalItemsCount:i.length}}_getItemsByQuery(e){return{matchingItems:this._getEmojiByQuery(e),allItems:this.emojiCategories.flatMap((e=>e.items))}}_getItemsByCategory(){const e=this.emojiCategories.find((e=>e.title===this.categoryName)),{items:t}=e;return{matchingItems:t,allItems:t}}_updateGrid(e){[...this.tiles].forEach((e=>{this.focusTracker.remove(e),this.tiles.remove(e)})),e.map((e=>{const t=e.skins[this.skinTone]||e.skins.default;return this.cachedTiles.get(t)||this._createTile(t,e.annotation)})).forEach((e=>{this.tiles.add(e),this.focusTracker.add(e)}))}_createTile(e,t){const i=new p.ButtonView(this.locale);return i.viewUid=e,i.extendTemplate({attributes:{class:["ck-emoji__tile"]}}),i.set({label:e,tooltip:t,withText:!0,ariaLabel:t,ariaLabelledBy:void 0}),i.on("execute",(()=>{this.fire("execute",{name:t,emoji:e})})),this.cachedTiles.add(i),i}}var L=i(223),B={attributes:{"data-cke":!0}};B.setAttributes=E(),B.insert=V().bind(null,"head"),B.domAPI=j(),B.insertStyleElement=P();v()(L.A,B);L.A&&L.A.locals&&L.A.locals;class F extends p.View{focusTracker;keystrokes;focusCycler;buttonViews;constructor(e,{emojiCategories:i,categoryName:o}){super(e),this.buttonViews=this.createCollection(i.map((e=>this._createCategoryButton(e)))),this.focusTracker=new t.FocusTracker,this.keystrokes=new t.KeystrokeHandler,this.focusCycler=new p.FocusCycler({focusables:this.buttonViews,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"arrowleft",focusNext:"arrowright"}}),this.setTemplate({tag:"div",attributes:{class:["ck","ck-emoji__categories-list"],role:"tablist"},children:this.buttonViews}),this.on("change:categoryName",((e,t,i,o)=>{const s=this.buttonViews.find((e=>e.tooltip===o));s&&(s.isOn=!1);this.buttonViews.find((e=>e.tooltip===i)).isOn=!0})),this.set("categoryName",o)}render(){super.render(),this.buttonViews.forEach((e=>{this.focusTracker.add(e)})),this.keystrokes.listenTo(this.element)}destroy(){super.destroy(),this.focusTracker.destroy(),this.keystrokes.destroy(),this.buttonViews.destroy()}focus(){this.buttonViews.first.focus()}enableCategories(){this.buttonViews.forEach((e=>{e.isEnabled=!0}))}disableCategories(){this.buttonViews.forEach((e=>{e.set({class:"",isEnabled:!1,isOn:!1})}))}_createCategoryButton(e){const t=new p.ButtonView,i=t.bindTemplate;return t.extendTemplate({attributes:{"aria-selected":i.to("isOn",(e=>e.toString())),class:["ck-emoji__category-item"]}}),t.set({ariaLabel:e.title,label:e.icon,role:"tab",tooltip:e.title,withText:!0,ariaLabelledBy:void 0}),t.on("execute",(()=>{this.categoryName=e.title})),t.on("change:isEnabled",(()=>{t.isEnabled&&t.tooltip===this.categoryName&&(t.isOn=!0)})),t}}function M(e){if(null==e)return"";if(Array.isArray(e))return e.map(M).join(",");const t=String(e);return"0"===t&&Object.is(Number(e),-0)?"-0":t}class O extends p.View{inputView;gridView;constructor(e,{gridView:t,resultsView:i}){super(e),this.gridView=t;const o=e.t;this.inputView=new p.SearchTextView(this.locale,{queryView:{label:o("Find an emoji (min. 2 characters)"),creator:p.createLabeledInputText},filteredView:this.gridView,infoView:{instance:i}}),this.setTemplate({tag:"div",attributes:{class:["ck","ck-search"],tabindex:"-1"},children:[this.inputView.queryView]}),this.inputView.delegate("search").to(this)}destroy(){super.destroy(),this.inputView.destroy()}search(e){const t=e?new RegExp(function(e){return e.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&")}(M(e)),"ig"):null;const i=this.gridView.filter(t);this.inputView.fire("search",{query:e,...i})}setInputValue(e){e?this.inputView.queryView.fieldView.value=e:this.inputView.queryView.fieldView.reset()}getInputValue(){return this.inputView.queryView.fieldView.element.value}focus(){this.inputView.focus()}}var N=i(59),R={attributes:{"data-cke":!0}};R.setAttributes=E(),R.insert=V().bind(null,"head"),R.domAPI=j(),R.insertStyleElement=P();v()(N.A,R);N.A&&N.A.locals&&N.A.locals;class D extends p.View{dropdownView;_skinTones;constructor(e,{skinTone:i,skinTones:o}){super(e),this.set("skinTone",i),this._skinTones=o;const s=(0,e.t)("Select skin tone"),r=(0,p.createDropdown)(e),n=new t.Collection;for(const{id:e,icon:t,tooltip:i}of this._skinTones){const o={type:"button",model:new p.ViewModel({value:e,label:t,ariaLabel:i,tooltip:i,tooltipPosition:"e",role:"menuitemradio",withText:!0,ariaLabelledBy:void 0})};o.model.bind("isOn").to(this,"skinTone",(t=>t===e)),n.add(o)}(0,p.addListToDropdown)(r,n,{ariaLabel:s,role:"menu"}),r.buttonView.set({label:this._getSkinTone().icon,ariaLabel:s,ariaLabelledBy:void 0,isOn:!1,withText:!0,tooltip:s}),this.dropdownView=r,this.listenTo(r,"execute",(e=>{this.skinTone=e.source.value})),r.buttonView.bind("label").to(this,"skinTone",(()=>this._getSkinTone().icon)),r.buttonView.bind("ariaLabel").to(this,"skinTone",(()=>`${this._getSkinTone().tooltip}, ${s}`)),this.setTemplate({tag:"div",attributes:{class:["ck","ck-emoji__skin-tone"]},children:[r]})}focus(){this.dropdownView.buttonView.focus()}_getSkinTone(){return this._skinTones.find((e=>e.id===this.skinTone))}}class z extends p.View{items;focusTracker;keystrokes;focusCycler;searchView;toneView;categoriesView;gridView;infoView;constructor(e,{emojiCategories:i,getEmojiByQuery:o,skinTone:s,skinTones:r}){super(e);const n=i[0].title;this.gridView=new I(e,{categoryName:n,emojiCategories:i,getEmojiByQuery:o,skinTone:s}),this.infoView=new p.SearchInfoView,this.searchView=new O(e,{gridView:this.gridView,resultsView:this.infoView}),this.categoriesView=new F(e,{emojiCategories:i,categoryName:n}),this.toneView=new D(e,{skinTone:s,skinTones:r}),this.items=this.createCollection([this.searchView,this.toneView,this.categoriesView,this.gridView,this.infoView]),this.focusTracker=new t.FocusTracker,this.keystrokes=new t.KeystrokeHandler,this.focusCycler=new p.FocusCycler({focusables:this.items,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}}),this.setTemplate({tag:"div",children:[{tag:"div",children:[this.searchView,this.toneView],attributes:{class:["ck","ck-emoji__search"]}},this.categoriesView,this.gridView,{tag:"div",children:[this.infoView],attributes:{class:["ck","ck-search__results"]}}],attributes:{tabindex:"-1",class:["ck","ck-emoji","ck-search"]}}),this._setupEventListeners()}render(){super.render(),this.focusTracker.add(this.searchView.element),this.focusTracker.add(this.toneView.element),this.focusTracker.add(this.categoriesView.element),this.focusTracker.add(this.gridView.element),this.focusTracker.add(this.infoView.element),this.keystrokes.listenTo(this.element)}destroy(){super.destroy(),this.focusTracker.destroy(),this.keystrokes.destroy()}focus(){this.searchView.focus()}_setupEventListeners(){const e=this.locale.t;this.searchView.on("search",((e,t)=>{t.query?this.categoriesView.disableCategories():this.categoriesView.enableCategories()})),this.searchView.on("search",((t,i)=>{1===i.query.length?this.infoView.set({primaryText:e("Keep on typing to see the emoji."),secondaryText:e("The query must contain at least two characters."),isVisible:!0}):i.resultsCount?this.infoView.set({isVisible:!1}):this.infoView.set({primaryText:e('No emojis were found matching "%0".',i.query),secondaryText:e("Please try a different phrase or check the spelling."),isVisible:!0})})),this.searchView.on("search",(()=>{this.fire("update"),this.gridView.element.scrollTo(0,0)})),this.categoriesView.on("change:categoryName",((e,t,i)=>{this.gridView.categoryName=i,this.searchView.search("")})),this.toneView.on("change:skinTone",((e,t,i)=>{this.gridView.skinTone=i,this.searchView.search(this.searchView.getInputValue())}))}}var U=i(501),q={attributes:{"data-cke":!0}};q.setAttributes=E(),q.insert=V().bind(null,"head"),q.domAPI=j(),q.insertStyleElement=P();v()(U.A,q);U.A&&U.A.locals&&U.A.locals;var H=i(922),K={attributes:{"data-cke":!0}};K.setAttributes=E(),K.insert=V().bind(null,"head"),K.domAPI=j(),K.insertStyleElement=P();v()(H.A,K);H.A&&H.A.locals&&H.A.locals;var W=i(767),Q={attributes:{"data-cke":!0}};Q.setAttributes=E(),Q.insert=V().bind(null,"head"),Q.domAPI=j(),Q.insertStyleElement=P();v()(W.A,Q);W.A&&W.A.locals&&W.A.locals;class $ extends p.View{backButtonView;focusTracker=new t.FocusTracker;keystrokes=new t.KeystrokeHandler;children;_focusables=new p.ViewCollection;_focusCycler;constructor(e){super(e),this.backButtonView=this._createBackButton(),this.children=this.createCollection([this._createHeaderView()]),this._focusCycler=new p.FocusCycler({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}}),this.setTemplate({tag:"div",attributes:{class:["ck","ck-form","ck-emoji-picker-form","ck-responsive-form"],tabindex:"-1"},children:this.children})}render(){super.render();[...this.children.filter(p.isFocusable),this.backButtonView].forEach((e=>{this._focusables.add(e),this.focusTracker.add(e.element),(0,p.isViewWithFocusCycler)(e)&&this._focusCycler.chain(e.focusCycler)})),this.keystrokes.listenTo(this.element)}destroy(){super.destroy(),this.focusTracker.destroy(),this.keystrokes.destroy()}focus(){this._focusCycler.focusFirst()}_createBackButton(){const e=this.locale.t,t=new p.ButtonView(this.locale);return t.set({class:"ck-button-back",label:e("Back"),icon:w.IconPreviousArrow,tooltip:!0}),t.delegate("execute").to(this,"cancel"),t}_createHeaderView(){const e=this.locale.t,t=new p.FormHeaderView(this.locale,{label:e("Emoji picker")});return t.children.add(this.backButtonView,0),t}}var G=i(913),Z={attributes:{"data-cke":!0}};Z.setAttributes=E(),Z.insert=V().bind(null,"head"),Z.domAPI=j(),Z.insertStyleElement=P();v()(G.A,Z);G.A&&G.A.locals&&G.A.locals;const J="emoji-picker";class X extends e.Plugin{static get requires(){return[h,p.ContextualBalloon,p.Dialog,s.Typing]}static get pluginName(){return"EmojiPicker"}static get isOfficialPlugin(){return!0}async init(){const e=this.editor;if(this.balloonPlugin=e.plugins.get("ContextualBalloon"),this.emojiRepositoryPlugin=e.plugins.get("EmojiRepository"),!await this.emojiRepositoryPlugin.isReady())return;const t=new b(e);e.commands.add("emoji",t),e.ui.componentFactory.add("emoji",(()=>{const e=this._createButton(p.ButtonView,t);return e.set({tooltip:!0}),e})),e.ui.componentFactory.add("menuBar:emoji",(()=>this._createButton(p.MenuBarMenuListItemButtonView,t))),this._setupConversion()}destroy(){super.destroy(),this.emojiPickerView&&this.emojiPickerView.destroy()}get skinTone(){return this.emojiPickerView?this.emojiPickerView.gridView.skinTone:this.editor.config.get("emoji.skinTone")}showUI(e=""){this._showFakeVisualSelection(),this.emojiPickerView||(this.emojiPickerView=this._createEmojiPickerView()),e&&this.emojiPickerView.searchView.setInputValue(e),this.emojiPickerView.searchView.search(e),this.emojiPickerFormView||(this.emojiPickerFormView=this._createEmojiPickerFormView()),this.balloonPlugin.hasView(this.emojiPickerFormView)||(this.emojiPickerFormView.backButtonView.isVisible=!!this.balloonPlugin.visibleView,this.balloonPlugin.add({view:this.emojiPickerFormView,position:this._getBalloonPositionData(),balloonClassName:"ck-emoji-picker-balloon"})),this.emojiPickerView.focus()}_createButton(e,t){const i=new e(this.editor.locale),o=this.editor.locale.t;return i.bind("isEnabled").to(t,"isEnabled"),i.set({label:o("Emoji"),icon:w.IconEmoji,isToggleable:!0}),i.on("execute",(()=>{this.editor.editing.view.scrollToTheSelection(),this.showUI()})),i}_createEmojiPickerView(){const e=new z(this.editor.locale,{emojiCategories:this.emojiRepositoryPlugin.getEmojiCategories(),skinTone:this.editor.config.get("emoji.skinTone"),skinTones:this.emojiRepositoryPlugin.getSkinTones(),getEmojiByQuery:e=>this.emojiRepositoryPlugin.getEmojiByQuery(e)});return this.listenTo(e.gridView,"execute",((e,t)=>{const i=this.editor,o=t.emoji;this._hideUI(),i.execute("insertText",{text:o})})),e}_createEmojiPickerFormView(){const e=new $(this.editor.locale);return e.children.add(this.emojiPickerView),this.listenTo(this.emojiPickerView,"update",(()=>{this.balloonPlugin.visibleView===e&&this.balloonPlugin.updatePosition()})),this.listenTo(e,"cancel",(()=>{this._hideUI()})),e.keystrokes.set("Esc",((e,t)=>{this._hideUI(),t()})),(0,p.clickOutsideHandler)({emitter:e,contextElements:[this.balloonPlugin.view.element],callback:()=>{this._hideUI(!1)},activator:()=>this.balloonPlugin.visibleView===e}),e}_hideUI(e=!0){this.balloonPlugin.remove(this.emojiPickerFormView),this.emojiPickerView.searchView.setInputValue(""),e&&this.editor.editing.view.focus(),this._hideFakeVisualSelection()}_setupConversion(){const e=this.editor;e.conversion.for("editingDowncast").markerToHighlight({model:J,view:{classes:["ck-fake-emoji-selection"]}}),e.conversion.for("editingDowncast").markerToElement({model:J,view:(e,{writer:t})=>{if(!e.markerRange.isCollapsed)return null;const i=t.createUIElement("span");return t.addClass(["ck-fake-emoji-selection","ck-fake-emoji-selection_collapsed"],i),i}})}_getBalloonPositionData(){const e=this.editor.editing.view,t=e.document;return{target:()=>e.domConverter.viewRangeToDom(t.selection.getFirstRange())}}_showFakeVisualSelection(){const e=this.editor.model;e.change((t=>{const i=e.document.selection.getFirstRange();if(e.markers.has(J))t.updateMarker(J,{range:i});else if(i.start.isAtEnd){const o=i.start.getLastMatchingPosition((({item:t})=>!e.schema.isContent(t)),{boundaries:i});t.addMarker(J,{usingOperation:!1,affectsData:!1,range:t.createRange(o,i.end)})}else t.addMarker(J,{usingOperation:!1,affectsData:!1,range:i})}))}_hideFakeVisualSelection(){const e=this.editor.model;e.markers.has(J)&&e.change((e=>{e.removeMarker(J)}))}}class Y extends e.Plugin{static get requires(){return[g,X]}static get pluginName(){return"Emoji"}static get isOfficialPlugin(){return!0}}})(),(window.CKEditor5=window.CKEditor5||{}).emoji=o})();
|