jodit-pro
Version:
PRO Version of Jodit Editor
8 lines • 14 kB
JavaScript
/*!
* jodit-pro - PRO Version of Jodit Editor
* Author: Chupurnov Valerii <chupurnov@gmail.com>
* Version: v4.9.27
* Url: https://xdsoft.net/jodit/pro/
* License(s): SEE LICENSE IN LICENSE.md
*/
!function(t,e){if("object"==typeof exports&&"object"==typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var n=e();for(var a in n)("object"==typeof exports?exports:t)[a]=n[a]}}(self,function(){return(self.webpackChunkjodit_pro=self.webpackChunkjodit_pro||[]).push([[954],{11886:function(t,e,n){"use strict";function a(t,e){return e=null!=e?e:{},Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(e)):(function(t){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e.push.apply(e,n)}return e})(Object(e)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(e,n))}),t}n.d(e,{_:function(){return a}})},20104:function(t,e,n){"use strict";var a=n(74922),i=n.n(a),r=n(34575),o=n.n(r),s=n(6441),l=n(12153);s.Config.prototype.translate={hotkeys:{translateSelection:["ctrl+shift+o","cmd+shift+o"],translateOptions:["ctrl+shift+p","cmd+shift+p"]},provider:"google",googleProviderOptions:{url:"https://translation.googleapis.com/language/translate/v2",key:""},defaultSourceLang:"",defaultTargetLang:"de"},s.Config.prototype.controls.translate={translate:{tooltip:"Translate selected text",icon:"translate",command:"translate",exec:function(t){t.execCommand("translate")},list:["Options"],childExec:function(t,e,n){var a=n.control;t.execCommand("translate"+a.name)},mods:{stroke:!1}}},l.Icon.set("translate",o()).set("translate-swap",i())},27834:function(t,e,n){"use strict";n.d(e,{GoogleTranslateProvider:function(){return d}});var a=n(20616),i=n(67709),r=n(82749),o=n(56075),s=n(11886),l=n(82758),c=n(38837),u=n(80942),d=function(){function t(e){(0,a._)(this,t),(0,r._)(this,"jodit",void 0),this.jodit=e}return(0,i._)(t,[{key:"__fetch",value:function(t){var e=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=this.jodit.o.translate.googleProviderOptions;return(0,c.assert)(a,"Set googleProviderOptions"),this.jodit.fetch(a.url+"?key="+a.key,{method:"POST",data:(0,s._)((0,o._)({},n),{ui:this.jodit.o.language}),contentType:"application/json; charset=utf-8",withCredentials:!1}).then(function(t){return t.json()}).catch(function(t){try{e.jodit.message.error(t.json().message)}catch(t){l.IS_PROD}})}},{key:"translate",value:function(t,e,n){return this.__fetch("translate",{q:t,source:e,target:n,format:"html"}).then(function(t){return{text:t.data.translations[0].translatedText}})}},{key:"supportedLanguages",value:function(){return Promise.resolve({langs:u.languages})}}]),t}()},33124:function(t,e,n){"use strict";n.d(e,{UITranslateSettings:function(){return g}});var a=n(80294),i=n(20616),r=n(67709),o=n(82749),s=n(18766),l=n(56075),c=n(31635),u=n(65478),d=n(67510),h=n(67082),g=function(t){function e(t,n,r){var s,c,u;return(0,i._)(this,e),s=(0,a._)(this,e,[t]),(0,o._)(s,"state",void 0),(0,o._)(s,"options",void 0),(0,o._)(s,"__sourceList",void 0),(0,o._)(s,"__targetList",void 0),s.state=n,s.options=r,s.__sourceList=new h.UITranslateList(t,{list:r.sourceList,active:n.sourceLang,onChange:function(t){s.state.sourceLang=t,s.options.onChange((0,l._)({},s.state))}}),null==(c=s.getElm("source-list"))||c.appendChild(s.__sourceList.container),s.__targetList=new h.UITranslateList(t,{list:r.targetList,active:n.targetLang,onChange:function(t){s.state.targetLang=t,s.options.onChange((0,l._)({},s.state))}}),null==(u=s.getElm("target-list"))||u.appendChild(s.__targetList.container),s}return(0,s._)(e,t),(0,r._)(e,[{key:"className",value:function(){return"UITranslateSettings"}},{key:"render",value:function(){return"<div>\n <div class='&__list &__source-list'></div>\n <div class='&__arrow'>\n <a class='&__arrow-swap'>*translate-swap*</a>\n </div>\n <div class='&__list &__target-list'></div>\n </div>"}},{key:"__onSwap",value:function(){var t=this.state.sourceLang;this.state.sourceLang=this.state.targetLang,this.state.targetLang=t,this.__sourceList.state.active=this.state.sourceLang,this.__targetList.state.active=this.state.targetLang,this.options.onChange((0,l._)({},this.state))}}]),e}(d.UIElement);(0,c.__decorate)([(0,u.watch)("arrow-swap:click")],g.prototype,"__onSwap",null),g=(0,c.__decorate)([u.component],g)},34575:function(t){t.exports='<svg viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"> <path d="M4.545 6.714 4.11 8H3l1.862-5h1.284L8 8H6.833l-.435-1.286H4.545zm1.634-.736L5.5 3.956h-.049l-.679 2.022H6.18z"/> <path d="M0 2a2 2 0 0 1 2-2h7a2 2 0 0 1 2 2v3h3a2 2 0 0 1 2 2v7a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2v-3H2a2 2 0 0 1-2-2V2zm2-1a1 1 0 0 0-1 1v7a1 1 0 0 0 1 1h7a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H2zm7.138 9.995c.193.301.402.583.63.846-.748.575-1.673 1.001-2.768 1.292.178.217.451.635.555.867 1.125-.359 2.08-.844 2.886-1.494.777.665 1.739 1.165 2.93 1.472.133-.254.414-.673.629-.89-1.125-.253-2.057-.694-2.82-1.284.681-.747 1.222-1.651 1.621-2.757H14V8h-3v1.047h.765c-.318.844-.74 1.546-1.272 2.13a6.066 6.066 0 0 1-.415-.492 1.988 1.988 0 0 1-.94.31z"/> </svg>'},67082:function(t,e,n){"use strict";n.d(e,{UITranslateList:function(){return v}});var a=n(80294),i=n(20616),r=n(67709),o=n(82749),s=n(18766),l=n(31635),c=n(82758),u=n(65478),d=n(2748),h=n(21537),g=n(29960),f=n(48538),p=n(80256),v=function(t){function e(t,n){(0,i._)(this,e),r=(0,a._)(this,e,[t,n]),(0,o._)(r,"options",void 0),(0,o._)(r,"state",void 0),r.options=n,r.state={active:""},r.state.active=n.active;var r,s,l=new p.UIInput(t,{placeholder:t.i18n("Filter"),icon:"search",onChange:r.__onChangeFilter,clearButton:!0});return null==(s=r.getElm("input"))||s.appendChild(l.container),r.__onActiveChange(),r}return(0,s._)(e,t),(0,r._)(e,[{key:"className",value:function(){return"UITranslateList"}},{key:"items",get:function(){return this.getElms("item")}},{key:"render",value:function(t){var e=this,n=[];return Object.keys(t.list).sort().forEach(function(a){var i=t.list[a];n.push("<a role='button' tabindex='0' class='&__item' data-lang='".concat(i,"'>\n <span class='&__item-key'>").concat(i,"</span>\n <span class='&__item-title'>").concat(e.j.i18n(a),"</span>\n </a>"))}),"<div class='&'>\n <div class='&__input'></div>\n <div class='&__list'>".concat(n.join(""),"</div>\n </div>")}},{key:"__onChangeFilter",value:function(t){this.items.forEach(function(e){var n,a,i=null!=(n=null==(a=e.textContent)?void 0:a.toLowerCase())?n:"";(0,g.attr)(e,"data-hidden","true"!==(0,g.attr)(e,"data-active")&&!i.includes(t.toLowerCase()))})}},{key:"__scrollToActive",value:function(){var t=this.container.querySelector('[data-active="true"]'),e=this.getElm("list");t&&e&&(0,h.scrollIntoViewIfNeeded)(t,e,this.j.od)}},{key:"onClickItem",value:function(t){if("keydown"!==t.type||!("key"in t)||t.key===c.KEY_ENTER){var e=t.target;if(d.Dom.isHTMLElement(e)&&e.getAttribute("data-lang")){var n=(0,g.attr)(e,"data-lang");this.options.onChange(n),this.state.active=n}}}},{key:"__onActiveChange",value:function(){var t=this;this.items.forEach(function(e){return(0,g.attr)(e,"data-active",(0,g.attr)(e,"data-lang")===t.state.active)}),this.__scrollToActive()}}]),e}(f.UIElement);(0,l.__decorate)([(0,u.debounce)()],v.prototype,"__onChangeFilter",null),(0,l.__decorate)([(0,u.watch)(":afterOpen")],v.prototype,"__scrollToActive",null),(0,l.__decorate)([(0,u.watch)(["container:click","container:keydown"])],v.prototype,"onClickItem",null),(0,l.__decorate)([(0,u.watch)("state.active"),(0,u.debounce)()],v.prototype,"__onActiveChange",null),v=(0,l.__decorate)([u.component],v)},73098:function(t,e,n){"use strict";n.r(e),n.d(e,{Translate:function(){return T}});var a=n(77688),i=n(80294),r=n(20616),o=n(67709),s=n(82749),l=n(18766),c=n(23078),u=n(31635),d=n(62361);n(20104);var h=n(27834),g=n(33124),f=n(73534),p=n(65478),v=n(23282),_=n(70799),m=n(38837),y=n(96325),k=n(50911),L=n(10830),w=n(2692),T=function(t){function e(){var t;return(0,r._)(this,e),t=(0,i._)(this,e,arguments),(0,s._)(t,"buttons",[{name:"translate.translate",group:"insert"}]),(0,s._)(t,"state",{sourceLang:t.jodit.o.translate.defaultSourceLang||"en",targetLang:t.jodit.o.translate.defaultTargetLang}),t}return(0,l._)(e,t),(0,o._)(e,[{key:"__getProvider",value:function(){var t=this.jodit.options.translate.provider;if((0,_.isString)(t))if("google"===t)return new h.GoogleTranslateProvider(this.j);else throw Error("Unknown provider");return(0,m.assert)((0,v.isFunction)(t),"Provider must be a function"),t(this.jodit)}},{key:"afterInit",value:function(t){var e=this,n=(0,y.defaultLanguage)(t.o.language,w.JoditPro.defaultOptions.language),i=(0,y.defaultLanguage)(t.o.language,n),r=this.__getProvider();t.registerCommand("translateOptions",{exec:function(){return(0,a._)(function(){var e,n,a,i,o;return(0,d._)(this,function(s){switch(s.label){case 0:return e=this,n=this.state,(a=t.dlg()).setHeader("Translate options"),[4,r.supportedLanguages()];case 1:return i=s.sent(),o=new g.UITranslateSettings(a,this.state,{sourceList:i.langs,targetList:i.langs,onChange:function(t){n=t}}),a.setContent(o),a.setFooter([(0,L.Button)(t,"cancel","Cancel").onAction(function(){return a.close()}),(0,L.Button)(t,"ok","Save","primary").onAction(function(){e.state=n,a.close()})]),o.bindDestruct(a),a.setSize(500,400).open(!0),[2]}})}).call(e)},hotkeys:t.o.translate.hotkeys.translateOptions}).registerCommand("translate",{exec:function(){var n=(0,f.getSelectionFragments)(t).filter(function(t){return t.text.trim().length>0});if(!n.length)return void t.message.error("Select text for translate");var a=e.state.sourceLang&&"auto"!==e.state.sourceLang?e.state.sourceLang:i,o=e.state.targetLang;return Promise.all(n.map(function(e){r.translate(e.text,a,o).then(function(t){e.replace(t.text)}).catch(function(e){t.message.error((0,_.isString)(e)?e:e.message)})})).then(function(){t.synchronizeValues()})},hotkeys:t.o.translate.hotkeys.translateSelection})}},{key:"beforeDestruct",value:function(t){}}]),e}((0,c._)(k.Plugin));(0,s._)(T,"requires",["license"]),(0,u.__decorate)([p.persistent],T.prototype,"state",void 0),w.JoditPro.plugins.add("translate",T)},73534:function(t,e,n){"use strict";n.d(e,{getSelectionFragments:function(){return i}});var a=n(2748);function i(t){var e=[],n=t.s.expandSelection().sel;if(!n||0===n.rangeCount||n.isCollapsed)return e;t.s.range.commonAncestorContainer.normalize();var i=t.s.range,l=i.commonAncestorContainer,c=i.startContainer,u=i.endContainer,d=i.startOffset,h=i.endOffset;if(c===u){if(a.Dom.isText(c))return[o(c,d,h)];if(h-d==1){var g=c.childNodes[d];return a.Dom.isText(g)?[o(g,0,g.nodeValue.length)]:[s(g)]}if(0===d&&c.childNodes.length===h)return[s(c)];for(var f=d;f<h;f++){var p=c.childNodes[f];a.Dom.isText(p)?e.push(o(p,0,p.nodeValue.length)):e.push(s(p))}return e}for(var v=new Set,_=t.ed.createTreeWalker(l,NodeFilter.SHOW_ALL,{acceptNode:function(t){return!i.intersectsNode(t)||a.Dom.closest(t,function(t){return t&&v.has(t)},l)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT}}),m=_.nextNode();m;){if(a.Dom.isElement(m)&&r(i,m))v.add(m),e.push(s(m));else if(a.Dom.isText(m)&&r(i,m))e.push(o(m,0,m.nodeValue.length));else if(a.Dom.isText(m)){var y=0,k=m.nodeValue.length;m===c&&(y=d),m===u&&(k=h),e.push(o(m,y,k))}m=_.nextNode()}return e}var r=function(t,e){var n=document.createRange();try{n.selectNodeContents(e)}catch(t){n.selectNode(e)}return 0>=t.compareBoundaryPoints(Range.START_TO_START,n)&&t.compareBoundaryPoints(Range.END_TO_END,n)>=0};function o(t,e,n){return{text:t.nodeValue.slice(e,n),replace:function(a){t.nodeValue=t.nodeValue.slice(0,e)+a+t.nodeValue.slice(n)}}}function s(t){return{text:t.innerHTML,replace:function(e){t.innerHTML=e}}}},74922:function(t){t.exports='<svg viewBox="0 0 48 48" xmlns="http://www.w3.org/2000/svg"> <path d="M13.98 22L6 30l7.98 8v-6H28v-4H13.98v-6zM42 18l-7.98-8v6H20v4h14.02v6L42 18z"/> <path d="M0 0h48v48H0z" fill="none"/> </svg>'},80942:function(t,e,n){"use strict";n.d(e,{languages:function(){return a}});var a={Afrikaans:"af",Albanian:"sq",Amharic:"am",Arabic:"ar",Armenian:"hy","Assamese*":"as","Aymara*":"ay",Azerbaijani:"az","Bambara*":"bm",Basque:"eu",Belarusian:"be",Bengali:"bn","Bhojpuri*":"bho",Bosnian:"bs",Bulgarian:"bg",Catalan:"ca",Cebuano:"ceb","Chinese (Simplified)":"zh-CN","Chinese (Traditional)":"zh-TW",Corsican:"co",Croatian:"hr",Czech:"cs",Danish:"da","Dhivehi*":"dv","Dogri*":"doi",Dutch:"nl",English:"en",Esperanto:"eo",Estonian:"et","Ewe*":"ee","Filipino (Tagalog)":"fil",Finnish:"fi",French:"fr",Frisian:"fy",Galician:"gl",Georgian:"ka",German:"de",Greek:"el","Guarani*":"gn",Gujarati:"gu","Haitian Creole":"ht",Hausa:"ha",Hawaiian:"haw",Hebrew:"he",Hindi:"hi",Hmong:"hmn",Hungarian:"hu",Icelandic:"is",Igbo:"ig","Ilocano*":"ilo",Indonesian:"id",Irish:"ga",Italian:"it",Japanese:"ja",Kannada:"kn",Kazakh:"kk",Khmer:"km",Kinyarwanda:"rw","Konkani*":"gom",Korean:"ko","Krio*":"kri",Kurdish:"ku","Kurdish (Sorani)*":"ckb",Kyrgyz:"ky",Lao:"lo",Latin:"la",Latvian:"lv","Lingala*":"ln",Lithuanian:"lt","Luganda*":"lg",Luxembourgish:"lb",Macedonian:"mk","Maithili*":"mai",Malagasy:"mg",Malay:"ms",Malayalam:"ml",Maltese:"mt",Maori:"mi",Marathi:"mr","Meiteilon (Manipuri)*":"mni-Mtei",Mizo:"lus",Mongolian:"mn","Myanmar (Burmese)":"my",Nepali:"ne",Norwegian:"no","Nyanja (Chichewa)":"ny","Odia (Oriya)":"or","Oromo*":"om",Pashto:"ps",Persian:"fa",Polish:"pl",Portuguese:"pt",Punjabi:"pa","Quechua*":"qu",Romanian:"ro",Russian:"ru",Samoan:"sm","Sanskrit*":"sa","Scots Gaelic":"gd","Sepedi*":"nso",Serbian:"sr",Sesotho:"st",Shona:"sn",Sindhi:"sd","Sinhala (Sinhalese)":"si",Slovak:"sk",Slovenian:"sl",Somali:"so",Spanish:"es",Sundanese:"su",Swahili:"sw",Swedish:"sv","Tagalog (Filipino)":"tl",Tajik:"tg",Tamil:"ta",Tatar:"tt",Telugu:"te",Thai:"th","Tigrinya*":"ti","Tsonga*":"ts",Turkish:"tr",Turkmen:"tk","Twi (Akan)*":"ak",Ukrainian:"uk",Urdu:"ur",Uyghur:"ug",Uzbek:"uz",Vietnamese:"vi",Welsh:"cy",Xhosa:"xh",Yiddish:"yi",Yoruba:"yo",Zulu:"zu"}}},function(t){return t(t.s=73098)}])});