File manager - Edit - /home/opticamezl/www/newok/searchreplace.zip
Back
PK �h�\�@ 9 9 plugin.min.jsnu �[��� /** * Copyright (c) Tiny Technologies, Inc. All rights reserved. * Licensed under the LGPL or a commercial license. * For LGPL see License.txt in the project root for license information. * For commercial licenses see https://www.tiny.cloud/ * * Version: 5.10.9 (2023-11-15) */ !function(){"use strict";function g(e){var t=e;return{get:function(){return t},set:function(e){t=e}}}function e(r){return function(e){return n=typeof(t=e),(null===t?"null":"object"==n&&(Array.prototype.isPrototypeOf(t)||t.constructor&&"Array"===t.constructor.name)?"array":"object"==n&&(String.prototype.isPrototypeOf(t)||t.constructor&&"String"===t.constructor.name)?"string":n)===r;var t,n}}function t(t){return function(e){return typeof e===t}}function p(){}function i(e){return function(){return e}}function n(e){return e}function r(){return m}var o=tinymce.util.Tools.resolve("tinymce.PluginManager"),v=function(){return(v=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},a=e("string"),c=e("array"),u=t("boolean"),l=t("number"),s=i(!1),f=i(!0),d=i("[!-#%-*,-\\/:;?@\\[-\\]_{}\xa1\xab\xb7\xbb\xbf;\xb7\u055a-\u055f\u0589\u058a\u05be\u05c0\u05c3\u05c6\u05f3\u05f4\u0609\u060a\u060c\u060d\u061b\u061e\u061f\u066a-\u066d\u06d4\u0700-\u070d\u07f7-\u07f9\u0830-\u083e\u085e\u0964\u0965\u0970\u0df4\u0e4f\u0e5a\u0e5b\u0f04-\u0f12\u0f3a-\u0f3d\u0f85\u0fd0-\u0fd4\u0fd9\u0fda\u104a-\u104f\u10fb\u1361-\u1368\u1400\u166d\u166e\u169b\u169c\u16eb-\u16ed\u1735\u1736\u17d4-\u17d6\u17d8-\u17da\u1800-\u180a\u1944\u1945\u1a1e\u1a1f\u1aa0-\u1aa6\u1aa8-\u1aad\u1b5a-\u1b60\u1bfc-\u1bff\u1c3b-\u1c3f\u1c7e\u1c7f\u1cd3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205e\u207d\u207e\u208d\u208e\u3008\u3009\u2768-\u2775\u27c5\u27c6\u27e6-\u27ef\u2983-\u2998\u29d8-\u29db\u29fc\u29fd\u2cf9-\u2cfc\u2cfe\u2cff\u2d70\u2e00-\u2e2e\u2e30\u2e31\u3001-\u3003\u3008-\u3011\u3014-\u301f\u3030\u303d\u30a0\u30fb\ua4fe\ua4ff\ua60d-\ua60f\ua673\ua67e\ua6f2-\ua6f7\ua874-\ua877\ua8ce\ua8cf\ua8f8-\ua8fa\ua92e\ua92f\ua95f\ua9c1-\ua9cd\ua9de\ua9df\uaa5c-\uaa5f\uaade\uaadf\uabeb\ufd3e\ufd3f\ufe10-\ufe19\ufe30-\ufe52\ufe54-\ufe61\ufe63\ufe68\ufe6a\ufe6b\uff01-\uff03\uff05-\uff0a\uff0c-\uff0f\uff1a\uff1b\uff1f\uff20\uff3b-\uff3d\uff3f\uff5b\uff5d\uff5f-\uff65]"),m={fold:function(e,t){return e()},isSome:s,isNone:f,getOr:n,getOrThunk:h,getOrDie:function(e){throw new Error(e||"error: getOrDie called on none.")},getOrNull:i(null),getOrUndefined:i(void 0),or:n,orThunk:h,map:r,each:p,bind:r,exists:s,forall:f,filter:function(){return m},toArray:function(){return[]},toString:i("none()")};function h(e){return e()}function y(e,t){for(var n=e.length,r=new Array(n),o=0;o<n;o++){var i=e[o];r[o]=t(i,o)}return r}function x(e,t){for(var n=0,r=e.length;n<r;n++)t(e[n],n)}function b(e,t){for(var n=e.length-1;0<=n;n--)t(e[n],n)}function w(e,t){return function(e){for(var t=[],n=0,r=e.length;n<r;++n){if(!c(e[n]))throw new Error("Arr.flatten item "+n+" was not an array, input: "+e);A.apply(t,e[n])}return t}(y(e,t))}function O(e,t){return D.call(e,t)}var C=function(n){function e(){return o}function t(e){return e(n)}var r=i(n),o={fold:function(e,t){return t(n)},isSome:f,isNone:s,getOr:r,getOrThunk:r,getOrDie:r,getOrNull:r,getOrUndefined:r,or:e,orThunk:e,map:function(e){return C(e(n))},each:function(e){e(n)},bind:t,exists:t,forall:t,filter:function(e){return e(n)?o:m},toArray:function(){return[n]},toString:function(){return"some("+n+")"}};return o},T={some:C,none:r,from:function(e){return null==e?m:C(e)}},E=d,N=tinymce.util.Tools.resolve("tinymce.Env"),k=tinymce.util.Tools.resolve("tinymce.util.Tools"),S=Array.prototype.slice,A=Array.prototype.push,D=Object.hasOwnProperty;function M(e,t,n){!function(e,t,n){if(!(a(n)||u(n)||l(n)))throw console.error("Invalid call to Attribute.set. Key ",t,":: Value ",n,":: Element ",e),new Error("Attribute value was not simple");e.setAttribute(t,n+"")}(e.dom,t,n)}function B(e,t){return{element:e,offset:t}}function F(e,t){var n,r;n=e,r=t,T.from(n.dom.parentNode).map(fe.fromDom).each(function(e){e.dom.insertBefore(r.dom,n.dom)}),t.dom.appendChild(e.dom)}function I(e){return de.get(e)}function P(e,t){return e.isBlock(t)||O(e.schema.getShortEndedElements(),t.nodeName)}function R(e,t){return"false"===e.getContentEditable(t)}function W(e,t){return!e.isBlock(t)&&O(e.schema.getWhiteSpaceElements(),t.nodeName)}function j(){return{sOffset:0,fOffset:0,elements:[]}}function V(e,t){return n=fe.fromDom(e),r=t,0<(o=y(n.dom.childNodes,fe.fromDom)).length&&r<o.length?B(o[r],0):B(n,r);var n,r,o}function H(e,t,n,r,o,i){for(var a=(i=void 0===i||i)?t(!1):n;a;){var c=R(e,a);if(c||W(e,a)){if(c?r.cef(a):r.boundary(a))break;a=t(!0)}else{if(P(e,a)){if(r.boundary(a))break}else 3===a.nodeType&&r.text(a);if(a===o)break;a=t(!1)}}}function L(e,t,n,r,o){var i,a,c,u,l,s;P(i=e,a=n)||R(i,a)||W(i,a)||"true"===(c=i).getContentEditable(u=a)&&"false"===c.getContentEditableParent(u.parentNode)||(l=e.getParent(r,e.isBlock),s=new me(n,l),H(e,(o?s.next:s.prev).bind(s),n,{boundary:f,cef:f,text:function(e){o?t.fOffset+=e.length:t.sOffset+=e.length,t.elements.push(fe.fromDom(e))}}))}function U(e,t,n,r,o,i){void 0===i&&(i=!0);var a=new me(n,t),c=[],u=j();function l(){return 0<u.elements.length&&(c.push(u),u=j()),!1}return L(e,u,n,t,!1),H(e,a.next.bind(a),n,{boundary:l,cef:function(e){return l(),o&&c.push.apply(c,o.cef(e)),!1},text:function(e){u.elements.push(fe.fromDom(e)),o&&o.text(e,u)}},r,i),r&&L(e,u,r,t,!0),l(),c}function $(u,e){var n=V(e.startContainer,e.startOffset),r=n.element.dom,o=V(e.endContainer,e.endOffset),i=o.element.dom;return U(u,e.commonAncestorContainer,r,i,{text:function(e,t){e===i?t.fOffset+=e.length-o.offset:e===r&&(t.sOffset+=n.offset)},cef:function(e){var t,n,r,o,i,a=w((n=fe.fromDom(e),r="*[contenteditable=true]",1!==(o=i=void 0===n?document:n.dom).nodeType&&9!==o.nodeType&&11!==o.nodeType||0===o.childElementCount?[]:y(i.querySelectorAll(r),fe.fromDom)),function(e){var t=e.dom;return U(u,t,t)}),c=function(e,t){return n=e.elements[0].dom,r=t.elements[0].dom,o=Node.DOCUMENT_POSITION_PRECEDING,0!=(n.compareDocumentPosition(r)&o)?1:-1;var n,r,o};return(t=S.call(a,0)).sort(c),t}},!1)}function _(e,t){return t.collapsed?[]:$(e,t)}function z(e,t){var n=e.createRng();return n.selectNode(t),_(e,n)}function q(c,e){return w(e,function(e){var a,n,r,t=e.elements,o=y(t,I).join(""),i=function(e,t,n,r){void 0===r&&(r=e.length);var o=t.regex;o.lastIndex=n=void 0===n?0:n;for(var i,a=[];i=o.exec(e);){var c=i[t.matchIndex],u=i.index+i[0].indexOf(c),l=u+c.length;if(r<l)break;a.push({start:u,finish:l}),o.lastIndex=l}return a}(o,c,e.sOffset,o.length-e.fOffset);return a=i,function(e,t){if(0===e.length)return[];for(var n=t(e[0]),r=[],o=[],i=0,a=e.length;i<a;i++){var c=e[i],u=t(c);u!==n&&(r.push(o),o=[]),n=u,o.push(c)}return 0!==o.length&&r.push(o),r}((n=function(e,n){var t=I(n),r=e.last,o=r+t.length,i=w(a,function(e,t){return e.start<o&&e.finish>r?[{element:n,start:Math.max(r,e.start)-r,finish:Math.min(o,e.finish)-r,matchId:t}]:[]});return{results:e.results.concat(i),last:o}},r={results:[],last:0},x(t,function(e,t){r=n(r,e)}),r.results),function(e){return e.matchId})})}function G(e,i){b(e,function(e,o){b(e,function(e){var t=fe.fromDom(i.cloneNode(!1));M(t,"data-mce-index",o);var n,r=e.element.dom;r.length===e.finish&&0===e.start?F(e.element,t):(r.length!==e.finish&&r.splitText(e.finish),n=r.splitText(e.start),F(fe.fromDom(n),t))})})}function K(e){var t=e.getAttribute("data-mce-index");return"number"==typeof t?""+t:t}function J(e,t,n,r){var o=e.dom.create("span",{"data-mce-bogus":1});o.className="mce-match-marker";var i,a,c,u,l,s,f,d,m,h,g=e.getBody();return he(e,t,!1),r?(c=e.dom,u=n,l=e.selection,s=o,d=l.getBookmark(),m=c.select("td[data-mce-selected],th[data-mce-selected]"),G(h=q(u,0<m.length?(f=c,w(m,function(e){return z(f,e)})):_(c,l.getRng())),s),l.moveToBookmark(d),h.length):(i=o,G(a=q(n,z(e.dom,g)),i),a.length)}function Q(e){var t=e.parentNode;e.firstChild&&t.insertBefore(e.firstChild,e),e.parentNode.removeChild(e)}function X(e,t){var n=[],r=k.toArray(e.getBody().getElementsByTagName("span"));if(r.length)for(var o=0;o<r.length;o++){var i=K(r[o]);null!==i&&i.length&&i===t.toString()&&n.push(r[o])}return n}function Y(e,t,n){var r=t.get(),o=r.index,i=e.dom;(n=!1!==n)?o+1===r.count?o=0:o++:o-1==-1?o=r.count-1:o--,i.removeClass(X(e,r.index),"mce-match-marker-selected");var a=X(e,o);return a.length?(i.addClass(X(e,o),"mce-match-marker-selected"),e.selection.scrollIntoView(a[0]),o):-1}function Z(e,t){var n=t.parentNode;e.remove(t),e.isEmpty(n)&&e.remove(n)}function ee(e,t,n,r,o,i){var a,c,u,l=e.selection,s=(a=o,c="("+n.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&").replace(/\s/g,"[^\\S\\r\\n\\uFEFF]")+")",a?"(?:^|\\s|"+E()+")"+c+"(?=$|\\s|"+E()+")":c),f=l.isForward(),d=J(e,t,{regex:new RegExp(s,r?"g":"gi"),matchIndex:1},i);return N.browser.isSafari()&&l.setRng(l.getRng(),f),d&&(u=Y(e,t,!0),t.set({index:u,count:d,text:n,matchCase:r,wholeWord:o,inSelection:i})),d}function te(e,t){var n=Y(e,t,!0);t.set(v(v({},t.get()),{index:n}))}function ne(e,t){var n=Y(e,t,!1);t.set(v(v({},t.get()),{index:n}))}function re(e){var t=K(e);return null!==t&&0<t.length}function oe(e,t,n,r,o){var i,a=t.get(),c=a.index,u=c;r=!1!==r;for(var l=e.getBody(),s=k.grep(k.toArray(l.getElementsByTagName("span")),re),f=0;f<s.length;f++){var d=K(s[f]),m=i=parseInt(d,10);if(o||m===a.index){for(n.length?(s[f].firstChild.nodeValue=n,Q(s[f])):Z(e.dom,s[f]);s[++f];){if((m=parseInt(K(s[f]),10))!==i){f--;break}Z(e.dom,s[f])}r&&u--}else c<i&&s[f].setAttribute("data-mce-index",String(i-1))}return t.set(v(v({},a),{count:o?0:a.count-1,index:u})),(r?te:ne)(e,t),!o&&0<t.get().count}function ie(i,a){var e,t,n,r=(e=p,t=g(T.none()),v(v({},n={clear:function(){o(),t.set(T.none())},isSet:function(){return t.get().isSome()},get:function(){return t.get()},set:function(e){o(),t.set(T.some(e))}}),{on:function(e){return n.get().each(e)}}));function o(){return t.get().each(e)}function c(e){(1<a.get().count?e.enable:e.disable)("next"),(1<a.get().count?e.enable:e.disable)("prev")}function u(e,t){x(["replace","replaceall","prev","next"],t?e.disable:e.enable)}function l(e,t){N.browser.isSafari()&&N.deviceType.isTouch()&&("find"===t||"replace"===t||"replaceall"===t)&&e.focus(t)}function s(e){he(i,a,!1),u(e,!0),c(e)}function f(e){var t,n,r=e.getData(),o=a.get();r.findtext.length?(o.text===r.findtext&&o.matchCase===r.matchcase&&o.wholeWord===r.wholewords?te(i,a):((t=ee(i,a,r.findtext,r.matchcase,r.wholewords,r.inselection))<=0&&(n=e,i.windowManager.alert("Could not find the specified string.",function(){n.focus("findtext")})),u(e,0===t)),c(e)):s(e)}i.undoManager.add();var d=k.trim(i.selection.getContent({format:"text"})),m=a.get(),h={title:"Find and Replace",size:"normal",body:{type:"panel",items:[{type:"bar",items:[{type:"input",name:"findtext",placeholder:"Find",maximized:!0,inputMode:"search"},{type:"button",name:"prev",text:"Previous",icon:"action-prev",disabled:!0,borderless:!0},{type:"button",name:"next",text:"Next",icon:"action-next",disabled:!0,borderless:!0}]},{type:"input",name:"replacetext",placeholder:"Replace with",inputMode:"search"}]},buttons:[{type:"menu",name:"options",icon:"preferences",tooltip:"Preferences",align:"start",items:[{type:"togglemenuitem",name:"matchcase",text:"Match case"},{type:"togglemenuitem",name:"wholewords",text:"Find whole words only"},{type:"togglemenuitem",name:"inselection",text:"Find in selection"}]},{type:"custom",name:"find",text:"Find",primary:!0},{type:"custom",name:"replace",text:"Replace",disabled:!0},{type:"custom",name:"replaceall",text:"Replace all",disabled:!0}],initialData:{findtext:d,replacetext:"",wholewords:m.wholeWord,matchcase:m.matchCase,inselection:m.inSelection},onChange:function(e,t){"findtext"===t.name&&0<a.get().count&&s(e)},onAction:function(e,t){var n,r,o=e.getData();switch(t.name){case"find":f(e);break;case"replace":(oe(i,a,o.replacetext)?c:s)(e);break;case"replaceall":oe(i,a,o.replacetext,!0,!0),s(e);break;case"prev":ne(i,a),c(e);break;case"next":te(i,a),c(e);break;case"matchcase":case"wholewords":case"inselection":n=e.getData(),r=a.get(),a.set(v(v({},r),{matchCase:n.matchcase,wholeWord:n.wholewords,inSelection:n.inselection})),s(e)}l(e,t.name)},onSubmit:function(e){f(e),l(e,"find")},onClose:function(){i.focus(),he(i,a),i.undoManager.add()}};r.set(i.windowManager.open(h,{inline:"toolbar"}))}function ae(e,t){return function(){ie(e,t)}}"undefined"!=typeof window||Function("return this;")();function ce(e){return 3===e.dom.nodeType}function ue(e){if(null==e)throw new Error("Node cannot be null or undefined");return{dom:e}}var le,se,fe={fromHtml:function(e,t){var n=(t||document).createElement("div");if(n.innerHTML=e,!n.hasChildNodes()||1<n.childNodes.length)throw console.error("HTML does not have a single root node",e),new Error("HTML must have a single root node");return ue(n.childNodes[0])},fromTag:function(e,t){var n=(t||document).createElement(e);return ue(n)},fromText:function(e,t){var n=(t||document).createTextNode(e);return ue(n)},fromDom:ue,fromPoint:function(e,t,n){return T.from(e.dom.elementFromPoint(t,n)).map(ue)}},de=(le=ce,{get:function(e){if(!le(e))throw new Error("Can only get text value of a text node");return se(e).getOr("")},getOption:se=function(e){return le(e)?T.from(e.dom.nodeValue):T.none()},set:function(e,t){if(!le(e))throw new Error("Can only set raw text value of a text node");e.dom.nodeValue=t}}),me=tinymce.util.Tools.resolve("tinymce.dom.TreeWalker"),he=function(e,t,n){for(var r,o,i=t.get(),a=k.toArray(e.getBody().getElementsByTagName("span")),c=0;c<a.length;c++){var u=K(a[c]);null!==u&&u.length&&(u===i.index.toString()&&(r=r||a[c].firstChild,o=a[c].firstChild),Q(a[c]))}if(t.set(v(v({},i),{index:-1,count:0,text:""})),r&&o){var l=e.dom.createRng();return l.setStart(r,0),l.setEnd(o,o.data.length),!1!==n&&e.selection.setRng(l),l}};o.add("searchreplace",function(e){var t,n,r,o,i,a=g({index:-1,count:0,text:"",matchCase:!1,wholeWord:!1,inSelection:!1}),c=a;return(t=e).addCommand("SearchReplace",function(){ie(t,c)}),(n=e).ui.registry.addMenuItem("searchreplace",{text:"Find and replace...",shortcut:"Meta+F",onAction:ae(n,r=a),icon:"search"}),n.ui.registry.addButton("searchreplace",{tooltip:"Find and replace",onAction:ae(n,r),icon:"search"}),n.shortcuts.add("Meta+F","",ae(n,r)),o=e,i=a,{done:function(e){return he(o,i,e)},find:function(e,t,n,r){return ee(o,i,e,t,n,r=void 0!==r&&r)},next:function(){return te(o,i)},prev:function(){return ne(o,i)},replace:function(e,t,n){return oe(o,i,e,t,n)}}})}();PK �h�\dkJ�� � index.jsnu �[��� // Exports the "searchreplace" plugin for usage with module loaders // Usage: // CommonJS: // require('tinymce/plugins/searchreplace') // ES2015: // import 'tinymce/plugins/searchreplace' require('./plugin.js');PK �h�\d��L� L� plugin.jsnu �[��� /** * Copyright (c) Tiny Technologies, Inc. All rights reserved. * Licensed under the LGPL or a commercial license. * For LGPL see License.txt in the project root for license information. * For commercial licenses see https://www.tiny.cloud/ * * Version: 5.10.9 (2023-11-15) */ (function () { 'use strict'; var Cell = function (initial) { var value = initial; var get = function () { return value; }; var set = function (v) { value = v; }; return { get: get, set: set }; }; var global$3 = tinymce.util.Tools.resolve('tinymce.PluginManager'); var __assign = function () { __assign = Object.assign || function __assign(t) { for (var s, i = 1, n = arguments.length; i < n; i++) { s = arguments[i]; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; } return t; }; return __assign.apply(this, arguments); }; var typeOf = function (x) { var t = typeof x; if (x === null) { return 'null'; } else if (t === 'object' && (Array.prototype.isPrototypeOf(x) || x.constructor && x.constructor.name === 'Array')) { return 'array'; } else if (t === 'object' && (String.prototype.isPrototypeOf(x) || x.constructor && x.constructor.name === 'String')) { return 'string'; } else { return t; } }; var isType$1 = function (type) { return function (value) { return typeOf(value) === type; }; }; var isSimpleType = function (type) { return function (value) { return typeof value === type; }; }; var isString = isType$1('string'); var isArray = isType$1('array'); var isBoolean = isSimpleType('boolean'); var isNumber = isSimpleType('number'); var noop = function () { }; var constant = function (value) { return function () { return value; }; }; var identity = function (x) { return x; }; var never = constant(false); var always = constant(true); var punctuationStr = '[!-#%-*,-\\/:;?@\\[-\\]_{}\xA1\xAB\xB7\xBB\xBF;\xB7\u055A-\u055F\u0589\u058A\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0609\u060A\u060C\u060D\u061B\u061E\u061F\u066A-\u066D\u06D4\u0700-\u070D\u07F7-\u07F9\u0830-\u083E\u085E\u0964\u0965\u0970\u0DF4\u0E4F\u0E5A\u0E5B\u0F04-\u0F12\u0F3A-\u0F3D\u0F85\u0FD0-\u0FD4\u0FD9\u0FDA\u104A-\u104F\u10FB\u1361-\u1368\u1400\u166D\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DA\u1800-\u180A\u1944\u1945\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B5A-\u1B60\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CD3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205E\u207D\u207E\u208D\u208E\u3008\u3009\u2768-\u2775\u27C5\u27C6\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC\u29FD\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30\u2E31\u3001-\u3003\u3008-\u3011\u3014-\u301F\u3030\u303D\u30A0\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAADE\uAADF\uABEB\uFD3E\uFD3F\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE61\uFE63\uFE68\uFE6A\uFE6B\uFF01-\uFF03\uFF05-\uFF0A\uFF0C-\uFF0F\uFF1A\uFF1B\uFF1F\uFF20\uFF3B-\uFF3D\uff3f\uFF5B\uFF5D\uFF5F-\uFF65]'; var punctuation$1 = constant(punctuationStr); var none = function () { return NONE; }; var NONE = function () { var call = function (thunk) { return thunk(); }; var id = identity; var me = { fold: function (n, _s) { return n(); }, isSome: never, isNone: always, getOr: id, getOrThunk: call, getOrDie: function (msg) { throw new Error(msg || 'error: getOrDie called on none.'); }, getOrNull: constant(null), getOrUndefined: constant(undefined), or: id, orThunk: call, map: none, each: noop, bind: none, exists: never, forall: always, filter: function () { return none(); }, toArray: function () { return []; }, toString: constant('none()') }; return me; }(); var some = function (a) { var constant_a = constant(a); var self = function () { return me; }; var bind = function (f) { return f(a); }; var me = { fold: function (n, s) { return s(a); }, isSome: always, isNone: never, getOr: constant_a, getOrThunk: constant_a, getOrDie: constant_a, getOrNull: constant_a, getOrUndefined: constant_a, or: self, orThunk: self, map: function (f) { return some(f(a)); }, each: function (f) { f(a); }, bind: bind, exists: bind, forall: bind, filter: function (f) { return f(a) ? me : NONE; }, toArray: function () { return [a]; }, toString: function () { return 'some(' + a + ')'; } }; return me; }; var from = function (value) { return value === null || value === undefined ? NONE : some(value); }; var Optional = { some: some, none: none, from: from }; var punctuation = punctuation$1; var global$2 = tinymce.util.Tools.resolve('tinymce.Env'); var global$1 = tinymce.util.Tools.resolve('tinymce.util.Tools'); var nativeSlice = Array.prototype.slice; var nativePush = Array.prototype.push; var map = function (xs, f) { var len = xs.length; var r = new Array(len); for (var i = 0; i < len; i++) { var x = xs[i]; r[i] = f(x, i); } return r; }; var each = function (xs, f) { for (var i = 0, len = xs.length; i < len; i++) { var x = xs[i]; f(x, i); } }; var eachr = function (xs, f) { for (var i = xs.length - 1; i >= 0; i--) { var x = xs[i]; f(x, i); } }; var groupBy = function (xs, f) { if (xs.length === 0) { return []; } else { var wasType = f(xs[0]); var r = []; var group = []; for (var i = 0, len = xs.length; i < len; i++) { var x = xs[i]; var type = f(x); if (type !== wasType) { r.push(group); group = []; } wasType = type; group.push(x); } if (group.length !== 0) { r.push(group); } return r; } }; var foldl = function (xs, f, acc) { each(xs, function (x, i) { acc = f(acc, x, i); }); return acc; }; var flatten = function (xs) { var r = []; for (var i = 0, len = xs.length; i < len; ++i) { if (!isArray(xs[i])) { throw new Error('Arr.flatten item ' + i + ' was not an array, input: ' + xs); } nativePush.apply(r, xs[i]); } return r; }; var bind = function (xs, f) { return flatten(map(xs, f)); }; var sort = function (xs, comparator) { var copy = nativeSlice.call(xs, 0); copy.sort(comparator); return copy; }; var hasOwnProperty = Object.hasOwnProperty; var has = function (obj, key) { return hasOwnProperty.call(obj, key); }; typeof window !== 'undefined' ? window : Function('return this;')(); var DOCUMENT = 9; var DOCUMENT_FRAGMENT = 11; var ELEMENT = 1; var TEXT = 3; var type = function (element) { return element.dom.nodeType; }; var isType = function (t) { return function (element) { return type(element) === t; }; }; var isText$1 = isType(TEXT); var rawSet = function (dom, key, value) { if (isString(value) || isBoolean(value) || isNumber(value)) { dom.setAttribute(key, value + ''); } else { console.error('Invalid call to Attribute.set. Key ', key, ':: Value ', value, ':: Element ', dom); throw new Error('Attribute value was not simple'); } }; var set = function (element, key, value) { rawSet(element.dom, key, value); }; var compareDocumentPosition = function (a, b, match) { return (a.compareDocumentPosition(b) & match) !== 0; }; var documentPositionPreceding = function (a, b) { return compareDocumentPosition(a, b, Node.DOCUMENT_POSITION_PRECEDING); }; var fromHtml = function (html, scope) { var doc = scope || document; var div = doc.createElement('div'); div.innerHTML = html; if (!div.hasChildNodes() || div.childNodes.length > 1) { console.error('HTML does not have a single root node', html); throw new Error('HTML must have a single root node'); } return fromDom(div.childNodes[0]); }; var fromTag = function (tag, scope) { var doc = scope || document; var node = doc.createElement(tag); return fromDom(node); }; var fromText = function (text, scope) { var doc = scope || document; var node = doc.createTextNode(text); return fromDom(node); }; var fromDom = function (node) { if (node === null || node === undefined) { throw new Error('Node cannot be null or undefined'); } return { dom: node }; }; var fromPoint = function (docElm, x, y) { return Optional.from(docElm.dom.elementFromPoint(x, y)).map(fromDom); }; var SugarElement = { fromHtml: fromHtml, fromTag: fromTag, fromText: fromText, fromDom: fromDom, fromPoint: fromPoint }; var bypassSelector = function (dom) { return dom.nodeType !== ELEMENT && dom.nodeType !== DOCUMENT && dom.nodeType !== DOCUMENT_FRAGMENT || dom.childElementCount === 0; }; var all = function (selector, scope) { var base = scope === undefined ? document : scope.dom; return bypassSelector(base) ? [] : map(base.querySelectorAll(selector), SugarElement.fromDom); }; var parent = function (element) { return Optional.from(element.dom.parentNode).map(SugarElement.fromDom); }; var children = function (element) { return map(element.dom.childNodes, SugarElement.fromDom); }; var spot = function (element, offset) { return { element: element, offset: offset }; }; var leaf = function (element, offset) { var cs = children(element); return cs.length > 0 && offset < cs.length ? spot(cs[offset], 0) : spot(element, offset); }; var before = function (marker, element) { var parent$1 = parent(marker); parent$1.each(function (v) { v.dom.insertBefore(element.dom, marker.dom); }); }; var append = function (parent, element) { parent.dom.appendChild(element.dom); }; var wrap = function (element, wrapper) { before(element, wrapper); append(wrapper, element); }; var NodeValue = function (is, name) { var get = function (element) { if (!is(element)) { throw new Error('Can only get ' + name + ' value of a ' + name + ' node'); } return getOption(element).getOr(''); }; var getOption = function (element) { return is(element) ? Optional.from(element.dom.nodeValue) : Optional.none(); }; var set = function (element, value) { if (!is(element)) { throw new Error('Can only set raw ' + name + ' value of a ' + name + ' node'); } element.dom.nodeValue = value; }; return { get: get, getOption: getOption, set: set }; }; var api = NodeValue(isText$1, 'text'); var get$1 = function (element) { return api.get(element); }; var descendants = function (scope, selector) { return all(selector, scope); }; var global = tinymce.util.Tools.resolve('tinymce.dom.TreeWalker'); var isSimpleBoundary = function (dom, node) { return dom.isBlock(node) || has(dom.schema.getShortEndedElements(), node.nodeName); }; var isContentEditableFalse = function (dom, node) { return dom.getContentEditable(node) === 'false'; }; var isContentEditableTrueInCef = function (dom, node) { return dom.getContentEditable(node) === 'true' && dom.getContentEditableParent(node.parentNode) === 'false'; }; var isHidden = function (dom, node) { return !dom.isBlock(node) && has(dom.schema.getWhiteSpaceElements(), node.nodeName); }; var isBoundary = function (dom, node) { return isSimpleBoundary(dom, node) || isContentEditableFalse(dom, node) || isHidden(dom, node) || isContentEditableTrueInCef(dom, node); }; var isText = function (node) { return node.nodeType === 3; }; var nuSection = function () { return { sOffset: 0, fOffset: 0, elements: [] }; }; var toLeaf = function (node, offset) { return leaf(SugarElement.fromDom(node), offset); }; var walk = function (dom, walkerFn, startNode, callbacks, endNode, skipStart) { if (skipStart === void 0) { skipStart = true; } var next = skipStart ? walkerFn(false) : startNode; while (next) { var isCefNode = isContentEditableFalse(dom, next); if (isCefNode || isHidden(dom, next)) { var stopWalking = isCefNode ? callbacks.cef(next) : callbacks.boundary(next); if (stopWalking) { break; } else { next = walkerFn(true); continue; } } else if (isSimpleBoundary(dom, next)) { if (callbacks.boundary(next)) { break; } } else if (isText(next)) { callbacks.text(next); } if (next === endNode) { break; } else { next = walkerFn(false); } } }; var collectTextToBoundary = function (dom, section, node, rootNode, forwards) { if (isBoundary(dom, node)) { return; } var rootBlock = dom.getParent(rootNode, dom.isBlock); var walker = new global(node, rootBlock); var walkerFn = forwards ? walker.next.bind(walker) : walker.prev.bind(walker); walk(dom, walkerFn, node, { boundary: always, cef: always, text: function (next) { if (forwards) { section.fOffset += next.length; } else { section.sOffset += next.length; } section.elements.push(SugarElement.fromDom(next)); } }); }; var collect = function (dom, rootNode, startNode, endNode, callbacks, skipStart) { if (skipStart === void 0) { skipStart = true; } var walker = new global(startNode, rootNode); var sections = []; var current = nuSection(); collectTextToBoundary(dom, current, startNode, rootNode, false); var finishSection = function () { if (current.elements.length > 0) { sections.push(current); current = nuSection(); } return false; }; walk(dom, walker.next.bind(walker), startNode, { boundary: finishSection, cef: function (node) { finishSection(); if (callbacks) { sections.push.apply(sections, callbacks.cef(node)); } return false; }, text: function (next) { current.elements.push(SugarElement.fromDom(next)); if (callbacks) { callbacks.text(next, current); } } }, endNode, skipStart); if (endNode) { collectTextToBoundary(dom, current, endNode, rootNode, true); } finishSection(); return sections; }; var collectRangeSections = function (dom, rng) { var start = toLeaf(rng.startContainer, rng.startOffset); var startNode = start.element.dom; var end = toLeaf(rng.endContainer, rng.endOffset); var endNode = end.element.dom; return collect(dom, rng.commonAncestorContainer, startNode, endNode, { text: function (node, section) { if (node === endNode) { section.fOffset += node.length - end.offset; } else if (node === startNode) { section.sOffset += start.offset; } }, cef: function (node) { var sections = bind(descendants(SugarElement.fromDom(node), '*[contenteditable=true]'), function (e) { var ceTrueNode = e.dom; return collect(dom, ceTrueNode, ceTrueNode); }); return sort(sections, function (a, b) { return documentPositionPreceding(a.elements[0].dom, b.elements[0].dom) ? 1 : -1; }); } }, false); }; var fromRng = function (dom, rng) { return rng.collapsed ? [] : collectRangeSections(dom, rng); }; var fromNode = function (dom, node) { var rng = dom.createRng(); rng.selectNode(node); return fromRng(dom, rng); }; var fromNodes = function (dom, nodes) { return bind(nodes, function (node) { return fromNode(dom, node); }); }; var find$2 = function (text, pattern, start, finish) { if (start === void 0) { start = 0; } if (finish === void 0) { finish = text.length; } var regex = pattern.regex; regex.lastIndex = start; var results = []; var match; while (match = regex.exec(text)) { var matchedText = match[pattern.matchIndex]; var matchStart = match.index + match[0].indexOf(matchedText); var matchFinish = matchStart + matchedText.length; if (matchFinish > finish) { break; } results.push({ start: matchStart, finish: matchFinish }); regex.lastIndex = matchFinish; } return results; }; var extract = function (elements, matches) { var nodePositions = foldl(elements, function (acc, element) { var content = get$1(element); var start = acc.last; var finish = start + content.length; var positions = bind(matches, function (match, matchIdx) { if (match.start < finish && match.finish > start) { return [{ element: element, start: Math.max(start, match.start) - start, finish: Math.min(finish, match.finish) - start, matchId: matchIdx }]; } else { return []; } }); return { results: acc.results.concat(positions), last: finish }; }, { results: [], last: 0 }).results; return groupBy(nodePositions, function (position) { return position.matchId; }); }; var find$1 = function (pattern, sections) { return bind(sections, function (section) { var elements = section.elements; var content = map(elements, get$1).join(''); var positions = find$2(content, pattern, section.sOffset, content.length - section.fOffset); return extract(elements, positions); }); }; var mark = function (matches, replacementNode) { eachr(matches, function (match, idx) { eachr(match, function (pos) { var wrapper = SugarElement.fromDom(replacementNode.cloneNode(false)); set(wrapper, 'data-mce-index', idx); var textNode = pos.element.dom; if (textNode.length === pos.finish && pos.start === 0) { wrap(pos.element, wrapper); } else { if (textNode.length !== pos.finish) { textNode.splitText(pos.finish); } var matchNode = textNode.splitText(pos.start); wrap(SugarElement.fromDom(matchNode), wrapper); } }); }); }; var findAndMark = function (dom, pattern, node, replacementNode) { var textSections = fromNode(dom, node); var matches = find$1(pattern, textSections); mark(matches, replacementNode); return matches.length; }; var findAndMarkInSelection = function (dom, pattern, selection, replacementNode) { var bookmark = selection.getBookmark(); var nodes = dom.select('td[data-mce-selected],th[data-mce-selected]'); var textSections = nodes.length > 0 ? fromNodes(dom, nodes) : fromRng(dom, selection.getRng()); var matches = find$1(pattern, textSections); mark(matches, replacementNode); selection.moveToBookmark(bookmark); return matches.length; }; var getElmIndex = function (elm) { var value = elm.getAttribute('data-mce-index'); if (typeof value === 'number') { return '' + value; } return value; }; var markAllMatches = function (editor, currentSearchState, pattern, inSelection) { var marker = editor.dom.create('span', { 'data-mce-bogus': 1 }); marker.className = 'mce-match-marker'; var node = editor.getBody(); done(editor, currentSearchState, false); if (inSelection) { return findAndMarkInSelection(editor.dom, pattern, editor.selection, marker); } else { return findAndMark(editor.dom, pattern, node, marker); } }; var unwrap = function (node) { var parentNode = node.parentNode; if (node.firstChild) { parentNode.insertBefore(node.firstChild, node); } node.parentNode.removeChild(node); }; var findSpansByIndex = function (editor, index) { var spans = []; var nodes = global$1.toArray(editor.getBody().getElementsByTagName('span')); if (nodes.length) { for (var i = 0; i < nodes.length; i++) { var nodeIndex = getElmIndex(nodes[i]); if (nodeIndex === null || !nodeIndex.length) { continue; } if (nodeIndex === index.toString()) { spans.push(nodes[i]); } } } return spans; }; var moveSelection = function (editor, currentSearchState, forward) { var searchState = currentSearchState.get(); var testIndex = searchState.index; var dom = editor.dom; forward = forward !== false; if (forward) { if (testIndex + 1 === searchState.count) { testIndex = 0; } else { testIndex++; } } else { if (testIndex - 1 === -1) { testIndex = searchState.count - 1; } else { testIndex--; } } dom.removeClass(findSpansByIndex(editor, searchState.index), 'mce-match-marker-selected'); var spans = findSpansByIndex(editor, testIndex); if (spans.length) { dom.addClass(findSpansByIndex(editor, testIndex), 'mce-match-marker-selected'); editor.selection.scrollIntoView(spans[0]); return testIndex; } return -1; }; var removeNode = function (dom, node) { var parent = node.parentNode; dom.remove(node); if (dom.isEmpty(parent)) { dom.remove(parent); } }; var escapeSearchText = function (text, wholeWord) { var escapedText = text.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, '\\$&').replace(/\s/g, '[^\\S\\r\\n\\uFEFF]'); var wordRegex = '(' + escapedText + ')'; return wholeWord ? '(?:^|\\s|' + punctuation() + ')' + wordRegex + ('(?=$|\\s|' + punctuation() + ')') : wordRegex; }; var find = function (editor, currentSearchState, text, matchCase, wholeWord, inSelection) { var selection = editor.selection; var escapedText = escapeSearchText(text, wholeWord); var isForwardSelection = selection.isForward(); var pattern = { regex: new RegExp(escapedText, matchCase ? 'g' : 'gi'), matchIndex: 1 }; var count = markAllMatches(editor, currentSearchState, pattern, inSelection); if (global$2.browser.isSafari()) { selection.setRng(selection.getRng(), isForwardSelection); } if (count) { var newIndex = moveSelection(editor, currentSearchState, true); currentSearchState.set({ index: newIndex, count: count, text: text, matchCase: matchCase, wholeWord: wholeWord, inSelection: inSelection }); } return count; }; var next = function (editor, currentSearchState) { var index = moveSelection(editor, currentSearchState, true); currentSearchState.set(__assign(__assign({}, currentSearchState.get()), { index: index })); }; var prev = function (editor, currentSearchState) { var index = moveSelection(editor, currentSearchState, false); currentSearchState.set(__assign(__assign({}, currentSearchState.get()), { index: index })); }; var isMatchSpan = function (node) { var matchIndex = getElmIndex(node); return matchIndex !== null && matchIndex.length > 0; }; var replace = function (editor, currentSearchState, text, forward, all) { var searchState = currentSearchState.get(); var currentIndex = searchState.index; var currentMatchIndex, nextIndex = currentIndex; forward = forward !== false; var node = editor.getBody(); var nodes = global$1.grep(global$1.toArray(node.getElementsByTagName('span')), isMatchSpan); for (var i = 0; i < nodes.length; i++) { var nodeIndex = getElmIndex(nodes[i]); var matchIndex = currentMatchIndex = parseInt(nodeIndex, 10); if (all || matchIndex === searchState.index) { if (text.length) { nodes[i].firstChild.nodeValue = text; unwrap(nodes[i]); } else { removeNode(editor.dom, nodes[i]); } while (nodes[++i]) { matchIndex = parseInt(getElmIndex(nodes[i]), 10); if (matchIndex === currentMatchIndex) { removeNode(editor.dom, nodes[i]); } else { i--; break; } } if (forward) { nextIndex--; } } else if (currentMatchIndex > currentIndex) { nodes[i].setAttribute('data-mce-index', String(currentMatchIndex - 1)); } } currentSearchState.set(__assign(__assign({}, searchState), { count: all ? 0 : searchState.count - 1, index: nextIndex })); if (forward) { next(editor, currentSearchState); } else { prev(editor, currentSearchState); } return !all && currentSearchState.get().count > 0; }; var done = function (editor, currentSearchState, keepEditorSelection) { var startContainer, endContainer; var searchState = currentSearchState.get(); var nodes = global$1.toArray(editor.getBody().getElementsByTagName('span')); for (var i = 0; i < nodes.length; i++) { var nodeIndex = getElmIndex(nodes[i]); if (nodeIndex !== null && nodeIndex.length) { if (nodeIndex === searchState.index.toString()) { if (!startContainer) { startContainer = nodes[i].firstChild; } endContainer = nodes[i].firstChild; } unwrap(nodes[i]); } } currentSearchState.set(__assign(__assign({}, searchState), { index: -1, count: 0, text: '' })); if (startContainer && endContainer) { var rng = editor.dom.createRng(); rng.setStart(startContainer, 0); rng.setEnd(endContainer, endContainer.data.length); if (keepEditorSelection !== false) { editor.selection.setRng(rng); } return rng; } }; var hasNext = function (editor, currentSearchState) { return currentSearchState.get().count > 1; }; var hasPrev = function (editor, currentSearchState) { return currentSearchState.get().count > 1; }; var get = function (editor, currentState) { var done$1 = function (keepEditorSelection) { return done(editor, currentState, keepEditorSelection); }; var find$1 = function (text, matchCase, wholeWord, inSelection) { if (inSelection === void 0) { inSelection = false; } return find(editor, currentState, text, matchCase, wholeWord, inSelection); }; var next$1 = function () { return next(editor, currentState); }; var prev$1 = function () { return prev(editor, currentState); }; var replace$1 = function (text, forward, all) { return replace(editor, currentState, text, forward, all); }; return { done: done$1, find: find$1, next: next$1, prev: prev$1, replace: replace$1 }; }; var singleton = function (doRevoke) { var subject = Cell(Optional.none()); var revoke = function () { return subject.get().each(doRevoke); }; var clear = function () { revoke(); subject.set(Optional.none()); }; var isSet = function () { return subject.get().isSome(); }; var get = function () { return subject.get(); }; var set = function (s) { revoke(); subject.set(Optional.some(s)); }; return { clear: clear, isSet: isSet, get: get, set: set }; }; var value = function () { var subject = singleton(noop); var on = function (f) { return subject.get().each(f); }; return __assign(__assign({}, subject), { on: on }); }; var open = function (editor, currentSearchState) { var dialogApi = value(); editor.undoManager.add(); var selectedText = global$1.trim(editor.selection.getContent({ format: 'text' })); var updateButtonStates = function (api) { var updateNext = hasNext(editor, currentSearchState) ? api.enable : api.disable; updateNext('next'); var updatePrev = hasPrev(editor, currentSearchState) ? api.enable : api.disable; updatePrev('prev'); }; var updateSearchState = function (api) { var data = api.getData(); var current = currentSearchState.get(); currentSearchState.set(__assign(__assign({}, current), { matchCase: data.matchcase, wholeWord: data.wholewords, inSelection: data.inselection })); }; var disableAll = function (api, disable) { var buttons = [ 'replace', 'replaceall', 'prev', 'next' ]; var toggle = disable ? api.disable : api.enable; each(buttons, toggle); }; var notFoundAlert = function (api) { editor.windowManager.alert('Could not find the specified string.', function () { api.focus('findtext'); }); }; var focusButtonIfRequired = function (api, name) { if (global$2.browser.isSafari() && global$2.deviceType.isTouch() && (name === 'find' || name === 'replace' || name === 'replaceall')) { api.focus(name); } }; var reset = function (api) { done(editor, currentSearchState, false); disableAll(api, true); updateButtonStates(api); }; var doFind = function (api) { var data = api.getData(); var last = currentSearchState.get(); if (!data.findtext.length) { reset(api); return; } if (last.text === data.findtext && last.matchCase === data.matchcase && last.wholeWord === data.wholewords) { next(editor, currentSearchState); } else { var count = find(editor, currentSearchState, data.findtext, data.matchcase, data.wholewords, data.inselection); if (count <= 0) { notFoundAlert(api); } disableAll(api, count === 0); } updateButtonStates(api); }; var initialState = currentSearchState.get(); var initialData = { findtext: selectedText, replacetext: '', wholewords: initialState.wholeWord, matchcase: initialState.matchCase, inselection: initialState.inSelection }; var spec = { title: 'Find and Replace', size: 'normal', body: { type: 'panel', items: [ { type: 'bar', items: [ { type: 'input', name: 'findtext', placeholder: 'Find', maximized: true, inputMode: 'search' }, { type: 'button', name: 'prev', text: 'Previous', icon: 'action-prev', disabled: true, borderless: true }, { type: 'button', name: 'next', text: 'Next', icon: 'action-next', disabled: true, borderless: true } ] }, { type: 'input', name: 'replacetext', placeholder: 'Replace with', inputMode: 'search' } ] }, buttons: [ { type: 'menu', name: 'options', icon: 'preferences', tooltip: 'Preferences', align: 'start', items: [ { type: 'togglemenuitem', name: 'matchcase', text: 'Match case' }, { type: 'togglemenuitem', name: 'wholewords', text: 'Find whole words only' }, { type: 'togglemenuitem', name: 'inselection', text: 'Find in selection' } ] }, { type: 'custom', name: 'find', text: 'Find', primary: true }, { type: 'custom', name: 'replace', text: 'Replace', disabled: true }, { type: 'custom', name: 'replaceall', text: 'Replace all', disabled: true } ], initialData: initialData, onChange: function (api, details) { if (details.name === 'findtext' && currentSearchState.get().count > 0) { reset(api); } }, onAction: function (api, details) { var data = api.getData(); switch (details.name) { case 'find': doFind(api); break; case 'replace': if (!replace(editor, currentSearchState, data.replacetext)) { reset(api); } else { updateButtonStates(api); } break; case 'replaceall': replace(editor, currentSearchState, data.replacetext, true, true); reset(api); break; case 'prev': prev(editor, currentSearchState); updateButtonStates(api); break; case 'next': next(editor, currentSearchState); updateButtonStates(api); break; case 'matchcase': case 'wholewords': case 'inselection': updateSearchState(api); reset(api); break; } focusButtonIfRequired(api, details.name); }, onSubmit: function (api) { doFind(api); focusButtonIfRequired(api, 'find'); }, onClose: function () { editor.focus(); done(editor, currentSearchState); editor.undoManager.add(); } }; dialogApi.set(editor.windowManager.open(spec, { inline: 'toolbar' })); }; var register$1 = function (editor, currentSearchState) { editor.addCommand('SearchReplace', function () { open(editor, currentSearchState); }); }; var showDialog = function (editor, currentSearchState) { return function () { open(editor, currentSearchState); }; }; var register = function (editor, currentSearchState) { editor.ui.registry.addMenuItem('searchreplace', { text: 'Find and replace...', shortcut: 'Meta+F', onAction: showDialog(editor, currentSearchState), icon: 'search' }); editor.ui.registry.addButton('searchreplace', { tooltip: 'Find and replace', onAction: showDialog(editor, currentSearchState), icon: 'search' }); editor.shortcuts.add('Meta+F', '', showDialog(editor, currentSearchState)); }; function Plugin () { global$3.add('searchreplace', function (editor) { var currentSearchState = Cell({ index: -1, count: 0, text: '', matchCase: false, wholeWord: false, inSelection: false }); register$1(editor, currentSearchState); register(editor, currentSearchState); return get(editor, currentSearchState); }); } Plugin(); }()); PK �h�\M��! ! plugin.min.js.gznu �[��� � �;i��6���W��Y= �R����k��7�1q'�I������#����*�R������ �B݀�}��_�o�k�z�j�pIhp��Cp#��6��+Y��N��E�8��,���i�P�ԅL�R��n!����C`l ��,��&J�A���7�A��5��ݻ@i���7������zr�tf�R8et���]8�*�g����"��C��L��%�M�,m�����h8�.r48:���� �K��d�N`!B�aYȠpV%.��H��6p\��t���tqg�o ܖ�I��v���6��ê&���J��8.)#��sι� �+�C3z���^���V<D+k��Y�*>��2��f�����2q�z!�b�#�b)�U(���"��Uz�o��|q��wǚr�� �t�F�����S(� �3kE躭�΄��$;�e�l���-�h80�2�Q�T������o% 뾏y9W���b.mH�-�:���( 5כMw����" 2˅��K�]�R��b�/�H�z�AajǍ��V��C[��Ý�h�JZ�%"ωc��zD�͔����QC��* n� �@�[&�$�R�@�s e%w$��K�C�r��r9C2\��!e�(K�"������'�g���'�q2����N��pr/f�����~��+���D��'��K�LB��<������rp:��R`�`�B9�a)�ȧ����)v�0�l0��4�egX� �1����(/N�cy��"�9@�'KX5<�����c\6;�5�s���<C��K1)���0v8 ��A6�����a�'��`0)����驄�b�e�����ώO�<�2|�g���� ,x����ϟc n(�pC!p��X�� ,2Ó�N�Y�`%�9�1�c�Lb����<�����c_y�=�O�r2���W$�g)��}���rR�X^Lʣ�S������ė�P�S�٤<�8G��P"=�.��Y�%@O��>�$XJ,az �$�tG�:�168����#��!���J%L9 [~Á�簒x+��A����c ݧ�vdg�R��Xq~��Db 3γs��Ĥ���8���,@T\$)�)v��!N�$��Q;v��lRf)E���f2��(�}����X9by��9�K �!��h�e�_X&��dCl�!� �D.�P���Np� ��d�}z2 )[�uf�c�Yk�$�[��Of)ォ��2��\�6��fQ����W^)��,����^[k,��M(�+��(i�`���QH��2�c���-?�TfJ�4V�֨4Pf �`���2)�E�b3�S�ݫ�q�2cE���T����,����v����~�H��m�A-�6����>x�ֶLsY�9f9P�$�2�#s�G���b���Y�^D1C�������f�ƒ:"�z�t�ٗ��G�K�G���7�n�M��u>��=�j�V9H*��Y��(˅sR��e��0�E�����@�U�� <�t���nG�x�wp����+�$@�?#����63L׃랷�,W�$�"Xג�ՒUT�e��e[ɲ���E(�F$���� �t녤; w���B�j�qO�fw�W&�����<�������!5��k苯�[lYf�r>��W��H�ݲ�<e�3�Z߆�}�Sc۾��O�qlR@��^<i_�ł���]7���I���.װJb� �n6%�9b%<|�\F��[}+r��b � ^8gլt2*�����C2��8~y)��i���%8�A�$e]���8��B-W��!7��c�0��(5K�@+3/����~I`�,�����CQ31;�\2�������JX��{�J-Ŋd{_�%�������i�K�+�E�R�p�X��N�*O�:����\*��%�v�5��*^�&���"�"Yȥ�i�ƺ�:�iE����ڤ�=D�-��0�L䅄��6�I�^�ʉY.����;K����/�䧕H���Ff��d�5_�y�x�9ȟw��y{HDR<�%1��:�GZ��q�ʌ�z��T�W/��)�%���Q�,������j-��Dq�Fp��f�蕃�-�#1�l�p���#��d��+(�ɕ��Ac�L�Sa��tf��<�A ��y!a��v��8,8�����J�z6r�����.�!��[~h�X� L���,g��#Q\2�Ao�H��CgK�&�pE�qT��Z�K���RHʮ8n6$�<Z�Zְ Dʠ`��h�SGD�Uiy��"ZYyK#0E��L�uM�8c���iv̀�rQŇ�����x��\Ts)�e�Ít��:?��N�.�Q�`�N��q�.OY�#���y�?.����I�q)��I��vb�lK��c�Z R ����إO����>�2��u*o)a�X�����*� ��L*Y 6�2E��<�PPK'-M�!%�2���z� �%���%��� ԃ��@]mp�����z��;��%~�U#H��B'�pƶ,Sl�h��� ���qV�D�ł!��#V�U�>9�*��� ~G�S}~;N���J�8��4d�Ή�ť�R�`�*�V��A.87��p�Ӱ� �m���M���x?�^J��I��/�X���ٓ�q���<k���0D5��S<`�ݓ6�A�D�>\����_?~�����~���Wo���h8`�A�*�|4��E-�z5��Î���$��a�`J��XG��v"�rN|��<�B�@�o|����p%V '�s�$ uT mak�Q��$a� C���9�u���:��F��I�@�z��vpn�yuf�������rQ��:��\wyn�QmH�����ݽL����Tc-�K���|*8Y����s^&u�V�2���W=kT q�2�U���-e]��Z]�-1,-�ő��B_�bܜ������ }�� u�?jcd��S���(@ʸA�R�T�'\���� �����M� (ӼdƷ%M�:@im��f�ݢ�h�ֵ���S�n]m��#��O�x�{iz=y�7ιf���[DKqOM��>ߩ41������m��֔_[Y��+bU_p��Ge�|l���f�x�[vO��}p 8���5�]����gK�A��H�� Oj�G�\W]+���%�`H��q,L��e"���!3�_�J�ד�� �y��z����WoH3�9�z�Aw���U�� �L��v`�Mk���b|�U��n\�x_�a�����UB,� ����A �C1�IX��ٺ]`f�e��-�(�EQ@�C��#�/��,m8z�첌�l�l�i҇V�.$�~��"�ǂ�\3pU�6VF�����0�a-�ҤCB��d}�L��-����}G�wR��岎\H�vG�����!7�W�0D ���,���Vޘ���E��b��a��'��Q��sJ�3���`��=��{��a��ݠ�� �����J@� �;+��k�Sf�����Q�W��|�s8��C(�B��W��4�������?H�}����I��i�aqJ��u�����1>��0�n�!c��~���iAV�pF6JЭ2|������W���c��3U� �*Д=���:�;�ƴ5��"��-H�u`�#Q�X��o�3?+yG�=C�%�?���vy�o|�^/W��`f����#�`��G�I7,�!d#+W�H$y6��'��t�l��l'dB'�N'W�h2��s��d3}6g�d�M/��I��N&�&;��ɤ|�͛iH!��UH��n&�b�&�z�����'p�G�xc읰)�`����P�'�(��W�`�*��q8Wp�xI�p�Ts�5w���*>�LX��C� TB�XFY�둒{>���0�F�K���>��~�kQ@V�nar���il�ҟjZ�jK)K;o�=�f��_�ܒ��U�AY��� ��>���Zk��ur���^opY;>�,#�$I1N��ĸ���z ��ۗw� +��hn労*,���bVsF�e��!�Uʿ'�8���Q|%l!�jGR6��3���C^` K7� 3; �;L�r�����%��f���dٮX�1P ����~�sT;���+�}��J.U��X_sX�iUH����֞I�� �nd/{�d�%E&bƟ5���y#1Ʌ$�N��W��9���e�⚯�\��kACj!j���WQ�Z��{�/�{����^��t[��ƣZ��Wm��<ū�PmM���K�+H�@�!�Q� ��$�|SHٟٻ��N�����J톬�y2?��U��V��z�8[�ޯ�G��U �7"Uܘ2Y@; 3�S|���4h�VhA���,v���k�<�$l�l�C�l'���+�z �F���p#�>���B�ٵFIc�QH�jt6va��ش�r��c��<�-Pցº���h�,��|���tQѝҩ���{E"�֑�ڔy�A :+��L�4��u�_WD k\B�q�����%���[�:5͚iJ�����h�^��Ҧ���?��C\X�tg�v��2� �B���5G��&�!���!^C<�+�e2��.�q�8�q^H�����_�<�֯���WK��L��i�L*㰐�&�p��EJ献Az)A�~��V���J��C�t�!�� ���,��`��(w���w��C�J����yp��"ܷ��y[�.�.k�fx5{_Y�I+!�2gL�� )Զ�\�ub�����n��^��IM�w�`K��S[���"�as���ÿӑ�8JmG��IY8���_wZ�VV-አ��S��g5��9���De�39��.�)SZ9%rP���8e~�Ð�T����c��V9��b��m<�-3�z!�\>���q �\����&bF��wA4�䮖w�%�A�52F��;S#l��㵴�:4�WI\�S���I�`�6�x4�B��a@-��E��z[I��찷o�2j�wL�mT��:z��u~�EjݵMݘDw��w<$� <��>����u������a)d�GS���lQ�c��*��ǖѬ�&Zr�Q�M�b'zr��)�V�g� �]OxP'�J�͛z|X�wU�BڽnLd�O<�|"��ꋟ�k�UV=��O�cA$$B���I��-�MJ75�Xn� T.Y!Y&�2�u�|��p�6����V�*�"a�nC�~༵��y���@���� ����Rw �顽�c J��_�,ĭDP(=ϥ�{�����,�/OhB�R�..�0�⛥1��i w�ր��R~���^P��2.%~~4JLW5�zq㙨JG��'�s�ߔ��*���'��}�3�A�q�>��"< @�U��L_�%t`"|�\��(�q!��p�p���&R�q�=�ʪ;��u!]`��W1�(������S��`捕��ƿ,$|Zu��gMbC��,�QrY'GI��(��D��6�Z�ze�����r���I���f��c��P�7�nUFvr����U&kP����^����;�;7��7�N �^&@��N�a&�tE�;�O�B �ɆV97���vd�T.k�:}�N���N2�`�1���w0īt�^\K��]�\ ���b��lж8���t4*!�<W�� ���['�O6��x�/UQ���'lI αt��M�zJ�X�}�ڳ�L?^�%z�{�=��k?Yf�"5n�?��0d���%S\�u��ڟ���$pr�Q��?�G����U��_���[�wTv���Yt�;�ӯ�j�_RϦ�:� �[BG��@ 9 PK �h�\�@ 9 9 plugin.min.jsnu �[��� PK �h�\dkJ�� � J9 index.jsnu �[��� PK �h�\d��L� L� a: plugin.jsnu �[��� PK �h�\M��! ! �� plugin.min.js.gznu �[��� PK . G�
| ver. 1.4 |
Github
|
.
| PHP 8.3.23 | Generation time: 0 |
proxy
|
phpinfo
|
Settings