@ckeditor/ckeditor5-find-and-replace 37.0.0-alpha.2 → 37.0.0-rc.0

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.
Files changed (53) hide show
  1. package/build/find-and-replace.js +1 -1
  2. package/lang/translations/af.po +1 -1
  3. package/lang/translations/ar.po +1 -1
  4. package/lang/translations/bg.po +1 -1
  5. package/lang/translations/bn.po +1 -1
  6. package/lang/translations/bs.po +1 -1
  7. package/lang/translations/ca.po +1 -1
  8. package/lang/translations/cs.po +1 -1
  9. package/lang/translations/da.po +1 -1
  10. package/lang/translations/de.po +1 -1
  11. package/lang/translations/el.po +1 -1
  12. package/lang/translations/en-au.po +1 -1
  13. package/lang/translations/en.po +1 -1
  14. package/lang/translations/es.po +1 -1
  15. package/lang/translations/et.po +1 -1
  16. package/lang/translations/fi.po +1 -1
  17. package/lang/translations/fr.po +1 -1
  18. package/lang/translations/gl.po +1 -1
  19. package/lang/translations/he.po +1 -1
  20. package/lang/translations/hi.po +1 -1
  21. package/lang/translations/hr.po +1 -1
  22. package/lang/translations/hu.po +1 -1
  23. package/lang/translations/id.po +1 -1
  24. package/lang/translations/it.po +1 -1
  25. package/lang/translations/ja.po +1 -1
  26. package/lang/translations/jv.po +1 -1
  27. package/lang/translations/ko.po +1 -1
  28. package/lang/translations/lt.po +1 -1
  29. package/lang/translations/lv.po +1 -1
  30. package/lang/translations/ms.po +1 -1
  31. package/lang/translations/nl.po +1 -1
  32. package/lang/translations/no.po +1 -1
  33. package/lang/translations/pl.po +1 -1
  34. package/lang/translations/pt-br.po +1 -1
  35. package/lang/translations/pt.po +1 -1
  36. package/lang/translations/ro.po +1 -1
  37. package/lang/translations/ru.po +1 -1
  38. package/lang/translations/sk.po +1 -1
  39. package/lang/translations/sr-latn.po +1 -1
  40. package/lang/translations/sr.po +1 -1
  41. package/lang/translations/sv.po +1 -1
  42. package/lang/translations/th.po +1 -1
  43. package/lang/translations/tr.po +1 -1
  44. package/lang/translations/tt.po +1 -1
  45. package/lang/translations/ug.po +1 -1
  46. package/lang/translations/uk.po +1 -1
  47. package/lang/translations/ur.po +1 -1
  48. package/lang/translations/vi.po +1 -1
  49. package/lang/translations/zh-cn.po +1 -1
  50. package/lang/translations/zh.po +1 -1
  51. package/package.json +22 -22
  52. package/src/findandreplace.d.ts +4 -2
  53. package/src/findandreplaceediting.d.ts +3 -2
@@ -2,4 +2,4 @@
2
2
  /*!
3
3
  * @license Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
4
4
  * For licensing, see LICENSE.md.
5
- */(()=>{var e={299:(e,t,i)=>{"use strict";i.d(t,{Z:()=>s});var n=i(609),r=i.n(n)()((function(e){return e[1]}));r.push([e.id,".ck-find-result{background:var(--ck-color-highlight-background);color:var(--ck-color-text)}.ck-find-result_selected{background:#ff9633}",""]);const s=r},226:(e,t,i)=>{"use strict";i.d(t,{Z:()=>s});var n=i(609),r=i.n(n)()((function(e){return e[1]}));r.push([e.id,".ck.ck-find-and-replace-form{max-width:100%}.ck.ck-find-and-replace-form fieldset{display:flex}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find .ck-results-counter{position:absolute}.ck.ck-find-and-replace-form{width:400px}.ck.ck-find-and-replace-form:focus{outline:none}.ck.ck-find-and-replace-form fieldset{align-content:stretch;align-items:center;border:0;flex-direction:row;flex-wrap:nowrap;margin:0;padding:var(--ck-spacing-large)}.ck.ck-find-and-replace-form fieldset>.ck-button{flex:0 0 auto}[dir=ltr] .ck.ck-find-and-replace-form fieldset>*+*{margin-left:var(--ck-spacing-standard)}[dir=rtl] .ck.ck-find-and-replace-form fieldset>*+*{margin-right:var(--ck-spacing-standard)}.ck.ck-find-and-replace-form fieldset .ck-labeled-field-view{flex:1 1 auto}.ck.ck-find-and-replace-form fieldset .ck-labeled-field-view .ck-input{min-width:50px;width:100%}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find{align-items:flex-start}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button-find{font-weight:700}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button-find .ck-button__label{padding-left:var(--ck-spacing-large);padding-right:var(--ck-spacing-large)}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button-prev>.ck-icon{transform:rotate(90deg)}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button-next>.ck-icon{transform:rotate(-90deg)}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find .ck-results-counter{top:50%;transform:translateY(-50%)}[dir=ltr] .ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find .ck-results-counter{right:var(--ck-spacing-standard)}[dir=rtl] .ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find .ck-results-counter{left:var(--ck-spacing-standard)}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find .ck-results-counter{color:var(--ck-color-base-border)}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__replace{flex-wrap:wrap;justify-content:flex-end;margin-top:calc(var(--ck-spacing-large)*-1)}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__replace>.ck-labeled-field-view{margin-bottom:var(--ck-spacing-large)}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__replace>.ck-options-dropdown{margin-left:0;margin-right:auto}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__replace>.ck-labeled-field-view,.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__replace>.ck-labeled-field-view .ck-input{width:100%}@media screen and (max-width:600px){.ck.ck-find-and-replace-form{width:300px}.ck.ck-find-and-replace-form fieldset{flex-wrap:wrap}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find .ck-labeled-field-view{flex:1 0 auto;margin-bottom:var(--ck-spacing-standard);width:100%}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button{text-align:center}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button:first-of-type{flex:1 1 auto}[dir=ltr] .ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button:first-of-type{margin-left:0}[dir=rtl] .ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button:first-of-type{margin-right:0}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button:first-of-type .ck-button__label{text-align:center;width:100%}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__replace>:not(.ck-labeled-field-view){flex:1 1 auto}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__replace>.ck-dropdown:not(.ck-labeled-field-view){flex-grow:0}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__replace>.ck-button:not(.ck-labeled-field-view)>.ck-button__label{text-align:center;width:100%}}",""]);const s=r},764:(e,t,i)=>{"use strict";i.d(t,{Z:()=>s});var n=i(609),r=i.n(n)()((function(e){return e[1]}));r.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-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 s=r},609:e=>{"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var i=e(t);return t[2]?"@media ".concat(t[2]," {").concat(i,"}"):i})).join("")},t.i=function(e,i,n){"string"==typeof e&&(e=[[null,e,""]]);var r={};if(n)for(var s=0;s<this.length;s++){var o=this[s][0];null!=o&&(r[o]=!0)}for(var a=0;a<e.length;a++){var c=[].concat(e[a]);n&&r[c[0]]||(i&&(c[2]?c[2]="".concat(i," and ").concat(c[2]):c[2]=i),t.push(c))}},t}},62:(e,t,i)=>{"use strict";var n,r=function(){return void 0===n&&(n=Boolean(window&&document&&document.all&&!window.atob)),n},s=function(){var e={};return function(t){if(void 0===e[t]){var i=document.querySelector(t);if(window.HTMLIFrameElement&&i instanceof window.HTMLIFrameElement)try{i=i.contentDocument.head}catch(e){i=null}e[t]=i}return e[t]}}(),o=[];function a(e){for(var t=-1,i=0;i<o.length;i++)if(o[i].identifier===e){t=i;break}return t}function c(e,t){for(var i={},n=[],r=0;r<e.length;r++){var s=e[r],c=t.base?s[0]+t.base:s[0],l=i[c]||0,d="".concat(c," ").concat(l);i[c]=l+1;var h=a(d),f={css:s[1],media:s[2],sourceMap:s[3]};-1!==h?(o[h].references++,o[h].updater(f)):o.push({identifier:d,updater:g(f,t),references:1}),n.push(d)}return n}function l(e){var t=document.createElement("style"),n=e.attributes||{};if(void 0===n.nonce){var r=i.nc;r&&(n.nonce=r)}if(Object.keys(n).forEach((function(e){t.setAttribute(e,n[e])})),"function"==typeof e.insert)e.insert(t);else{var o=s(e.insert||"head");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(t)}return t}var d,h=(d=[],function(e,t){return d[e]=t,d.filter(Boolean).join("\n")});function f(e,t,i,n){var r=i?"":n.media?"@media ".concat(n.media," {").concat(n.css,"}"):n.css;if(e.styleSheet)e.styleSheet.cssText=h(t,r);else{var s=document.createTextNode(r),o=e.childNodes;o[t]&&e.removeChild(o[t]),o.length?e.insertBefore(s,o[t]):e.appendChild(s)}}function u(e,t,i){var n=i.css,r=i.media,s=i.sourceMap;if(r?e.setAttribute("media",r):e.removeAttribute("media"),s&&"undefined"!=typeof btoa&&(n+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(s))))," */")),e.styleSheet)e.styleSheet.cssText=n;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(n))}}var p=null,m=0;function g(e,t){var i,n,r;if(t.singleton){var s=m++;i=p||(p=l(t)),n=f.bind(null,i,s,!1),r=f.bind(null,i,s,!0)}else i=l(t),n=u.bind(null,i,t),r=function(){!function(e){if(null===e.parentNode)return!1;e.parentNode.removeChild(e)}(i)};return n(e),function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap)return;n(e=t)}else r()}}e.exports=function(e,t){(t=t||{}).singleton||"boolean"==typeof t.singleton||(t.singleton=r());var i=c(e=e||[],t);return function(e){if(e=e||[],"[object Array]"===Object.prototype.toString.call(e)){for(var n=0;n<i.length;n++){var r=a(i[n]);o[r].references--}for(var s=c(e,t),l=0;l<i.length;l++){var d=a(i[l]);0===o[d].references&&(o[d].updater(),o.splice(d,1))}i=s}}}},704:(e,t,i)=>{e.exports=i(79)("./src/core.js")},273:(e,t,i)=>{e.exports=i(79)("./src/ui.js")},209:(e,t,i)=>{e.exports=i(79)("./src/utils.js")},79:e=>{"use strict";e.exports=CKEditor5.dll}},t={};function i(n){var r=t[n];if(void 0!==r)return r.exports;var s=t[n]={id:n,exports:{}};return e[n](s,s.exports,i),s.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 n in t)i.o(t,n)&&!i.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},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})},i.nc=void 0;var n={};(()=>{"use strict";i.r(n),i.d(n,{FindAndReplace:()=>Ne,FindAndReplaceEditing:()=>Be,FindAndReplaceUI:()=>u,FindAndReplaceUtils:()=>fe,FindCommand:()=>A,FindNextCommand:()=>O,FindPreviousCommand:()=>j,ReplaceAllCommand:()=>S,ReplaceCommand:()=>N});var e=i(704),t=i(273),r=i(209),s=i(62),o=i.n(s),a=i(764),c={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};o()(a.Z,c);a.Z.locals;var l=i(226),d={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};o()(l.Z,d);l.Z.locals;const h='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M11.463 5.187a.888.888 0 1 1 1.254 1.255L9.16 10l3.557 3.557a.888.888 0 1 1-1.254 1.255L7.26 10.61a.888.888 0 0 1 .16-1.382l4.043-4.042z"/></svg>';class f extends t.View{constructor(e){super(e);const i=e.t;this.set("matchCount",0),this.set("highlightOffset",0),this.set("isDirty",!1),this.set("_areCommandsEnabled",{}),this.set("_resultsCounterText",""),this.set("_matchCase",!1),this.set("_wholeWordsOnly",!1),this.bind("_searchResultsFound").to(this,"matchCount",this,"isDirty",((e,t)=>e>0&&!t)),this._findInputView=this._createInputField(i("Find in text…")),this._replaceInputView=this._createInputField(i("Replace with…")),this._findButtonView=this._createButton({label:i("Find"),class:"ck-button-find ck-button-action",withText:!0}),this._findPrevButtonView=this._createButton({label:i("Previous result"),class:"ck-button-prev",icon:h,keystroke:"Shift+F3",tooltip:!0}),this._findNextButtonView=this._createButton({label:i("Next result"),class:"ck-button-next",icon:h,keystroke:"F3",tooltip:!0}),this._optionsDropdown=this._createOptionsDropdown(),this._replaceButtonView=this._createButton({label:i("Replace"),class:"ck-button-replace",withText:!0}),this._replaceAllButtonView=this._createButton({label:i("Replace all"),class:"ck-button-replaceall",withText:!0}),this._findFieldsetView=this._createFindFieldset(),this._replaceFieldsetView=this._createReplaceFieldset(),this._focusTracker=new r.FocusTracker,this._keystrokes=new r.KeystrokeHandler,this._focusables=new t.ViewCollection,this._focusCycler=new t.FocusCycler({focusables:this._focusables,focusTracker:this._focusTracker,keystrokeHandler:this._keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}}),this.setTemplate({tag:"form",attributes:{class:["ck","ck-find-and-replace-form"],tabindex:"-1"},children:[new t.FormHeaderView(e,{label:i("Find and replace")}),this._findFieldsetView,this._replaceFieldsetView]})}render(){super.render(),(0,t.submitHandler)({view:this}),this._initFocusCycling(),this._initKeystrokeHandling()}destroy(){super.destroy(),this._focusTracker.destroy(),this._keystrokes.destroy()}focus(){this._focusCycler.focusFirst()}reset(){this._findInputView.errorText=null,this.isDirty=!0}get _textToFind(){return this._findInputView.fieldView.element.value}get _textToReplace(){return this._replaceInputView.fieldView.element.value}_createFindFieldset(){const e=this.locale,i=new t.View(e);return this._findInputView.fieldView.on("input",(()=>{this.isDirty=!0})),this._findButtonView.on("execute",this._onFindButtonExecute.bind(this)),this._findPrevButtonView.delegate("execute").to(this,"findPrevious"),this._findNextButtonView.delegate("execute").to(this,"findNext"),this._findPrevButtonView.bind("isEnabled").to(this,"_areCommandsEnabled",(({findPrevious:e})=>e)),this._findNextButtonView.bind("isEnabled").to(this,"_areCommandsEnabled",(({findNext:e})=>e)),this._injectFindResultsCounter(),i.setTemplate({tag:"fieldset",attributes:{class:["ck","ck-find-and-replace-form__find"]},children:[this._findInputView,this._findButtonView,this._findPrevButtonView,this._findNextButtonView]}),i}_onFindButtonExecute(){if(this._textToFind)this.isDirty=!1,this.fire("findNext",{searchText:this._textToFind,matchCase:this._matchCase,wholeWords:this._wholeWordsOnly});else{const e=this.t;this._findInputView.errorText=e("Text to find must not be empty.")}}_injectFindResultsCounter(){const e=this.locale,i=e.t,n=this.bindTemplate,s=new t.View(this.locale);this.bind("_resultsCounterText").to(this,"highlightOffset",this,"matchCount",((e,t)=>i("%0 of %1",[e,t]))),s.setTemplate({tag:"span",attributes:{class:["ck","ck-results-counter",n.if("isDirty","ck-hidden")]},children:[{text:n.to("_resultsCounterText")}]});const o=()=>{const t=this._findInputView.fieldView.element;if(!t||!(0,r.isVisible)(t))return;const i=new r.Rect(s.element).width,n="ltr"===e.uiLanguageDirection?"paddingRight":"paddingLeft";t.style[n]=i?`calc( 2 * var(--ck-spacing-standard) + ${i}px )`:""};this.on("change:_resultsCounterText",o,{priority:"low"}),this.on("change:isDirty",o,{priority:"low"}),this._findInputView.template.children[0].children.push(s)}_createReplaceFieldset(){const e=this.locale.t,i=new t.View(this.locale);return this._replaceButtonView.bind("isEnabled").to(this,"_areCommandsEnabled",this,"_searchResultsFound",(({replace:e},t)=>e&&t)),this._replaceAllButtonView.bind("isEnabled").to(this,"_areCommandsEnabled",this,"_searchResultsFound",(({replaceAll:e},t)=>e&&t)),this._replaceInputView.bind("isEnabled").to(this,"_areCommandsEnabled",this,"_searchResultsFound",(({replace:e},t)=>e&&t)),this._replaceInputView.bind("infoText").to(this._replaceInputView,"isEnabled",this._replaceInputView,"isFocused",((t,i)=>t||!i?"":e("Tip: Find some text first in order to replace it."))),this._replaceButtonView.on("execute",(()=>{this.fire("replace",{searchText:this._textToFind,replaceText:this._textToReplace})})),this._replaceAllButtonView.on("execute",(()=>{this.fire("replaceAll",{searchText:this._textToFind,replaceText:this._textToReplace}),this.focus()})),i.setTemplate({tag:"fieldset",attributes:{class:["ck","ck-find-and-replace-form__replace"]},children:[this._replaceInputView,this._optionsDropdown,this._replaceButtonView,this._replaceAllButtonView]}),i}_createOptionsDropdown(){const i=this.locale.t,n=(0,t.createDropdown)(this.locale);n.class="ck-options-dropdown",n.buttonView.set({withText:!1,label:i("Show options"),icon:e.icons.cog,tooltip:!0});const s=new t.Model({withText:!0,label:i("Match case"),_isMatchCaseSwitch:!0}),o=new t.Model({withText:!0,label:i("Whole words only")});return s.bind("isOn").to(this,"_matchCase"),o.bind("isOn").to(this,"_wholeWordsOnly"),n.on("execute",(e=>{e.source._isMatchCaseSwitch?this._matchCase=!this._matchCase:this._wholeWordsOnly=!this._wholeWordsOnly,this.isDirty=!0})),(0,t.addListToDropdown)(n,new r.Collection([{type:"switchbutton",model:s},{type:"switchbutton",model:o}])),n}_initFocusCycling(){[this._findInputView,this._findButtonView,this._findPrevButtonView,this._findNextButtonView,this._replaceInputView,this._optionsDropdown,this._replaceButtonView,this._replaceAllButtonView].forEach((e=>{this._focusables.add(e),this._focusTracker.add(e.element)}))}_initKeystrokeHandling(){const e=e=>e.stopPropagation(),t=e=>{e.stopPropagation(),e.preventDefault()};this._keystrokes.listenTo(this.element),this._keystrokes.set("f3",(e=>{t(e),this._findNextButtonView.fire("execute")})),this._keystrokes.set("shift+f3",(e=>{t(e),this._findPrevButtonView.fire("execute")})),this._keystrokes.set("enter",(e=>{const i=e.target;i===this._findInputView.fieldView.element?(this._areCommandsEnabled.findNext?this._findNextButtonView.fire("execute"):this._findButtonView.fire("execute"),t(e)):i!==this._replaceInputView.fieldView.element||this.isDirty||(this._replaceButtonView.fire("execute"),t(e))})),this._keystrokes.set("shift+enter",(e=>{e.target===this._findInputView.fieldView.element&&(this._areCommandsEnabled.findPrevious?this._findPrevButtonView.fire("execute"):this._findButtonView.fire("execute"),t(e))})),this._keystrokes.set("arrowright",e),this._keystrokes.set("arrowleft",e),this._keystrokes.set("arrowup",e),this._keystrokes.set("arrowdown",e),this.listenTo(this._findInputView.element,"selectstart",((e,t)=>{t.stopPropagation()}),{priority:"high"}),this.listenTo(this._replaceInputView.element,"selectstart",((e,t)=>{t.stopPropagation()}),{priority:"high"})}_createButton(e){const i=new t.ButtonView(this.locale);return i.set(e),i}_createInputField(e){const i=new t.LabeledFieldView(this.locale,t.createLabeledInputText);return i.label=e,i}}class u extends e.Plugin{static get pluginName(){return"FindAndReplaceUI"}constructor(e){super(e),this.formView=null}init(){const e=this.editor;e.ui.componentFactory.add("findAndReplace",(i=>{const n=(0,t.createDropdown)(i),r=e.commands.get("find");return n.bind("isEnabled").to(r),n.once("change:isOpen",(()=>{this.formView=new((0,t.CssTransitionDisablerMixin)(f))(e.locale),n.panelView.children.add(this.formView),this._setupFormView(this.formView)})),n.on("change:isOpen",((e,t,i)=>{i?(this.formView.disableCssTransitions(),this.formView.reset(),this.formView._findInputView.fieldView.select(),this.formView.enableCssTransitions()):this.fire("searchReseted")}),{priority:"low"}),this._setupDropdownButton(n),n}))}_setupDropdownButton(e){const t=this.editor,i=t.locale.t;e.buttonView.set({icon:'<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m12.87 13.786 1.532-1.286 3.857 4.596a1 1 0 1 1-1.532 1.286l-3.857-4.596z"/><path d="M16.004 8.5a6.5 6.5 0 0 1-9.216 5.905c-1.154-.53-.863-1.415-.663-1.615.194-.194.564-.592 1.635-.141a4.5 4.5 0 0 0 5.89-5.904l-.104-.227 1.332-1.331c.045-.046.196-.041.224.007a6.47 6.47 0 0 1 .902 3.306zm-3.4-5.715c.562.305.742 1.106.354 1.494-.388.388-.995.414-1.476.178a4.5 4.5 0 0 0-6.086 5.882l.114.236-1.348 1.349c-.038.037-.17.022-.198-.023a6.5 6.5 0 0 1 5.54-9.9 6.469 6.469 0 0 1 3.1.784z"/><path d="M4.001 11.93.948 8.877a.2.2 0 0 1 .141-.341h6.106a.2.2 0 0 1 .141.341L4.283 11.93a.2.2 0 0 1-.282 0zm11.083-6.789 3.053 3.053a.2.2 0 0 1-.14.342H11.89a.2.2 0 0 1-.14-.342l3.052-3.053a.2.2 0 0 1 .282 0z"/></svg>',label:i("Find and replace"),keystroke:"CTRL+F",tooltip:!0}),t.keystrokes.set("Ctrl+F",((t,i)=>{e.isEnabled&&(e.isOpen=!0,i())}))}_setupFormView(e){const t=this.editor.commands,i=this.editor.plugins.get("FindAndReplaceEditing").state,n={before:-1,same:0,after:1,different:1};e.bind("highlightOffset").to(i,"highlightedResult",(e=>e?Array.from(i.results).sort(((e,t)=>n[e.marker.getStart().compareWith(t.marker.getStart())])).indexOf(e)+1:0)),e.listenTo(i.results,"change",(()=>{e.matchCount=i.results.length}));const r=t.get("findNext"),s=t.get("findPrevious"),o=t.get("replace"),a=t.get("replaceAll");e.bind("_areCommandsEnabled").to(r,"isEnabled",s,"isEnabled",o,"isEnabled",a,"isEnabled",((e,t,i,n)=>({findNext:e,findPrevious:t,replace:i,replaceAll:n}))),e.delegate("findNext","findPrevious","replace","replaceAll").to(this),e.on("change:isDirty",((e,t,i)=>{i&&this.fire("searchReseted")}))}}function p(e){return"[object Range]"==Object.prototype.toString.apply(e)}function m(e){const t=Object.prototype.toString.apply(e);return"[object Window]"==t||"[object global]"==t}function g(e){return"[object Text]"==Object.prototype.toString.call(e)}const k=["top","right","bottom","left","width","height"];class w{constructor(e){const t=p(e);if(Object.defineProperty(this,"_source",{value:e._source||e,writable:!0,enumerable:!1}),v(e)||t)if(t){const t=w.getDomRangeRects(e);b(this,w.getBoundingRect(t))}else b(this,e.getBoundingClientRect());else if(m(e)){const{innerWidth:t,innerHeight:i}=e;b(this,{top:0,right:t,bottom:i,left:0,width:t,height:i})}else b(this,e)}clone(){return new w(this)}moveTo(e,t){return this.top=t,this.right=e+this.width,this.bottom=t+this.height,this.left=e,this}moveBy(e,t){return this.top+=t,this.right+=e,this.left+=e,this.bottom+=t,this}getIntersection(e){const t={top:Math.max(this.top,e.top),right:Math.min(this.right,e.right),bottom:Math.min(this.bottom,e.bottom),left:Math.max(this.left,e.left),width:0,height:0};return t.width=t.right-t.left,t.height=t.bottom-t.top,t.width<0||t.height<0?null:new w(t)}getIntersectionArea(e){const t=this.getIntersection(e);return t?t.getArea():0}getArea(){return this.width*this.height}getVisible(){const e=this._source;let t=this.clone();if(!_(e)){let i=e.parentNode||e.commonAncestorContainer;for(;i&&!_(i);){const e=new w(i),n=t.getIntersection(e);if(!n)return null;n.getArea()<t.getArea()&&(t=n),i=i.parentNode}}return t}isEqual(e){for(const t of k)if(this[t]!==e[t])return!1;return!0}contains(e){const t=this.getIntersection(e);return!(!t||!t.isEqual(e))}excludeScrollbarsAndBorders(){const e=this._source;let t,i,n;if(m(e))t=e.innerWidth-e.document.documentElement.clientWidth,i=e.innerHeight-e.document.documentElement.clientHeight,n=e.getComputedStyle(e.document.documentElement).direction;else{const r=function(e){const t=e.ownerDocument.defaultView.getComputedStyle(e);return{top:parseInt(t.borderTopWidth,10),right:parseInt(t.borderRightWidth,10),bottom:parseInt(t.borderBottomWidth,10),left:parseInt(t.borderLeftWidth,10)}}(e);t=e.offsetWidth-e.clientWidth-r.left-r.right,i=e.offsetHeight-e.clientHeight-r.top-r.bottom,n=e.ownerDocument.defaultView.getComputedStyle(e).direction,this.left+=r.left,this.top+=r.top,this.right-=r.right,this.bottom-=r.bottom,this.width=this.right-this.left,this.height=this.bottom-this.top}return this.width-=t,"ltr"===n?this.right-=t:this.left+=t,this.height-=i,this.bottom-=i,this}static getDomRangeRects(e){const t=[],i=Array.from(e.getClientRects());if(i.length)for(const e of i)t.push(new w(e));else{let i=e.startContainer;g(i)&&(i=i.parentNode);const n=new w(i.getBoundingClientRect());n.right=n.left,n.width=0,t.push(n)}return t}static getBoundingRect(e){const t={left:Number.POSITIVE_INFINITY,top:Number.POSITIVE_INFINITY,right:Number.NEGATIVE_INFINITY,bottom:Number.NEGATIVE_INFINITY,width:0,height:0};let i=0;for(const n of e)i++,t.left=Math.min(t.left,n.left),t.top=Math.min(t.top,n.top),t.right=Math.max(t.right,n.right),t.bottom=Math.max(t.bottom,n.bottom);return 0==i?null:(t.width=t.right-t.left,t.height=t.bottom-t.top,new w(t))}}function b(e,t){for(const i of k)e[i]=t[i]}function _(e){return!!v(e)&&e===e.ownerDocument.body}function v(e){return null!==e&&"object"==typeof e&&1===e.nodeType&&"function"==typeof e.getBoundingClientRect}function x(e,t,i){const n=t.clone().moveBy(0,i),r=t.clone().moveBy(0,-i),s=new w(e).excludeScrollbarsAndBorders();if(![r,n].every((e=>s.contains(e)))){let{scrollX:o,scrollY:a}=e;R(r,s)?a-=s.top-t.top+i:T(n,s)&&(a+=t.bottom-s.bottom+i),V(t,s)?o-=s.left-t.left+i:C(t,s)&&(o+=t.right-s.right+i),e.scrollTo(o,a)}}function y(e,t){const i=F(e);let n,r;for(;e!=i.document.body;)r=t(),n=new w(e).excludeScrollbarsAndBorders(),n.contains(r)||(R(r,n)?e.scrollTop-=n.top-r.top:T(r,n)&&(e.scrollTop+=r.bottom-n.bottom),V(r,n)?e.scrollLeft-=n.left-r.left:C(r,n)&&(e.scrollLeft+=r.right-n.right)),e=e.parentNode}function T(e,t){return e.bottom>t.bottom}function R(e,t){return e.top<t.top}function V(e,t){return e.left<t.left}function C(e,t){return e.right>t.right}function F(e){return p(e)?e.startContainer.ownerDocument.defaultView:e.ownerDocument.defaultView}function I(e){if(p(e)){let t=e.commonAncestorContainer;return g(t)&&(t=t.parentNode),t}return e.parentNode}function E(e,t){const i=F(e),n=new w(e);if(i===t)return n;{let e=i;for(;e!=t;){const t=e.frameElement,i=new w(t).excludeScrollbarsAndBorders();n.moveBy(i.left,i.top),e=e.parent}}return n}class A extends e.Command{constructor(e,t){super(e),this.isEnabled=!0,this.affectsData=!1,this._state=t}execute(e,{matchCase:t,wholeWords:i}={}){const{editor:n}=this,{model:r}=n,s=n.plugins.get("FindAndReplaceUtils");let o;"string"==typeof e?(o=s.findByTextCallback(e,{matchCase:t,wholeWords:i}),this._state.searchText=e):o=e;const a=r.document.getRootNames().reduce(((e,t)=>s.updateFindResultFromRange(r.createRangeIn(r.document.getRoot(t)),r,o,e)),null);return this._state.clear(r),this._state.results.addMany(a),this._state.highlightedResult=a.get(0),"string"==typeof e&&(this._state.searchText=e),this._state.matchCase=!!t,this._state.matchWholeWords=!!i,{results:a,findCallback:o}}}class B extends e.Command{constructor(e,t){super(e),this.isEnabled=!0,this._state=t}_replace(e,t){const{model:i}=this.editor;i.change((n=>{const r=t.marker.getRange();if("$graveyard"===r.root.rootName)return void this._state.results.remove(t);let s={};for(const e of r.getItems())if(e.is("$text")||e.is("$textProxy")){s=e.getAttributes();break}i.insertContent(n.createText(e,s),r),this._state.results.has(t)&&this._state.results.remove(t)}))}}class N extends B{execute(e,t){this._replace(e,t)}}class S extends B{execute(e,t){const{editor:i}=this,{model:n}=i,s=i.plugins.get("FindAndReplaceUtils"),o=t instanceof r.Collection?t:n.document.getRootNames().reduce(((e,i)=>s.updateFindResultFromRange(n.createRangeIn(n.document.getRoot(i)),n,s.findByTextCallback(t,this._state),e)),null);o.length&&[...o].forEach((t=>{this._replace(e,t)}))}}class O extends e.Command{constructor(e,t){super(e),this.affectsData=!1,this._state=t,this.isEnabled=!1,this.listenTo(this._state.results,"change",(()=>{this.isEnabled=this._state.results.length>1}))}refresh(){this.isEnabled=this._state.results.length>1}execute(){const e=this._state.results,t=e.getIndex(this._state.highlightedResult),i=t+1>=e.length?0:t+1;this._state.highlightedResult=this._state.results.get(i)}}class j extends O{execute(){const e=this._state.results.getIndex(this._state.highlightedResult),t=e-1<0?this._state.results.length-1:e-1;this._state.highlightedResult=this._state.results.get(t)}}class M extends((0,r.ObservableMixin)()){constructor(e){super(),this.set("results",new r.Collection),this.set("highlightedResult",null),this.set("searchText",""),this.set("replaceText",""),this.set("matchCase",!1),this.set("matchWholeWords",!1),this.results.on("change",((t,{removed:i,index:n})=>{if(Array.from(i).length){let t=!1;if(e.change((n=>{for(const r of i)this.highlightedResult===r&&(t=!0),e.markers.has(r.marker.name)&&n.removeMarker(r.marker)})),t){const e=n>=this.results.length?0:n;this.highlightedResult=this.results.get(e)}}}))}clear(e){this.searchText="",e.change((t=>{if(this.highlightedResult){const i=this.highlightedResult.marker.name.split(":")[1],n=e.markers.get(`findResultHighlighted:${i}`);n&&t.removeMarker(n)}[...this.results].forEach((({marker:e})=>{t.removeMarker(e)}))})),this.results.clear()}}const P="object"==typeof global&&global&&global.Object===Object&&global;var D="object"==typeof self&&self&&self.Object===Object&&self;const W=P||D||Function("return this")();const $=W.Symbol;const H=function(e,t){for(var i=-1,n=null==e?0:e.length,r=Array(n);++i<n;)r[i]=t(e[i],i,e);return r};const L=Array.isArray;var U=Object.prototype,Z=U.hasOwnProperty,z=U.toString,K=$?$.toStringTag:void 0;const Y=function(e){var t=Z.call(e,K),i=e[K];try{e[K]=void 0;var n=!0}catch(e){}var r=z.call(e);return n&&(t?e[K]=i:delete e[K]),r};var q=Object.prototype.toString;const G=function(e){return q.call(e)};var J="[object Null]",X="[object Undefined]",Q=$?$.toStringTag:void 0;const ee=function(e){return null==e?void 0===e?X:J:Q&&Q in Object(e)?Y(e):G(e)};const te=function(e){return null!=e&&"object"==typeof e};var ie="[object Symbol]";const ne=function(e){return"symbol"==typeof e||te(e)&&ee(e)==ie};var re=1/0,se=$?$.prototype:void 0,oe=se?se.toString:void 0;const ae=function e(t){if("string"==typeof t)return t;if(L(t))return H(t,e)+"";if(ne(t))return oe?oe.call(t):"";var i=t+"";return"0"==i&&1/t==-re?"-0":i};const ce=function(e){return null==e?"":ae(e)};var le=/[\\^$.*+?()[\]{}|]/g,de=RegExp(le.source);const he=function(e){return(e=ce(e))&&de.test(e)?e.replace(le,"\\$&"):e};class fe extends e.Plugin{static get pluginName(){return"FindAndReplaceUtils"}updateFindResultFromRange(e,t,i,n){const s=n||new r.Collection;return t.change((n=>{[...e].forEach((({type:e,item:o})=>{if("elementStart"===e&&t.schema.checkChild(o,"$text")){const e=i({item:o,text:this.rangeToText(t.createRangeIn(o))});if(!e)return;e.forEach((e=>{const t=`findResult:${(0,r.uid)()}`,i=n.addMarker(t,{usingOperation:!1,affectsData:!1,range:n.createRange(n.createPositionAt(o,e.start),n.createPositionAt(o,e.end))}),a=function(e,t){const i=e.find((({marker:e})=>t.getStart().isBefore(e.getStart())));return i?e.getIndex(i):e.length}(s,i);s.add({id:t,label:e.label,marker:i},a)}))}}))})),s}rangeToText(e){return Array.from(e.getItems()).reduce(((e,t)=>t.is("$text")||t.is("$textProxy")?e+t.data:`${e}\n`),"")}findByTextCallback(e,t){let i="gu";t.matchCase||(i+="i");let n=`(${he(e)})`;if(t.wholeWords){const t="[^a-zA-ZÀ-ɏḀ-ỿ]";new RegExp("^"+t).test(e)||(n=`(^|${t}|_)${n}`),new RegExp(t+"$").test(e)||(n=`${n}(?=_|${t}|$)`)}const r=new RegExp(n,i);return function({text:e}){return[...e.matchAll(r)].map(ue)}}}function ue(e){const t=e.length-1;let i=e.index;return 3===e.length&&(i+=e[1].length),{label:e[t],start:i,end:i+e[t].length}}const pe=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)};const me=function(){return W.Date.now()};var ge=/\s/;const ke=function(e){for(var t=e.length;t--&&ge.test(e.charAt(t)););return t};var we=/^\s+/;const be=function(e){return e?e.slice(0,ke(e)+1).replace(we,""):e};var _e=NaN,ve=/^[-+]0x[0-9a-f]+$/i,xe=/^0b[01]+$/i,ye=/^0o[0-7]+$/i,Te=parseInt;const Re=function(e){if("number"==typeof e)return e;if(ne(e))return _e;if(pe(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=pe(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=be(e);var i=xe.test(e);return i||ye.test(e)?Te(e.slice(2),i?2:8):ve.test(e)?_e:+e};var Ve="Expected a function",Ce=Math.max,Fe=Math.min;const Ie=function(e,t,i){var n,r,s,o,a,c,l=0,d=!1,h=!1,f=!0;if("function"!=typeof e)throw new TypeError(Ve);function u(t){var i=n,s=r;return n=r=void 0,l=t,o=e.apply(s,i)}function p(e){var i=e-c;return void 0===c||i>=t||i<0||h&&e-l>=s}function m(){var e=me();if(p(e))return g(e);a=setTimeout(m,function(e){var i=t-(e-c);return h?Fe(i,s-(e-l)):i}(e))}function g(e){return a=void 0,f&&n?u(e):(n=r=void 0,o)}function k(){var e=me(),i=p(e);if(n=arguments,r=this,c=e,i){if(void 0===a)return function(e){return l=e,a=setTimeout(m,t),d?u(e):o}(c);if(h)return clearTimeout(a),a=setTimeout(m,t),u(c)}return void 0===a&&(a=setTimeout(m,t)),o}return t=Re(t)||0,pe(i)&&(d=!!i.leading,s=(h="maxWait"in i)?Ce(Re(i.maxWait)||0,t):s,f="trailing"in i?!!i.trailing:f),k.cancel=function(){void 0!==a&&clearTimeout(a),l=0,n=c=r=a=void 0},k.flush=function(){return void 0===a?o:g(me())},k};var Ee=i(299),Ae={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};o()(Ee.Z,Ae);Ee.Z.locals;class Be extends e.Plugin{static get requires(){return[fe]}static get pluginName(){return"FindAndReplaceEditing"}init(){this._activeResults=null,this.state=new M(this.editor.model),this._defineConverters(),this._defineCommands(),this.listenTo(this.state,"change:highlightedResult",((e,t,i,n)=>{const{model:r}=this.editor;r.change((e=>{if(n){const t=n.marker.name.split(":")[1],i=r.markers.get(`findResultHighlighted:${t}`);i&&e.removeMarker(i)}if(i){const t=i.marker.name.split(":")[1];e.addMarker(`findResultHighlighted:${t}`,{usingOperation:!1,affectsData:!1,range:i.marker.getRange()})}}))}));const e=Ie(((e,t,i)=>{if(i){const e=this.editor.editing.view.domConverter,t=this.editor.editing.mapper.toViewRange(i.marker.getRange());!function({target:e,viewportOffset:t=0}){const i=F(e);let n=i,r=null;for(;n;){let s;s=I(n==i?e:r),y(s,(()=>E(e,n)));const o=E(e,n);if(x(n,o,t),n.parent!=n){if(r=n.frameElement,n=n.parent,!r)return}else n=null}}({target:e.viewRangeToDom(t),viewportOffset:40})}}).bind(this),32);this.listenTo(this.state,"change:highlightedResult",e,{priority:"low"}),this.listenTo(this.editor,"destroy",e.cancel)}find(e){const{editor:t}=this,{model:i}=t,{findCallback:n,results:r}=t.execute("find",e);return this._activeResults=r,this.listenTo(i.document,"change:data",(()=>function(e,t,i){const n=new Set,r=new Set,s=t.model;s.document.differ.getChanges().forEach((e=>{"$text"===e.name||s.schema.isInline(e.position.nodeAfter)?(n.add(e.position.parent),[...s.markers.getMarkersAtPosition(e.position)].forEach((e=>{r.add(e.name)}))):"insert"===e.type&&n.add(e.position.nodeAfter)})),s.document.differ.getChangedMarkers().forEach((({name:e,data:{newRange:t}})=>{t&&"$graveyard"===t.start.root.rootName&&r.add(e)})),n.forEach((e=>{[...s.markers.getMarkersIntersectingRange(s.createRangeIn(e))].forEach((e=>r.add(e.name)))})),s.change((t=>{r.forEach((i=>{e.has(i)&&e.remove(i),t.removeMarker(i)}))})),n.forEach((n=>{t.plugins.get("FindAndReplaceUtils").updateFindResultFromRange(s.createRangeOn(n),s,i,e)}))}(this._activeResults,t,n))),this._activeResults}stop(){this._activeResults&&(this.stopListening(this.editor.model.document),this.state.clear(this.editor.model),this._activeResults=null)}_defineCommands(){this.editor.commands.add("find",new A(this.editor,this.state)),this.editor.commands.add("findNext",new O(this.editor,this.state)),this.editor.commands.add("findPrevious",new j(this.editor,this.state)),this.editor.commands.add("replace",new N(this.editor,this.state)),this.editor.commands.add("replaceAll",new S(this.editor,this.state))}_defineConverters(){const{editor:e}=this;e.conversion.for("editingDowncast").markerToHighlight({model:"findResult",view:({markerName:e})=>{const[,t]=e.split(":");return{name:"span",classes:["ck-find-result"],attributes:{"data-find-result":t}}}}),e.conversion.for("editingDowncast").markerToHighlight({model:"findResultHighlighted",view:({markerName:e})=>{const[,t]=e.split(":");return{name:"span",classes:["ck-find-result_selected"],attributes:{"data-find-result":t}}}})}}class Ne extends e.Plugin{static get requires(){return[Be,u]}static get pluginName(){return"FindAndReplace"}init(){const e=this.editor.plugins.get("FindAndReplaceUI"),t=this.editor.plugins.get("FindAndReplaceEditing"),i=t.state;e.on("findNext",((e,t)=>{t?(i.searchText=t.searchText,this.editor.execute("find",t.searchText,t)):this.editor.execute("findNext")})),e.on("findPrevious",((e,t)=>{t&&i.searchText!==t.searchText?this.editor.execute("find",t.searchText):this.editor.execute("findPrevious")})),e.on("replace",((e,t)=>{i.searchText!==t.searchText&&this.editor.execute("find",t.searchText);const n=i.highlightedResult;n&&this.editor.execute("replace",t.replaceText,n)})),e.on("replaceAll",((e,t)=>{i.searchText!==t.searchText&&this.editor.execute("find",t.searchText),this.editor.execute("replaceAll",t.replaceText,i.results)})),e.on("searchReseted",(()=>{i.clear(this.editor.model),t.stop()}))}}})(),(window.CKEditor5=window.CKEditor5||{}).findAndReplace=n})();
5
+ */(()=>{var e={299:(e,t,i)=>{"use strict";i.d(t,{Z:()=>s});var n=i(609),r=i.n(n)()((function(e){return e[1]}));r.push([e.id,".ck-find-result{background:var(--ck-color-highlight-background);color:var(--ck-color-text)}.ck-find-result_selected{background:#ff9633}",""]);const s=r},226:(e,t,i)=>{"use strict";i.d(t,{Z:()=>s});var n=i(609),r=i.n(n)()((function(e){return e[1]}));r.push([e.id,".ck.ck-find-and-replace-form{max-width:100%}.ck.ck-find-and-replace-form fieldset{display:flex}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find .ck-results-counter{position:absolute}.ck.ck-find-and-replace-form{width:400px}.ck.ck-find-and-replace-form:focus{outline:none}.ck.ck-find-and-replace-form fieldset{align-content:stretch;align-items:center;border:0;flex-direction:row;flex-wrap:nowrap;margin:0;padding:var(--ck-spacing-large)}.ck.ck-find-and-replace-form fieldset>.ck-button{flex:0 0 auto}[dir=ltr] .ck.ck-find-and-replace-form fieldset>*+*{margin-left:var(--ck-spacing-standard)}[dir=rtl] .ck.ck-find-and-replace-form fieldset>*+*{margin-right:var(--ck-spacing-standard)}.ck.ck-find-and-replace-form fieldset .ck-labeled-field-view{flex:1 1 auto}.ck.ck-find-and-replace-form fieldset .ck-labeled-field-view .ck-input{min-width:50px;width:100%}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find{align-items:flex-start}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button-find{font-weight:700}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button-find .ck-button__label{padding-left:var(--ck-spacing-large);padding-right:var(--ck-spacing-large)}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button-prev>.ck-icon{transform:rotate(90deg)}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button-next>.ck-icon{transform:rotate(-90deg)}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find .ck-results-counter{top:50%;transform:translateY(-50%)}[dir=ltr] .ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find .ck-results-counter{right:var(--ck-spacing-standard)}[dir=rtl] .ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find .ck-results-counter{left:var(--ck-spacing-standard)}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find .ck-results-counter{color:var(--ck-color-base-border)}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__replace{flex-wrap:wrap;justify-content:flex-end;margin-top:calc(var(--ck-spacing-large)*-1)}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__replace>.ck-labeled-field-view{margin-bottom:var(--ck-spacing-large)}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__replace>.ck-options-dropdown{margin-left:0;margin-right:auto}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__replace>.ck-labeled-field-view,.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__replace>.ck-labeled-field-view .ck-input{width:100%}@media screen and (max-width:600px){.ck.ck-find-and-replace-form{width:300px}.ck.ck-find-and-replace-form fieldset{flex-wrap:wrap}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find .ck-labeled-field-view{flex:1 0 auto;margin-bottom:var(--ck-spacing-standard);width:100%}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button{text-align:center}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button:first-of-type{flex:1 1 auto}[dir=ltr] .ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button:first-of-type{margin-left:0}[dir=rtl] .ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button:first-of-type{margin-right:0}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button:first-of-type .ck-button__label{text-align:center;width:100%}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__replace>:not(.ck-labeled-field-view){flex:1 1 auto}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__replace>.ck-dropdown:not(.ck-labeled-field-view){flex-grow:0}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__replace>.ck-button:not(.ck-labeled-field-view)>.ck-button__label{text-align:center;width:100%}}",""]);const s=r},764:(e,t,i)=>{"use strict";i.d(t,{Z:()=>s});var n=i(609),r=i.n(n)()((function(e){return e[1]}));r.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-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 s=r},609:e=>{"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var i=e(t);return t[2]?"@media ".concat(t[2]," {").concat(i,"}"):i})).join("")},t.i=function(e,i,n){"string"==typeof e&&(e=[[null,e,""]]);var r={};if(n)for(var s=0;s<this.length;s++){var o=this[s][0];null!=o&&(r[o]=!0)}for(var a=0;a<e.length;a++){var c=[].concat(e[a]);n&&r[c[0]]||(i&&(c[2]?c[2]="".concat(i," and ").concat(c[2]):c[2]=i),t.push(c))}},t}},62:(e,t,i)=>{"use strict";var n,r=function(){return void 0===n&&(n=Boolean(window&&document&&document.all&&!window.atob)),n},s=function(){var e={};return function(t){if(void 0===e[t]){var i=document.querySelector(t);if(window.HTMLIFrameElement&&i instanceof window.HTMLIFrameElement)try{i=i.contentDocument.head}catch(e){i=null}e[t]=i}return e[t]}}(),o=[];function a(e){for(var t=-1,i=0;i<o.length;i++)if(o[i].identifier===e){t=i;break}return t}function c(e,t){for(var i={},n=[],r=0;r<e.length;r++){var s=e[r],c=t.base?s[0]+t.base:s[0],l=i[c]||0,d="".concat(c," ").concat(l);i[c]=l+1;var h=a(d),f={css:s[1],media:s[2],sourceMap:s[3]};-1!==h?(o[h].references++,o[h].updater(f)):o.push({identifier:d,updater:g(f,t),references:1}),n.push(d)}return n}function l(e){var t=document.createElement("style"),n=e.attributes||{};if(void 0===n.nonce){var r=i.nc;r&&(n.nonce=r)}if(Object.keys(n).forEach((function(e){t.setAttribute(e,n[e])})),"function"==typeof e.insert)e.insert(t);else{var o=s(e.insert||"head");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(t)}return t}var d,h=(d=[],function(e,t){return d[e]=t,d.filter(Boolean).join("\n")});function f(e,t,i,n){var r=i?"":n.media?"@media ".concat(n.media," {").concat(n.css,"}"):n.css;if(e.styleSheet)e.styleSheet.cssText=h(t,r);else{var s=document.createTextNode(r),o=e.childNodes;o[t]&&e.removeChild(o[t]),o.length?e.insertBefore(s,o[t]):e.appendChild(s)}}function u(e,t,i){var n=i.css,r=i.media,s=i.sourceMap;if(r?e.setAttribute("media",r):e.removeAttribute("media"),s&&"undefined"!=typeof btoa&&(n+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(s))))," */")),e.styleSheet)e.styleSheet.cssText=n;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(n))}}var p=null,m=0;function g(e,t){var i,n,r;if(t.singleton){var s=m++;i=p||(p=l(t)),n=f.bind(null,i,s,!1),r=f.bind(null,i,s,!0)}else i=l(t),n=u.bind(null,i,t),r=function(){!function(e){if(null===e.parentNode)return!1;e.parentNode.removeChild(e)}(i)};return n(e),function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap)return;n(e=t)}else r()}}e.exports=function(e,t){(t=t||{}).singleton||"boolean"==typeof t.singleton||(t.singleton=r());var i=c(e=e||[],t);return function(e){if(e=e||[],"[object Array]"===Object.prototype.toString.call(e)){for(var n=0;n<i.length;n++){var r=a(i[n]);o[r].references--}for(var s=c(e,t),l=0;l<i.length;l++){var d=a(i[l]);0===o[d].references&&(o[d].updater(),o.splice(d,1))}i=s}}}},704:(e,t,i)=>{e.exports=i(79)("./src/core.js")},273:(e,t,i)=>{e.exports=i(79)("./src/ui.js")},209:(e,t,i)=>{e.exports=i(79)("./src/utils.js")},79:e=>{"use strict";e.exports=CKEditor5.dll}},t={};function i(n){var r=t[n];if(void 0!==r)return r.exports;var s=t[n]={id:n,exports:{}};return e[n](s,s.exports,i),s.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 n in t)i.o(t,n)&&!i.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},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})},i.nc=void 0;var n={};(()=>{"use strict";i.r(n),i.d(n,{FindAndReplace:()=>Ce,FindAndReplaceEditing:()=>Ve,FindAndReplaceUI:()=>u,FindAndReplaceUtils:()=>ce,FindCommand:()=>A,FindNextCommand:()=>O,FindPreviousCommand:()=>j,ReplaceAllCommand:()=>S,ReplaceCommand:()=>B});var e=i(704),t=i(273),r=i(209),s=i(62),o=i.n(s),a=i(764),c={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};o()(a.Z,c);a.Z.locals;var l=i(226),d={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};o()(l.Z,d);l.Z.locals;const h='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M11.463 5.187a.888.888 0 1 1 1.254 1.255L9.16 10l3.557 3.557a.888.888 0 1 1-1.254 1.255L7.26 10.61a.888.888 0 0 1 .16-1.382l4.043-4.042z"/></svg>';class f extends t.View{constructor(e){super(e);const i=e.t;this.set("matchCount",0),this.set("highlightOffset",0),this.set("isDirty",!1),this.set("_areCommandsEnabled",{}),this.set("_resultsCounterText",""),this.set("_matchCase",!1),this.set("_wholeWordsOnly",!1),this.bind("_searchResultsFound").to(this,"matchCount",this,"isDirty",((e,t)=>e>0&&!t)),this._findInputView=this._createInputField(i("Find in text…")),this._replaceInputView=this._createInputField(i("Replace with…")),this._findButtonView=this._createButton({label:i("Find"),class:"ck-button-find ck-button-action",withText:!0}),this._findPrevButtonView=this._createButton({label:i("Previous result"),class:"ck-button-prev",icon:h,keystroke:"Shift+F3",tooltip:!0}),this._findNextButtonView=this._createButton({label:i("Next result"),class:"ck-button-next",icon:h,keystroke:"F3",tooltip:!0}),this._optionsDropdown=this._createOptionsDropdown(),this._replaceButtonView=this._createButton({label:i("Replace"),class:"ck-button-replace",withText:!0}),this._replaceAllButtonView=this._createButton({label:i("Replace all"),class:"ck-button-replaceall",withText:!0}),this._findFieldsetView=this._createFindFieldset(),this._replaceFieldsetView=this._createReplaceFieldset(),this._focusTracker=new r.FocusTracker,this._keystrokes=new r.KeystrokeHandler,this._focusables=new t.ViewCollection,this._focusCycler=new t.FocusCycler({focusables:this._focusables,focusTracker:this._focusTracker,keystrokeHandler:this._keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}}),this.setTemplate({tag:"form",attributes:{class:["ck","ck-find-and-replace-form"],tabindex:"-1"},children:[new t.FormHeaderView(e,{label:i("Find and replace")}),this._findFieldsetView,this._replaceFieldsetView]})}render(){super.render(),(0,t.submitHandler)({view:this}),this._initFocusCycling(),this._initKeystrokeHandling()}destroy(){super.destroy(),this._focusTracker.destroy(),this._keystrokes.destroy()}focus(){this._focusCycler.focusFirst()}reset(){this._findInputView.errorText=null,this.isDirty=!0}get _textToFind(){return this._findInputView.fieldView.element.value}get _textToReplace(){return this._replaceInputView.fieldView.element.value}_createFindFieldset(){const e=this.locale,i=new t.View(e);return this._findInputView.fieldView.on("input",(()=>{this.isDirty=!0})),this._findButtonView.on("execute",this._onFindButtonExecute.bind(this)),this._findPrevButtonView.delegate("execute").to(this,"findPrevious"),this._findNextButtonView.delegate("execute").to(this,"findNext"),this._findPrevButtonView.bind("isEnabled").to(this,"_areCommandsEnabled",(({findPrevious:e})=>e)),this._findNextButtonView.bind("isEnabled").to(this,"_areCommandsEnabled",(({findNext:e})=>e)),this._injectFindResultsCounter(),i.setTemplate({tag:"fieldset",attributes:{class:["ck","ck-find-and-replace-form__find"]},children:[this._findInputView,this._findButtonView,this._findPrevButtonView,this._findNextButtonView]}),i}_onFindButtonExecute(){if(this._textToFind)this.isDirty=!1,this.fire("findNext",{searchText:this._textToFind,matchCase:this._matchCase,wholeWords:this._wholeWordsOnly});else{const e=this.t;this._findInputView.errorText=e("Text to find must not be empty.")}}_injectFindResultsCounter(){const e=this.locale,i=e.t,n=this.bindTemplate,s=new t.View(this.locale);this.bind("_resultsCounterText").to(this,"highlightOffset",this,"matchCount",((e,t)=>i("%0 of %1",[e,t]))),s.setTemplate({tag:"span",attributes:{class:["ck","ck-results-counter",n.if("isDirty","ck-hidden")]},children:[{text:n.to("_resultsCounterText")}]});const o=()=>{const t=this._findInputView.fieldView.element;if(!t||!(0,r.isVisible)(t))return;const i=new r.Rect(s.element).width,n="ltr"===e.uiLanguageDirection?"paddingRight":"paddingLeft";t.style[n]=i?`calc( 2 * var(--ck-spacing-standard) + ${i}px )`:""};this.on("change:_resultsCounterText",o,{priority:"low"}),this.on("change:isDirty",o,{priority:"low"}),this._findInputView.template.children[0].children.push(s)}_createReplaceFieldset(){const e=this.locale.t,i=new t.View(this.locale);return this._replaceButtonView.bind("isEnabled").to(this,"_areCommandsEnabled",this,"_searchResultsFound",(({replace:e},t)=>e&&t)),this._replaceAllButtonView.bind("isEnabled").to(this,"_areCommandsEnabled",this,"_searchResultsFound",(({replaceAll:e},t)=>e&&t)),this._replaceInputView.bind("isEnabled").to(this,"_areCommandsEnabled",this,"_searchResultsFound",(({replace:e},t)=>e&&t)),this._replaceInputView.bind("infoText").to(this._replaceInputView,"isEnabled",this._replaceInputView,"isFocused",((t,i)=>t||!i?"":e("Tip: Find some text first in order to replace it."))),this._replaceButtonView.on("execute",(()=>{this.fire("replace",{searchText:this._textToFind,replaceText:this._textToReplace})})),this._replaceAllButtonView.on("execute",(()=>{this.fire("replaceAll",{searchText:this._textToFind,replaceText:this._textToReplace}),this.focus()})),i.setTemplate({tag:"fieldset",attributes:{class:["ck","ck-find-and-replace-form__replace"]},children:[this._replaceInputView,this._optionsDropdown,this._replaceButtonView,this._replaceAllButtonView]}),i}_createOptionsDropdown(){const i=this.locale.t,n=(0,t.createDropdown)(this.locale);n.class="ck-options-dropdown",n.buttonView.set({withText:!1,label:i("Show options"),icon:e.icons.cog,tooltip:!0});const s=new t.Model({withText:!0,label:i("Match case"),_isMatchCaseSwitch:!0}),o=new t.Model({withText:!0,label:i("Whole words only")});return s.bind("isOn").to(this,"_matchCase"),o.bind("isOn").to(this,"_wholeWordsOnly"),n.on("execute",(e=>{e.source._isMatchCaseSwitch?this._matchCase=!this._matchCase:this._wholeWordsOnly=!this._wholeWordsOnly,this.isDirty=!0})),(0,t.addListToDropdown)(n,new r.Collection([{type:"switchbutton",model:s},{type:"switchbutton",model:o}])),n}_initFocusCycling(){[this._findInputView,this._findButtonView,this._findPrevButtonView,this._findNextButtonView,this._replaceInputView,this._optionsDropdown,this._replaceButtonView,this._replaceAllButtonView].forEach((e=>{this._focusables.add(e),this._focusTracker.add(e.element)}))}_initKeystrokeHandling(){const e=e=>e.stopPropagation(),t=e=>{e.stopPropagation(),e.preventDefault()};this._keystrokes.listenTo(this.element),this._keystrokes.set("f3",(e=>{t(e),this._findNextButtonView.fire("execute")})),this._keystrokes.set("shift+f3",(e=>{t(e),this._findPrevButtonView.fire("execute")})),this._keystrokes.set("enter",(e=>{const i=e.target;i===this._findInputView.fieldView.element?(this._areCommandsEnabled.findNext?this._findNextButtonView.fire("execute"):this._findButtonView.fire("execute"),t(e)):i!==this._replaceInputView.fieldView.element||this.isDirty||(this._replaceButtonView.fire("execute"),t(e))})),this._keystrokes.set("shift+enter",(e=>{e.target===this._findInputView.fieldView.element&&(this._areCommandsEnabled.findPrevious?this._findPrevButtonView.fire("execute"):this._findButtonView.fire("execute"),t(e))})),this._keystrokes.set("arrowright",e),this._keystrokes.set("arrowleft",e),this._keystrokes.set("arrowup",e),this._keystrokes.set("arrowdown",e),this.listenTo(this._findInputView.element,"selectstart",((e,t)=>{t.stopPropagation()}),{priority:"high"}),this.listenTo(this._replaceInputView.element,"selectstart",((e,t)=>{t.stopPropagation()}),{priority:"high"})}_createButton(e){const i=new t.ButtonView(this.locale);return i.set(e),i}_createInputField(e){const i=new t.LabeledFieldView(this.locale,t.createLabeledInputText);return i.label=e,i}}class u extends e.Plugin{static get pluginName(){return"FindAndReplaceUI"}constructor(e){super(e),this.formView=null}init(){const e=this.editor;e.ui.componentFactory.add("findAndReplace",(i=>{const n=(0,t.createDropdown)(i),r=e.commands.get("find");return n.bind("isEnabled").to(r),n.once("change:isOpen",(()=>{this.formView=new((0,t.CssTransitionDisablerMixin)(f))(e.locale),n.panelView.children.add(this.formView),this._setupFormView(this.formView)})),n.on("change:isOpen",((e,t,i)=>{i?(this.formView.disableCssTransitions(),this.formView.reset(),this.formView._findInputView.fieldView.select(),this.formView.enableCssTransitions()):this.fire("searchReseted")}),{priority:"low"}),this._setupDropdownButton(n),n}))}_setupDropdownButton(e){const t=this.editor,i=t.locale.t;e.buttonView.set({icon:'<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m12.87 13.786 1.532-1.286 3.857 4.596a1 1 0 1 1-1.532 1.286l-3.857-4.596z"/><path d="M16.004 8.5a6.5 6.5 0 0 1-9.216 5.905c-1.154-.53-.863-1.415-.663-1.615.194-.194.564-.592 1.635-.141a4.5 4.5 0 0 0 5.89-5.904l-.104-.227 1.332-1.331c.045-.046.196-.041.224.007a6.47 6.47 0 0 1 .902 3.306zm-3.4-5.715c.562.305.742 1.106.354 1.494-.388.388-.995.414-1.476.178a4.5 4.5 0 0 0-6.086 5.882l.114.236-1.348 1.349c-.038.037-.17.022-.198-.023a6.5 6.5 0 0 1 5.54-9.9 6.469 6.469 0 0 1 3.1.784z"/><path d="M4.001 11.93.948 8.877a.2.2 0 0 1 .141-.341h6.106a.2.2 0 0 1 .141.341L4.283 11.93a.2.2 0 0 1-.282 0zm11.083-6.789 3.053 3.053a.2.2 0 0 1-.14.342H11.89a.2.2 0 0 1-.14-.342l3.052-3.053a.2.2 0 0 1 .282 0z"/></svg>',label:i("Find and replace"),keystroke:"CTRL+F",tooltip:!0}),t.keystrokes.set("Ctrl+F",((t,i)=>{e.isEnabled&&(e.isOpen=!0,i())}))}_setupFormView(e){const t=this.editor.commands,i=this.editor.plugins.get("FindAndReplaceEditing").state,n={before:-1,same:0,after:1,different:1};e.bind("highlightOffset").to(i,"highlightedResult",(e=>e?Array.from(i.results).sort(((e,t)=>n[e.marker.getStart().compareWith(t.marker.getStart())])).indexOf(e)+1:0)),e.listenTo(i.results,"change",(()=>{e.matchCount=i.results.length}));const r=t.get("findNext"),s=t.get("findPrevious"),o=t.get("replace"),a=t.get("replaceAll");e.bind("_areCommandsEnabled").to(r,"isEnabled",s,"isEnabled",o,"isEnabled",a,"isEnabled",((e,t,i,n)=>({findNext:e,findPrevious:t,replace:i,replaceAll:n}))),e.delegate("findNext","findPrevious","replace","replaceAll").to(this),e.on("change:isDirty",((e,t,i)=>{i&&this.fire("searchReseted")}))}}function p(e){return"[object Range]"==Object.prototype.toString.apply(e)}function m(e){const t=Object.prototype.toString.apply(e);return"[object Window]"==t||"[object global]"==t}function g(e){return"[object Text]"==Object.prototype.toString.call(e)}const k=["top","right","bottom","left","width","height"];class w{constructor(e){const t=p(e);if(Object.defineProperty(this,"_source",{value:e._source||e,writable:!0,enumerable:!1}),v(e)||t)if(t){const t=w.getDomRangeRects(e);b(this,w.getBoundingRect(t))}else b(this,e.getBoundingClientRect());else if(m(e)){const{innerWidth:t,innerHeight:i}=e;b(this,{top:0,right:t,bottom:i,left:0,width:t,height:i})}else b(this,e)}clone(){return new w(this)}moveTo(e,t){return this.top=t,this.right=e+this.width,this.bottom=t+this.height,this.left=e,this}moveBy(e,t){return this.top+=t,this.right+=e,this.left+=e,this.bottom+=t,this}getIntersection(e){const t={top:Math.max(this.top,e.top),right:Math.min(this.right,e.right),bottom:Math.min(this.bottom,e.bottom),left:Math.max(this.left,e.left),width:0,height:0};return t.width=t.right-t.left,t.height=t.bottom-t.top,t.width<0||t.height<0?null:new w(t)}getIntersectionArea(e){const t=this.getIntersection(e);return t?t.getArea():0}getArea(){return this.width*this.height}getVisible(){const e=this._source;let t=this.clone();if(!_(e)){let i=e.parentNode||e.commonAncestorContainer;for(;i&&!_(i);){const e=new w(i),n=t.getIntersection(e);if(!n)return null;n.getArea()<t.getArea()&&(t=n),i=i.parentNode}}return t}isEqual(e){for(const t of k)if(this[t]!==e[t])return!1;return!0}contains(e){const t=this.getIntersection(e);return!(!t||!t.isEqual(e))}excludeScrollbarsAndBorders(){const e=this._source;let t,i,n;if(m(e))t=e.innerWidth-e.document.documentElement.clientWidth,i=e.innerHeight-e.document.documentElement.clientHeight,n=e.getComputedStyle(e.document.documentElement).direction;else{const r=function(e){const t=e.ownerDocument.defaultView.getComputedStyle(e);return{top:parseInt(t.borderTopWidth,10),right:parseInt(t.borderRightWidth,10),bottom:parseInt(t.borderBottomWidth,10),left:parseInt(t.borderLeftWidth,10)}}(e);t=e.offsetWidth-e.clientWidth-r.left-r.right,i=e.offsetHeight-e.clientHeight-r.top-r.bottom,n=e.ownerDocument.defaultView.getComputedStyle(e).direction,this.left+=r.left,this.top+=r.top,this.right-=r.right,this.bottom-=r.bottom,this.width=this.right-this.left,this.height=this.bottom-this.top}return this.width-=t,"ltr"===n?this.right-=t:this.left+=t,this.height-=i,this.bottom-=i,this}static getDomRangeRects(e){const t=[],i=Array.from(e.getClientRects());if(i.length)for(const e of i)t.push(new w(e));else{let i=e.startContainer;g(i)&&(i=i.parentNode);const n=new w(i.getBoundingClientRect());n.right=n.left,n.width=0,t.push(n)}return t}static getBoundingRect(e){const t={left:Number.POSITIVE_INFINITY,top:Number.POSITIVE_INFINITY,right:Number.NEGATIVE_INFINITY,bottom:Number.NEGATIVE_INFINITY,width:0,height:0};let i=0;for(const n of e)i++,t.left=Math.min(t.left,n.left),t.top=Math.min(t.top,n.top),t.right=Math.max(t.right,n.right),t.bottom=Math.max(t.bottom,n.bottom);return 0==i?null:(t.width=t.right-t.left,t.height=t.bottom-t.top,new w(t))}}function b(e,t){for(const i of k)e[i]=t[i]}function _(e){return!!v(e)&&e===e.ownerDocument.body}function v(e){return null!==e&&"object"==typeof e&&1===e.nodeType&&"function"==typeof e.getBoundingClientRect}function x({window:e,rect:t,alignToTop:i,forceScroll:n,viewportOffset:r}){const s=t.clone().moveBy(0,r),o=t.clone().moveBy(0,-r),a=new w(e).excludeScrollbarsAndBorders(),c=i&&n,l=[o,s].every((e=>a.contains(e)));let{scrollX:d,scrollY:h}=e;const f=d,u=h;c?h-=a.top-t.top+r:l||(R(o,a)?h-=a.top-t.top+r:T(s,a)&&(h+=i?t.top-a.top-r:t.bottom-a.bottom+r)),l||(V(t,a)?d-=a.left-t.left+r:C(t,a)&&(d+=t.right-a.right+r)),d==f&&h===u||e.scrollTo(d,h)}function y({parent:e,getRect:t,alignToTop:i,forceScroll:n,ancestorOffset:r=0}){const s=F(e),o=i&&n;let a,c,l;for(;e!=s.document.body;)c=t(),a=new w(e).excludeScrollbarsAndBorders(),l=a.contains(c),o?e.scrollTop-=a.top-c.top+r:l||(R(c,a)?e.scrollTop-=a.top-c.top+r:T(c,a)&&(e.scrollTop+=i?c.top-a.top-r:c.bottom-a.bottom+r)),l||(V(c,a)?e.scrollLeft-=a.left-c.left+r:C(c,a)&&(e.scrollLeft+=c.right-a.right+r)),e=e.parentNode}function T(e,t){return e.bottom>t.bottom}function R(e,t){return e.top<t.top}function V(e,t){return e.left<t.left}function C(e,t){return e.right>t.right}function F(e){return p(e)?e.startContainer.ownerDocument.defaultView:e.ownerDocument.defaultView}function I(e){if(p(e)){let t=e.commonAncestorContainer;return g(t)&&(t=t.parentNode),t}return e.parentNode}function E(e,t){const i=F(e),n=new w(e);if(i===t)return n;{let e=i;for(;e!=t;){const t=e.frameElement,i=new w(t).excludeScrollbarsAndBorders();n.moveBy(i.left,i.top),e=e.parent}}return n}class A extends e.Command{constructor(e,t){super(e),this.isEnabled=!0,this.affectsData=!1,this._state=t}execute(e,{matchCase:t,wholeWords:i}={}){const{editor:n}=this,{model:r}=n,s=n.plugins.get("FindAndReplaceUtils");let o;"string"==typeof e?(o=s.findByTextCallback(e,{matchCase:t,wholeWords:i}),this._state.searchText=e):o=e;const a=r.document.getRootNames().reduce(((e,t)=>s.updateFindResultFromRange(r.createRangeIn(r.document.getRoot(t)),r,o,e)),null);return this._state.clear(r),this._state.results.addMany(a),this._state.highlightedResult=a.get(0),"string"==typeof e&&(this._state.searchText=e),this._state.matchCase=!!t,this._state.matchWholeWords=!!i,{results:a,findCallback:o}}}class N extends e.Command{constructor(e,t){super(e),this.isEnabled=!0,this._state=t}_replace(e,t){const{model:i}=this.editor;i.change((n=>{const r=t.marker.getRange();if("$graveyard"===r.root.rootName)return void this._state.results.remove(t);let s={};for(const e of r.getItems())if(e.is("$text")||e.is("$textProxy")){s=e.getAttributes();break}i.insertContent(n.createText(e,s),r),this._state.results.has(t)&&this._state.results.remove(t)}))}}class B extends N{execute(e,t){this._replace(e,t)}}class S extends N{execute(e,t){const{editor:i}=this,{model:n}=i,s=i.plugins.get("FindAndReplaceUtils"),o=t instanceof r.Collection?t:n.document.getRootNames().reduce(((e,i)=>s.updateFindResultFromRange(n.createRangeIn(n.document.getRoot(i)),n,s.findByTextCallback(t,this._state),e)),null);o.length&&[...o].forEach((t=>{this._replace(e,t)}))}}class O extends e.Command{constructor(e,t){super(e),this.affectsData=!1,this._state=t,this.isEnabled=!1,this.listenTo(this._state.results,"change",(()=>{this.isEnabled=this._state.results.length>1}))}refresh(){this.isEnabled=this._state.results.length>1}execute(){const e=this._state.results,t=e.getIndex(this._state.highlightedResult),i=t+1>=e.length?0:t+1;this._state.highlightedResult=this._state.results.get(i)}}class j extends O{execute(){const e=this._state.results.getIndex(this._state.highlightedResult),t=e-1<0?this._state.results.length-1:e-1;this._state.highlightedResult=this._state.results.get(t)}}class M extends((0,r.ObservableMixin)()){constructor(e){super(),this.set("results",new r.Collection),this.set("highlightedResult",null),this.set("searchText",""),this.set("replaceText",""),this.set("matchCase",!1),this.set("matchWholeWords",!1),this.results.on("change",((t,{removed:i,index:n})=>{if(Array.from(i).length){let t=!1;if(e.change((n=>{for(const r of i)this.highlightedResult===r&&(t=!0),e.markers.has(r.marker.name)&&n.removeMarker(r.marker)})),t){const e=n>=this.results.length?0:n;this.highlightedResult=this.results.get(e)}}}))}clear(e){this.searchText="",e.change((t=>{if(this.highlightedResult){const i=this.highlightedResult.marker.name.split(":")[1],n=e.markers.get(`findResultHighlighted:${i}`);n&&t.removeMarker(n)}[...this.results].forEach((({marker:e})=>{t.removeMarker(e)}))})),this.results.clear()}}const P="object"==typeof global&&global&&global.Object===Object&&global;var D="object"==typeof self&&self&&self.Object===Object&&self;const W=P||D||Function("return this")();const $=W.Symbol;const H=function(e,t){for(var i=-1,n=null==e?0:e.length,r=Array(n);++i<n;)r[i]=t(e[i],i,e);return r};const L=Array.isArray;var U=Object.prototype,Z=U.hasOwnProperty,z=U.toString,K=$?$.toStringTag:void 0;const Y=function(e){var t=Z.call(e,K),i=e[K];try{e[K]=void 0;var n=!0}catch(e){}var r=z.call(e);return n&&(t?e[K]=i:delete e[K]),r};var q=Object.prototype.toString;const G=function(e){return q.call(e)};var J=$?$.toStringTag:void 0;const X=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":J&&J in Object(e)?Y(e):G(e)};const Q=function(e){return null!=e&&"object"==typeof e};const ee=function(e){return"symbol"==typeof e||Q(e)&&"[object Symbol]"==X(e)};var te=$?$.prototype:void 0,ie=te?te.toString:void 0;const ne=function e(t){if("string"==typeof t)return t;if(L(t))return H(t,e)+"";if(ee(t))return ie?ie.call(t):"";var i=t+"";return"0"==i&&1/t==-Infinity?"-0":i};const re=function(e){return null==e?"":ne(e)};var se=/[\\^$.*+?()[\]{}|]/g,oe=RegExp(se.source);const ae=function(e){return(e=re(e))&&oe.test(e)?e.replace(se,"\\$&"):e};class ce extends e.Plugin{static get pluginName(){return"FindAndReplaceUtils"}updateFindResultFromRange(e,t,i,n){const s=n||new r.Collection;return t.change((n=>{[...e].forEach((({type:e,item:o})=>{if("elementStart"===e&&t.schema.checkChild(o,"$text")){const e=i({item:o,text:this.rangeToText(t.createRangeIn(o))});if(!e)return;e.forEach((e=>{const t=`findResult:${(0,r.uid)()}`,i=n.addMarker(t,{usingOperation:!1,affectsData:!1,range:n.createRange(n.createPositionAt(o,e.start),n.createPositionAt(o,e.end))}),a=function(e,t){const i=e.find((({marker:e})=>t.getStart().isBefore(e.getStart())));return i?e.getIndex(i):e.length}(s,i);s.add({id:t,label:e.label,marker:i},a)}))}}))})),s}rangeToText(e){return Array.from(e.getItems()).reduce(((e,t)=>t.is("$text")||t.is("$textProxy")?e+t.data:`${e}\n`),"")}findByTextCallback(e,t){let i="gu";t.matchCase||(i+="i");let n=`(${ae(e)})`;if(t.wholeWords){const t="[^a-zA-ZÀ-ɏḀ-ỿ]";new RegExp("^"+t).test(e)||(n=`(^|${t}|_)${n}`),new RegExp(t+"$").test(e)||(n=`${n}(?=_|${t}|$)`)}const r=new RegExp(n,i);return function({text:e}){return[...e.matchAll(r)].map(le)}}}function le(e){const t=e.length-1;let i=e.index;return 3===e.length&&(i+=e[1].length),{label:e[t],start:i,end:i+e[t].length}}const de=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)};const he=function(){return W.Date.now()};var fe=/\s/;const ue=function(e){for(var t=e.length;t--&&fe.test(e.charAt(t)););return t};var pe=/^\s+/;const me=function(e){return e?e.slice(0,ue(e)+1).replace(pe,""):e};var ge=/^[-+]0x[0-9a-f]+$/i,ke=/^0b[01]+$/i,we=/^0o[0-7]+$/i,be=parseInt;const _e=function(e){if("number"==typeof e)return e;if(ee(e))return NaN;if(de(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=de(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=me(e);var i=ke.test(e);return i||we.test(e)?be(e.slice(2),i?2:8):ge.test(e)?NaN:+e};var ve=Math.max,xe=Math.min;const ye=function(e,t,i){var n,r,s,o,a,c,l=0,d=!1,h=!1,f=!0;if("function"!=typeof e)throw new TypeError("Expected a function");function u(t){var i=n,s=r;return n=r=void 0,l=t,o=e.apply(s,i)}function p(e){var i=e-c;return void 0===c||i>=t||i<0||h&&e-l>=s}function m(){var e=he();if(p(e))return g(e);a=setTimeout(m,function(e){var i=t-(e-c);return h?xe(i,s-(e-l)):i}(e))}function g(e){return a=void 0,f&&n?u(e):(n=r=void 0,o)}function k(){var e=he(),i=p(e);if(n=arguments,r=this,c=e,i){if(void 0===a)return function(e){return l=e,a=setTimeout(m,t),d?u(e):o}(c);if(h)return clearTimeout(a),a=setTimeout(m,t),u(c)}return void 0===a&&(a=setTimeout(m,t)),o}return t=_e(t)||0,de(i)&&(d=!!i.leading,s=(h="maxWait"in i)?ve(_e(i.maxWait)||0,t):s,f="trailing"in i?!!i.trailing:f),k.cancel=function(){void 0!==a&&clearTimeout(a),l=0,n=c=r=a=void 0},k.flush=function(){return void 0===a?o:g(he())},k};var Te=i(299),Re={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};o()(Te.Z,Re);Te.Z.locals;class Ve extends e.Plugin{static get requires(){return[ce]}static get pluginName(){return"FindAndReplaceEditing"}init(){this._activeResults=null,this.state=new M(this.editor.model),this._defineConverters(),this._defineCommands(),this.listenTo(this.state,"change:highlightedResult",((e,t,i,n)=>{const{model:r}=this.editor;r.change((e=>{if(n){const t=n.marker.name.split(":")[1],i=r.markers.get(`findResultHighlighted:${t}`);i&&e.removeMarker(i)}if(i){const t=i.marker.name.split(":")[1];e.addMarker(`findResultHighlighted:${t}`,{usingOperation:!1,affectsData:!1,range:i.marker.getRange()})}}))}));const e=ye(((e,t,i)=>{if(i){const e=this.editor.editing.view.domConverter,t=this.editor.editing.mapper.toViewRange(i.marker.getRange());!function({target:e,viewportOffset:t=0,ancestorOffset:i=0,alignToTop:n,forceScroll:r}){const s=F(e);let o=s,a=null;for(;o;){let c;c=I(o==s?e:a),y({parent:c,getRect:()=>E(e,o),alignToTop:n,ancestorOffset:i,forceScroll:r});const l=E(e,o);if(x({window:o,rect:l,viewportOffset:t,alignToTop:n,forceScroll:r}),o.parent!=o){if(a=o.frameElement,o=o.parent,!a)return}else o=null}}({target:e.viewRangeToDom(t),viewportOffset:40})}}).bind(this),32);this.listenTo(this.state,"change:highlightedResult",e,{priority:"low"}),this.listenTo(this.editor,"destroy",e.cancel)}find(e){const{editor:t}=this,{model:i}=t,{findCallback:n,results:r}=t.execute("find",e);return this._activeResults=r,this.listenTo(i.document,"change:data",(()=>function(e,t,i){const n=new Set,r=new Set,s=t.model;s.document.differ.getChanges().forEach((e=>{"$text"===e.name||s.schema.isInline(e.position.nodeAfter)?(n.add(e.position.parent),[...s.markers.getMarkersAtPosition(e.position)].forEach((e=>{r.add(e.name)}))):"insert"===e.type&&n.add(e.position.nodeAfter)})),s.document.differ.getChangedMarkers().forEach((({name:e,data:{newRange:t}})=>{t&&"$graveyard"===t.start.root.rootName&&r.add(e)})),n.forEach((e=>{[...s.markers.getMarkersIntersectingRange(s.createRangeIn(e))].forEach((e=>r.add(e.name)))})),s.change((t=>{r.forEach((i=>{e.has(i)&&e.remove(i),t.removeMarker(i)}))})),n.forEach((n=>{t.plugins.get("FindAndReplaceUtils").updateFindResultFromRange(s.createRangeOn(n),s,i,e)}))}(this._activeResults,t,n))),this._activeResults}stop(){this._activeResults&&(this.stopListening(this.editor.model.document),this.state.clear(this.editor.model),this._activeResults=null)}_defineCommands(){this.editor.commands.add("find",new A(this.editor,this.state)),this.editor.commands.add("findNext",new O(this.editor,this.state)),this.editor.commands.add("findPrevious",new j(this.editor,this.state)),this.editor.commands.add("replace",new B(this.editor,this.state)),this.editor.commands.add("replaceAll",new S(this.editor,this.state))}_defineConverters(){const{editor:e}=this;e.conversion.for("editingDowncast").markerToHighlight({model:"findResult",view:({markerName:e})=>{const[,t]=e.split(":");return{name:"span",classes:["ck-find-result"],attributes:{"data-find-result":t}}}}),e.conversion.for("editingDowncast").markerToHighlight({model:"findResultHighlighted",view:({markerName:e})=>{const[,t]=e.split(":");return{name:"span",classes:["ck-find-result_selected"],attributes:{"data-find-result":t}}}})}}class Ce extends e.Plugin{static get requires(){return[Ve,u]}static get pluginName(){return"FindAndReplace"}init(){const e=this.editor.plugins.get("FindAndReplaceUI"),t=this.editor.plugins.get("FindAndReplaceEditing"),i=t.state;e.on("findNext",((e,t)=>{t?(i.searchText=t.searchText,this.editor.execute("find",t.searchText,t)):this.editor.execute("findNext")})),e.on("findPrevious",((e,t)=>{t&&i.searchText!==t.searchText?this.editor.execute("find",t.searchText):this.editor.execute("findPrevious")})),e.on("replace",((e,t)=>{i.searchText!==t.searchText&&this.editor.execute("find",t.searchText);const n=i.highlightedResult;n&&this.editor.execute("replace",t.replaceText,n)})),e.on("replaceAll",((e,t)=>{i.searchText!==t.searchText&&this.editor.execute("find",t.searchText),this.editor.execute("replaceAll",t.replaceText,i.results)})),e.on("searchReseted",(()=>{i.clear(this.editor.model),t.stop()}))}}})(),(window.CKEditor5=window.CKEditor5||{}).findAndReplace=n})();
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
1
+ # Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
2
2
  #
3
3
  # !!! IMPORTANT !!!
4
4
  #
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ckeditor/ckeditor5-find-and-replace",
3
- "version": "37.0.0-alpha.2",
3
+ "version": "37.0.0-rc.0",
4
4
  "description": "Find and replace feature for CKEditor 5.",
5
5
  "keywords": [
6
6
  "ckeditor",
@@ -12,35 +12,35 @@
12
12
  ],
13
13
  "main": "src/index.js",
14
14
  "dependencies": {
15
- "@ckeditor/ckeditor5-ui": "^37.0.0-alpha.2",
16
- "@ckeditor/ckeditor5-utils": "^37.0.0-alpha.2",
17
- "ckeditor5": "^37.0.0-alpha.2",
15
+ "@ckeditor/ckeditor5-ui": "^37.0.0-rc.0",
16
+ "@ckeditor/ckeditor5-utils": "^37.0.0-rc.0",
17
+ "ckeditor5": "^37.0.0-rc.0",
18
18
  "lodash-es": "^4.17.15"
19
19
  },
20
20
  "devDependencies": {
21
- "@ckeditor/ckeditor5-dev-utils": "^35.0.0",
22
- "@ckeditor/ckeditor5-basic-styles": "^37.0.0-alpha.2",
23
- "@ckeditor/ckeditor5-core": "^37.0.0-alpha.2",
24
- "@ckeditor/ckeditor5-editor-classic": "^37.0.0-alpha.2",
25
- "@ckeditor/ckeditor5-editor-decoupled": "^37.0.0-alpha.2",
26
- "@ckeditor/ckeditor5-editor-multi-root": "^37.0.0-alpha.2",
27
- "@ckeditor/ckeditor5-engine": "^37.0.0-alpha.2",
28
- "@ckeditor/ckeditor5-essentials": "^37.0.0-alpha.2",
29
- "@ckeditor/ckeditor5-heading": "^37.0.0-alpha.2",
30
- "@ckeditor/ckeditor5-font": "^37.0.0-alpha.2",
31
- "@ckeditor/ckeditor5-highlight": "^37.0.0-alpha.2",
32
- "@ckeditor/ckeditor5-link": "^37.0.0-alpha.2",
33
- "@ckeditor/ckeditor5-list": "^37.0.0-alpha.2",
34
- "@ckeditor/ckeditor5-paragraph": "^37.0.0-alpha.2",
35
- "@ckeditor/ckeditor5-source-editing": "^37.0.0-alpha.2",
36
- "@ckeditor/ckeditor5-theme-lark": "^37.0.0-alpha.2",
37
- "@ckeditor/ckeditor5-undo": "^37.0.0-alpha.2",
21
+ "@ckeditor/ckeditor5-dev-utils": "^36.0.0",
22
+ "@ckeditor/ckeditor5-basic-styles": "^37.0.0-rc.0",
23
+ "@ckeditor/ckeditor5-core": "^37.0.0-rc.0",
24
+ "@ckeditor/ckeditor5-editor-classic": "^37.0.0-rc.0",
25
+ "@ckeditor/ckeditor5-editor-decoupled": "^37.0.0-rc.0",
26
+ "@ckeditor/ckeditor5-editor-multi-root": "^37.0.0-rc.0",
27
+ "@ckeditor/ckeditor5-engine": "^37.0.0-rc.0",
28
+ "@ckeditor/ckeditor5-essentials": "^37.0.0-rc.0",
29
+ "@ckeditor/ckeditor5-heading": "^37.0.0-rc.0",
30
+ "@ckeditor/ckeditor5-font": "^37.0.0-rc.0",
31
+ "@ckeditor/ckeditor5-highlight": "^37.0.0-rc.0",
32
+ "@ckeditor/ckeditor5-link": "^37.0.0-rc.0",
33
+ "@ckeditor/ckeditor5-list": "^37.0.0-rc.0",
34
+ "@ckeditor/ckeditor5-paragraph": "^37.0.0-rc.0",
35
+ "@ckeditor/ckeditor5-source-editing": "^37.0.0-rc.0",
36
+ "@ckeditor/ckeditor5-theme-lark": "^37.0.0-rc.0",
37
+ "@ckeditor/ckeditor5-undo": "^37.0.0-rc.0",
38
38
  "typescript": "^4.8.4",
39
39
  "webpack": "^5.58.1",
40
40
  "webpack-cli": "^4.9.0"
41
41
  },
42
42
  "engines": {
43
- "node": ">=14.0.0",
43
+ "node": ">=16.0.0",
44
44
  "npm": ">=5.7.1"
45
45
  },
46
46
  "author": "CKSource (http://cksource.com/)",
@@ -5,7 +5,9 @@
5
5
  /**
6
6
  * @module find-and-replace/findandreplace
7
7
  */
8
- import { Plugin, type PluginDependencies } from 'ckeditor5/src/core';
8
+ import { Plugin } from 'ckeditor5/src/core';
9
+ import FindAndReplaceUI from './findandreplaceui';
10
+ import FindAndReplaceEditing from './findandreplaceediting';
9
11
  import type { Marker } from 'ckeditor5/src/engine';
10
12
  export type ResultType = {
11
13
  id?: string;
@@ -28,7 +30,7 @@ export default class FindAndReplace extends Plugin {
28
30
  /**
29
31
  * @inheritDoc
30
32
  */
31
- static get requires(): PluginDependencies;
33
+ static get requires(): readonly [typeof FindAndReplaceEditing, typeof FindAndReplaceUI];
32
34
  /**
33
35
  * @inheritDoc
34
36
  */
@@ -5,10 +5,11 @@
5
5
  /**
6
6
  * @module find-and-replace/findandreplaceediting
7
7
  */
8
- import { Plugin, type PluginDependencies } from 'ckeditor5/src/core';
8
+ import { Plugin } from 'ckeditor5/src/core';
9
9
  import type { Item } from 'ckeditor5/src/engine';
10
10
  import type { Collection } from 'ckeditor5/src/utils';
11
11
  import FindAndReplaceState from './findandreplacestate';
12
+ import FindAndReplaceUtils from './findandreplaceutils';
12
13
  import type { ResultType } from './findandreplace';
13
14
  import '../theme/findandreplace.css';
14
15
  /**
@@ -18,7 +19,7 @@ export default class FindAndReplaceEditing extends Plugin {
18
19
  /**
19
20
  * @inheritDoc
20
21
  */
21
- static get requires(): PluginDependencies;
22
+ static get requires(): readonly [typeof FindAndReplaceUtils];
22
23
  /**
23
24
  * @inheritDoc
24
25
  */