You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

vue-4.js 231KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959
  1. (window["webpackJsonpSettings"] = window["webpackJsonpSettings"] || []).push([[4],{
  2. /***/ "./node_modules/@nextcloud/vue/dist/Components/AppNavigationSpacer.js":
  3. /*!****************************************************************************!*\
  4. !*** ./node_modules/@nextcloud/vue/dist/Components/AppNavigationSpacer.js ***!
  5. \****************************************************************************/
  6. /*! no static exports found */
  7. /***/ (function(module, exports, __webpack_require__) {
  8. !function(e,t){ true?module.exports=t():undefined}(window,(function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="/dist/",n(n.s=179)}({0:function(e,t,n){"use strict";function r(e,t,n,r,o,i,a,s){var c,u="function"==typeof e?e.options:e;if(t&&(u.render=t,u.staticRenderFns=n,u._compiled=!0),r&&(u.functional=!0),i&&(u._scopeId="data-v-"+i),a?(c=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),o&&o.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(a)},u._ssrRegister=c):o&&(c=s?function(){o.call(this,this.$root.$options.shadowRoot)}:o),c)if(u.functional){u._injectStyles=c;var f=u.render;u.render=function(e,t){return c.call(t),f(e,t)}}else{var p=u.beforeCreate;u.beforeCreate=p?[].concat(p,c):[c]}return{exports:e,options:u}}n.d(t,"a",(function(){return r}))},1:function(e,t,n){"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var n=function(e,t){var n=e[1]||"",r=e[3];if(!r)return n;if(t&&"function"==typeof btoa){var o=(a=r,s=btoa(unescape(encodeURIComponent(JSON.stringify(a)))),c="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(s),"/*# ".concat(c," */")),i=r.sources.map((function(e){return"/*# sourceURL=".concat(r.sourceRoot||"").concat(e," */")}));return[n].concat(i).concat([o]).join("\n")}var a,s,c;return[n].join("\n")}(t,e);return t[2]?"@media ".concat(t[2]," {").concat(n,"}"):n})).join("")},t.i=function(e,n,r){"string"==typeof e&&(e=[[null,e,""]]);var o={};if(r)for(var i=0;i<this.length;i++){var a=this[i][0];null!=a&&(o[a]=!0)}for(var s=0;s<e.length;s++){var c=[].concat(e[s]);r&&o[c[0]]||(n&&(c[2]?c[2]="".concat(n," and ").concat(c[2]):c[2]=n),t.push(c))}},t}},104:function(e,t,n){var r=n(227);"string"==typeof r&&(r=[[e.i,r,""]]),r.locals&&(e.exports=r.locals);(0,n(2).default)("1e3ece15",r,!0,{})},179:function(e,t,n){"use strict";n.r(t);var r={name:"AppNavigationSpacer"},o=(n(226),n(0)),i=Object(o.a)(r,(function(){var e=this.$createElement;return(this._self._c||e)("li",{staticClass:"app-navigation-spacer"})}),[],!1,null,"42195cc8",null).exports;t.default=i},2:function(e,t,n){"use strict";function r(e,t){for(var n=[],r={},o=0;o<t.length;o++){var i=t[o],a=i[0],s={id:e+":"+o,css:i[1],media:i[2],sourceMap:i[3]};r[a]?r[a].parts.push(s):n.push(r[a]={id:a,parts:[s]})}return n}n.r(t),n.d(t,"default",(function(){return l}));var o="undefined"!=typeof document;if("undefined"!=typeof DEBUG&&DEBUG&&!o)throw new Error("vue-style-loader cannot be used in a non-browser environment. Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.");var i={},a=o&&(document.head||document.getElementsByTagName("head")[0]),s=null,c=0,u=!1,f=function(){},p=null,d="undefined"!=typeof navigator&&/msie [6-9]\b/.test(navigator.userAgent.toLowerCase());function l(e,t,n,o){u=n,p=o||{};var a=r(e,t);return v(a),function(t){for(var n=[],o=0;o<a.length;o++){var s=a[o];(c=i[s.id]).refs--,n.push(c)}t?v(a=r(e,t)):a=[];for(o=0;o<n.length;o++){var c;if(0===(c=n[o]).refs){for(var u=0;u<c.parts.length;u++)c.parts[u]();delete i[c.id]}}}}function v(e){for(var t=0;t<e.length;t++){var n=e[t],r=i[n.id];if(r){r.refs++;for(var o=0;o<r.parts.length;o++)r.parts[o](n.parts[o]);for(;o<n.parts.length;o++)r.parts.push(g(n.parts[o]));r.parts.length>n.parts.length&&(r.parts.length=n.parts.length)}else{var a=[];for(o=0;o<n.parts.length;o++)a.push(g(n.parts[o]));i[n.id]={id:n.id,refs:1,parts:a}}}}function h(){var e=document.createElement("style");return e.type="text/css",a.appendChild(e),e}function g(e){var t,n,r=document.querySelector('style[data-vue-ssr-id~="'+e.id+'"]');if(r){if(u)return f;r.parentNode.removeChild(r)}if(d){var o=c++;r=s||(s=h()),t=b.bind(null,r,o,!1),n=b.bind(null,r,o,!0)}else r=h(),t=x.bind(null,r),n=function(){r.parentNode.removeChild(r)};return t(e),function(r){if(r){if(r.css===e.css&&r.media===e.media&&r.sourceMap===e.sourceMap)return;t(e=r)}else n()}}var m,y=(m=[],function(e,t){return m[e]=t,m.filter(Boolean).join("\n")});function b(e,t,n,r){var o=n?"":r.css;if(e.styleSheet)e.styleSheet.cssText=y(t,o);else{var i=document.createTextNode(o),a=e.childNodes;a[t]&&e.removeChild(a[t]),a.length?e.insertBefore(i,a[t]):e.appendChild(i)}}function x(e,t){var n=t.css,r=t.media,o=t.sourceMap;if(r&&e.setAttribute("media",r),p.ssrId&&e.setAttribute("data-vue-ssr-id",t.id),o&&(n+="\n/*# sourceURL="+o.sources[0]+" */",n+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(o))))+" */"),e.styleSheet)e.styleSheet.cssText=n;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(n))}}},226:function(e,t,n){"use strict";var r=n(104);n.n(r).a},227:function(e,t,n){(t=n(1)(!1)).push([e.i,"\n.app-navigation-spacer[data-v-42195cc8] {\n\tflex-shrink: 0;\n\torder: 1;\n\theight: 22px;\n}\n\n",""]),e.exports=t}})}));
  9. //# sourceMappingURL=AppNavigationSpacer.js.map
  10. /***/ }),
  11. /***/ "./node_modules/@nextcloud/vue/dist/Components/AppSidebar.js":
  12. /*!*******************************************************************!*\
  13. !*** ./node_modules/@nextcloud/vue/dist/Components/AppSidebar.js ***!
  14. \*******************************************************************/
  15. /*! no static exports found */
  16. /***/ (function(module, exports, __webpack_require__) {
  17. !function(e,t){ true?module.exports=t():undefined}(window,(function(){return function(e){var t={};function s(A){if(t[A])return t[A].exports;var n=t[A]={i:A,l:!1,exports:{}};return e[A].call(n.exports,n,n.exports,s),n.l=!0,n.exports}return s.m=e,s.c=t,s.d=function(e,t,A){s.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:A})},s.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},s.t=function(e,t){if(1&t&&(e=s(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var A=Object.create(null);if(s.r(A),Object.defineProperty(A,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)s.d(A,n,function(t){return e[t]}.bind(null,n));return A},s.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return s.d(t,"a",t),t},s.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},s.p="/dist/",s(s.s=178)}({0:function(e,t,s){"use strict";function A(e,t,s,A,n,a,o,r){var i,c="function"==typeof e?e.options:e;if(t&&(c.render=t,c.staticRenderFns=s,c._compiled=!0),A&&(c.functional=!0),a&&(c._scopeId="data-v-"+a),o?(i=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),n&&n.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(o)},c._ssrRegister=i):n&&(i=r?function(){n.call(this,this.$root.$options.shadowRoot)}:n),i)if(c.functional){c._injectStyles=i;var l=c.render;c.render=function(e,t){return i.call(t),l(e,t)}}else{var m=c.beforeCreate;c.beforeCreate=m?[].concat(m,i):[i]}return{exports:e,options:c}}s.d(t,"a",(function(){return A}))},1:function(e,t,s){"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var s=function(e,t){var s=e[1]||"",A=e[3];if(!A)return s;if(t&&"function"==typeof btoa){var n=(o=A,r=btoa(unescape(encodeURIComponent(JSON.stringify(o)))),i="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(r),"/*# ".concat(i," */")),a=A.sources.map((function(e){return"/*# sourceURL=".concat(A.sourceRoot||"").concat(e," */")}));return[s].concat(a).concat([n]).join("\n")}var o,r,i;return[s].join("\n")}(t,e);return t[2]?"@media ".concat(t[2]," {").concat(s,"}"):s})).join("")},t.i=function(e,s,A){"string"==typeof e&&(e=[[null,e,""]]);var n={};if(A)for(var a=0;a<this.length;a++){var o=this[a][0];null!=o&&(n[o]=!0)}for(var r=0;r<e.length;r++){var i=[].concat(e[r]);A&&n[i[0]]||(s&&(i[2]?i[2]="".concat(s," and ").concat(i[2]):i[2]=s),t.push(i))}},t}},10:function(e,t,s){"use strict";s.r(t),t.default="data:font/ttf;base64,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"},105:function(e,t,s){"use strict";s.r(t),s.d(t,"directive",(function(){return A}));
  18. /**
  19. * @copyright Copyright (c) 2019 Georg Ehrke
  20. *
  21. * @author Georg Ehrke <oc.list@georgehrke.com>
  22. *
  23. * @license GNU AGPL version 3 or any later version
  24. *
  25. * This program is free software: you can redistribute it and/or modify
  26. * it under the terms of the GNU Affero General Public License as
  27. * published by the Free Software Foundation, either version 3 of the
  28. * License, or (at your option) any later version.
  29. *
  30. * This program is distributed in the hope that it will be useful,
  31. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  32. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  33. * GNU Affero General Public License for more details.
  34. *
  35. * You should have received a copy of the GNU Affero General Public License
  36. * along with this program. If not, see <http://www.gnu.org/licenses/>.
  37. *
  38. */
  39. var A={inserted:function(e){e.focus()}};t.default=A},106:function(e,t,s){var A=s(230);"string"==typeof A&&(A=[[e.i,A,""]]),A.locals&&(e.exports=A.locals);(0,s(2).default)("45aebdd4",A,!0,{})},107:function(e,t,s){var A=s(232);"string"==typeof A&&(A=[[e.i,A,""]]),A.locals&&(e.exports=A.locals);(0,s(2).default)("4dd3631b",A,!0,{})},11:function(e,t,s){"use strict";s.r(t),t.default="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCIgPjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48bWV0YWRhdGE+PC9tZXRhZGF0YT48ZGVmcz48Zm9udCBpZD0iaWNvbmZvbnQtdnVlLWUxZjU1Y2UiIGhvcml6LWFkdi14PSI1MDAwIj48Zm9udC1mYWNlIGZvbnQtZmFtaWx5PSJpY29uZm9udC12dWUtZTFmNTVjZSIgZm9udC13ZWlnaHQ9IjQwMCIgZm9udC1zdHJldGNoPSJub3JtYWwiIHVuaXRzLXBlci1lbT0iNTAwMCIgcGFub3NlLTE9IjIgMCA1IDMgMCAwIDAgMCAwIDAiIGFzY2VudD0iNTAwMCIgZGVzY2VudD0iMCIgeC1oZWlnaHQ9IjAiIGJib3g9Ii0xIDAgNTAxMSA1MDAwIiB1bmRlcmxpbmUtdGhpY2tuZXNzPSIwIiB1bmRlcmxpbmUtcG9zaXRpb249IjUwIiB1bmljb2RlLXJhbmdlPSJVK2VhMDEtZWEwZSIgLz48bWlzc2luZy1nbHlwaCBob3Jpei1hZHYteD0iMCIgIC8+PGdseXBoIGdseXBoLW5hbWU9ImFycm93LWxlZnQtZG91YmxlIiB1bmljb2RlPSImI3hlYTAxOyIgZD0iTTM3NTAgMzkwNiBsLTE0MDYgLTE0MDYgbDE0MDYgLTE0MDYgbDAgMzEyIGwtMTA5NCAxMDk0IGwxMDk0IDEwOTQgbDAgMzEyIFpNMjM0NCAzOTA2IGwtMTQwNiAtMTQwNiBsMTQwNiAtMTQwNiBsMCAzMTIgbC0xMDk0IDEwOTQgbDEwOTQgMTA5NCBsMCAzMTIgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0iYXJyb3ctbGVmdCIgdW5pY29kZT0iJiN4ZWEwMjsiIGQ9Ik0xNTYzIDI1MDAgbDE4NzUgLTE4NzUgbDAgLTMxMiBsLTIxODggMjE4NyBsMjE4OCAyMTg4IGwwIC0zMTMgbC0xODc1IC0xODc1IFoiIC8+PGdseXBoIGdseXBoLW5hbWU9ImFycm93LXJpZ2h0LWRvdWJsZSIgdW5pY29kZT0iJiN4ZWEwMzsiIGQ9Ik0xMjUwIDEwOTQgbDE0MDYgMTQwNiBsLTE0MDYgMTQwNiBsMCAtMzEyIGwxMDk0IC0xMDk0IGwtMTA5NCAtMTA5NCBsMCAtMzEyIFpNMjY1NiAxMDk0IGwxNDA3IDE0MDYgbC0xNDA3IDE0MDYgbDAgLTMxMiBsMTA5NCAtMTA5NCBsLTEwOTQgLTEwOTQgbDAgLTMxMiBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJhcnJvdy1yaWdodCIgdW5pY29kZT0iJiN4ZWEwNDsiIGQ9Ik0zNDM4IDI1MDAgbC0xODc1IDE4NzUgbDAgMzEzIGwyMTg3IC0yMTg4IGwtMjE4NyAtMjE4NyBsMCAzMTIgbDE4NzUgMTg3NSBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJicmVhZGNydW1iIiB1bmljb2RlPSImI3hlYTA1OyIgZD0iTTE0OCA1MDAwIGwtMTQ4IC04NSBsMTM5NCAtMjQxNSBsLTEzOTQgLTI0MTUgbDE0OCAtODUgbDE0NDMgMjUwMCBsLTE0NDMgMjUwMCBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJjaGVja21hcmsiIHVuaWNvZGU9IiYjeGVhMDY7IiBkPSJNNDA0NSAzOTcxIGwtMjA2MSAtMjA2MSBsLTEwMjkgMTAyOSBsLTQ0MiAtNDQxIGwxNDcxIC0xNDcxIGwyNTAzIDI1MDIgbC00NDIgNDQyIFoiIC8+PGdseXBoIGdseXBoLW5hbWU9ImNsb3NlIiB1bmljb2RlPSImI3hlYTA3OyIgZD0iTTQzNzUgMTE1NiBsLTUzMSAtNTMxIGwtMTM0NCAxMzQ0IGwtMTM0NCAtMTM0NCBsLTUzMSA1MzEgbDEzNDQgMTM0NCBsLTEzNDQgMTM0NCBsNTMxIDUzMSBsMTM0NCAtMTM0NCBsMTM0NCAxMzQ0IGw1MzEgLTUzMSBsLTEzNDQgLTEzNDQgbDEzNDQgLTEzNDQgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0iY29uZmlybSIgdW5pY29kZT0iJiN4ZWEwODsiIGQ9Ik0yNjU2IDQ4NDQgcS0xMDEgMCAtMTgwIC01NyBxLTc0IC01MiAtMTA5IC0xMzggcS0zNSAtODYgLTE5IC0xNzUgcTE4IC05NiA5MCAtMTY3IGwxNDk1IC0xNDk0IGwtMzYxNiAwIHEtNzcgMSAtMTM5IC0yNiBxLTU4IC0yNCAtOTkgLTcwIHEtMzkgLTQ0IC01OSAtMTAxIHEtMjAgLTU2IC0yMCAtMTE2IHEwIC02MCAyMCAtMTE2IHEyMCAtNTcgNTkgLTEwMSBxNDEgLTQ2IDk5IC03MCBxNjIgLTI3IDEzOSAtMjUgbDM2MTYgMCBsLTE0OTUgLTE0OTUgcS01NSAtNTMgLTgxIC0xMTYgcS0yNCAtNTkgLTIxIC0xMjEgcTMgLTU4IDMwIC0xMTMgcTI1IC01NCA2OCAtOTcgcTQzIC00MyA5NiAtNjggcTU1IC0yNiAxMTQgLTI5IHE2MiAtMyAxMjAgMjEgcTYzIDI1IDExNiA4MSBsMjAyOSAyMDI4IHE1OSA2MCA4MCAxNDEgcTIxIDgwIDEgMTU5IHEtMjEgODIgLTgxIDE0MiBsLTIwMjkgMjAyOCBxLTQ0IDQ1IC0xMDIgNzAgcS01OCAyNSAtMTIyIDI1IFoiIC8+PGdseXBoIGdseXBoLW5hbWU9ImluZm8iIHVuaWNvZGU9IiYjeGVhMDk7IiBkPSJNMjQyMiA0Njg4IHEtMTExIDAgLTIxMyAtNDMgcS05OCAtNDIgLTE3NCAtMTE3LjUgcS03NiAtNzUuNSAtMTE3IC0xNzQuNSBxLTQzIC0xMDEgLTQzIC0yMTIuNSBxMCAtMTExLjUgNDMgLTIxMi41IHE0MSAtOTggMTE3IC0xNzQgcTc2IC03NiAxNzQgLTExNyBxMTAyIC00MyAyMTMgLTQzIHExMTEgMCAyMTMgNDMgcTk4IDQxIDE3My41IDExNyBxNzUuNSA3NiAxMTcuNSAxNzQgcTQzIDEwMSA0MyAyMTIuNSBxMCAxMTEuNSAtNDMgMjEyLjUgcS00MiA5OSAtMTE3LjUgMTc0LjUgcS03NS41IDc1LjUgLTE3My41IDExNy41IHEtMTAyIDQzIC0yMTMgNDMgWk0xNTYzIDMxMjUgcS04NiAwIC0xNTggLTQzIHEtNzEgLTQxIC0xMTIgLTExMiBxLTQzIC03MiAtNDMgLTE1Ny41IHEwIC04NS41IDQzIC0xNTcuNSBxNDEgLTcxIDExMiAtMTEyIHE3MiAtNDMgMTU4IC00MyBsNjI1IDAgbDAgLTE1NjIgbC02MjUgMCBxLTg2IDAgLTE1OCAtNDMgcS03MSAtNDEgLTExMiAtMTEyIHEtNDMgLTczIC00MyAtMTU4IHEwIC04NSA0MyAtMTU4IHE0MSAtNzEgMTEyIC0xMTIgcTcyIC00MyAxNTggLTQyIGwxODc1IDAgcTg1IDAgMTU3IDQyIHE3MSA0MSAxMTIgMTEyIHE0MyA3MyA0MyAxNTggcTAgODUgLTQzIDE1OCBxLTQxIDcxIC0xMTIgMTEyIHEtNzIgNDMgLTE1NyA0MyBsLTYyNSAwIGwwIDE4NzUgcTAgODUgLTQzIDE1NyBxLTQxIDcxIC0xMTIgMTEyIHEtNzMgNDMgLTE1OCA0MyBsLTkzNyAwIFoiIC8+PGdseXBoIGdseXBoLW5hbWU9Im1lbnUiIHVuaWNvZGU9IiYjeGVhMGE7IiBkPSJNNjI1IDQzNzUgbDAgLTYyNSBsMzc1MCAwIGwwIDYyNSBsLTM3NTAgMCBaTTYyNSAyODEzIGwwIC02MjUgbDM3NTAgMCBsMCA2MjUgbC0zNzUwIDAgWk02MjUgMTI1MCBsMCAtNjI1IGwzNzUwIDAgbDAgNjI1IGwtMzc1MCAwIFoiIC8+PGdseXBoIGdseXBoLW5hbWU9Im1vcmUiIHVuaWNvZGU9IiYjeGVhMGI7IiBkPSJNNzgxIDMwNDcgcTExMiAwIDIxMyAtNDMgcTk4IC00MiAxNzQgLTExNy41IHE3NiAtNzUuNSAxMTcgLTE3My41IHE0MyAtMTAyIDQzIC0yMTMgcTAgLTExMSAtNDMgLTIxMyBxLTQxIC05OCAtMTE3IC0xNzMuNSBxLTc2IC03NS41IC0xNzQgLTExNy41IHEtMTAxIC00MyAtMjEyLjUgLTQzIHEtMTExLjUgMCAtMjEzLjUgNDMgcS05OCA0MiAtMTczLjUgMTE3LjUgcS03NS41IDc1LjUgLTExNy41IDE3My41IHEtNDMgMTAyIC00MyAyMTMgcTAgMTExIDQzIDIxMyBxNDIgOTggMTE3LjUgMTczLjUgcTc1LjUgNzUuNSAxNzMuNSAxMTcuNSBxMTAyIDQzIDIxMyA0MyBaTTI1MDAgMzA0NyBxMTExIDAgMjEzIC00MyBxOTggLTQyIDE3My41IC0xMTcuNSBxNzUuNSAtNzUuNSAxMTcuNSAtMTczLjUgcTQzIC0xMDIgNDMgLTIxMyBxMCAtMTExIC00MyAtMjEzIHEtNDIgLTk4IC0xMTcuNSAtMTczLjUgcS03NS41IC03NS41IC0xNzMuNSAtMTE3LjUgcS0xMDIgLTQzIC0yMTMgLTQzIHEtMTExIDAgLTIxMyA0MyBxLTk4IDQyIC0xNzMuNSAxMTcuNSBxLTc1LjUgNzUuNSAtMTE3LjUgMTczLjUgcS00MyAxMDIgLTQzIDIxMyBxMCAxMTEgNDMgMjEzIHE0MiA5OCAxMTcuNSAxNzMuNSBxNzUuNSA3NS41IDE3My41IDExNy41IHExMDIgNDMgMjEzIDQzIFpNNDIxOSAzMDQ3IHExMTEgMCAyMTMgLTQzIHE5OCAtNDIgMTczLjUgLTExNy41IHE3NS41IC03NS41IDExNy41IC0xNzMuNSBxNDMgLTEwMiA0MyAtMjEzIHEwIC0xMTEgLTQzIC0yMTMgcS00MiAtOTggLTExNy41IC0xNzMuNSBxLTc1LjUgLTc1LjUgLTE3My41IC0xMTcuNSBxLTEwMiAtNDMgLTIxMy41IC00MyBxLTExMS41IDAgLTIxMi41IDQzIHEtOTggNDIgLTE3NCAxMTcuNSBxLTc2IDc1LjUgLTExNyAxNzMuNSBxLTQzIDEwMiAtNDMgMjEzIHEwIDExMSA0MyAyMTMgcTQxIDk4IDExNyAxNzMuNSBxNzYgNzUuNSAxNzQgMTE3LjUgcTEwMSA0MyAyMTMgNDMgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0icGF1c2UiIHVuaWNvZGU9IiYjeGVhMGM7IiBkPSJNOTM4IDQwNjMgbDAgLTMxMjUgbDEyNTAgMCBsMCAzMTI1IGwtMTI1MCAwIFpNMjgxMyA0MDYzIGwwIC0zMTI1IGwxMjUwIDAgbDAgMzEyNSBsLTEyNTAgMCBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJwbGF5IiB1bmljb2RlPSImI3hlYTBkOyIgZD0iTTYyNSA0Mzc1IGwzNzUwIC0xODc1IGwtMzc1MCAtMTg3NSBsMCAzNzUwIFoiIC8+PGdseXBoIGdseXBoLW5hbWU9InRyaWFuZ2xlLXMiIHVuaWNvZGU9IiYjeGVhMGU7IiBkPSJNMTI1MCAzMTI1IGwxMjUwIC0xMjUwIGwxMjUwIDEyNDggbC0yNTAwIDIgWiIgLz48L2ZvbnQ+PC9kZWZzPjwvc3ZnPg=="},12:function(e,t){e.exports=__webpack_require__(/*! core-js/modules/es.function.name */ "./node_modules/core-js/modules/es.function.name.js")},13:function(e,t,s){"use strict";s.r(t);var A=s(3);s(40);
  40. /**
  41. * @copyright Copyright (c) 2019 Julius Härtl <jus@bitgrid.net>
  42. *
  43. * @author Julius Härtl <jus@bitgrid.net>
  44. * @author John Molakvoæ <skjnldsv@protonmail.com>
  45. *
  46. * @license GNU AGPL version 3 or any later version
  47. *
  48. * This program is free software: you can redistribute it and/or modify
  49. * it under the terms of the GNU Affero General Public License as
  50. * published by the Free Software Foundation, either version 3 of the
  51. * License, or (at your option) any later version.
  52. *
  53. * This program is distributed in the hope that it will be useful,
  54. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  55. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  56. * GNU Affero General Public License for more details.
  57. *
  58. * You should have received a copy of the GNU Affero General Public License
  59. * along with this program. If not, see <http://www.gnu.org/licenses/>.
  60. *
  61. */
  62. A.VTooltip.options.defaultTemplate='<div class="vue-tooltip" role="tooltip" data-v-'.concat("e1f55ce",'><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>'),A.VTooltip.options.defaultHtml=!1,t.default=A.VTooltip},138:function(e,t){},14:function(e,t){e.exports=__webpack_require__(/*! v-click-outside */ "./node_modules/v-click-outside/dist/v-click-outside.umd.js")},15:function(e,t){e.exports=__webpack_require__(/*! core-js/modules/es.array.index-of */ "./node_modules/core-js/modules/es.array.index-of.js")},17:function(e,t,s){"use strict";s(4),s(21),s(23),s(30);t.a=function(e){return Math.random().toString(36).replace(/[^a-z]+/g,"").substr(0,e||5)}},178:function(e,t,s){"use strict";s.r(t);s(46),s(228),s(15),s(12),s(28);var A=s(5),n=s.n(A),a=s(38),o=s(105),r=s(32),i=function(e){return e&&"string"==typeof e&&""!==e.trim()&&-1===e.indexOf(" ")},c={name:"AppSidebar",components:{Actions:a.default},directives:{focus:o.default},mixins:[r.a],props:{active:{type:String,default:""},title:{type:String,default:"",required:!0},titleEditable:{type:Boolean,default:!1},titlePlaceholder:{type:String,default:""},subtitle:{type:String,default:""},background:{type:String,default:""},starred:{type:Boolean,default:null},starLoading:{type:Boolean,default:!1},compact:{type:Boolean,default:!1},forceMenu:{type:Boolean,default:!1}},data:function(){return{tabs:[],activeTab:"",isStarred:this.starred,children:[]}},computed:{canStar:function(){return null!==this.isStarred},hasFigure:function(){return this.$slots.header||this.background},hasMultipleTabs:function(){return this.tabs.length>1},hasFigureClickListener:function(){return this.$listeners["figure-click"]},currentTabIndex:function(){var e=this;return this.tabs.findIndex((function(t){return t.id===e.activeTab}))}},watch:{active:function(e){e!==this.activeTab&&this.updateActive()},starred:function(){this.isStarred=this.starred},children:function(){this.updateTabs()}},mounted:function(){this.updateTabs(),this.children=this.$children},methods:{closeSidebar:function(e){this.$emit("close",e)},onFigureClick:function(e){this.$emit("figure-click",e)},setActive:function(e){var t=e.target.closest("a").dataset.id;this.activeTab=t,this.$emit("update:active",t)},focusPreviousTab:function(){this.currentTabIndex>0&&(this.activeTab=this.tabs[this.currentTabIndex-1].id,this.$emit("update:active",this.activeTab)),this.focusActiveTab()},focusNextTab:function(){this.currentTabIndex<this.tabs.length-1&&(this.activeTab=this.tabs[this.currentTabIndex+1].id,this.$emit("update:active",this.activeTab)),this.focusActiveTab()},focusFirstTab:function(){this.activeTab=this.tabs[0].id,this.$emit("update:active",this.activeTab),this.focusActiveTab()},focusLastTab:function(){this.activeTab=this.tabs[this.tabs.length-1].id,this.$emit("update:active",this.activeTab),this.focusActiveTab()},focusActiveTab:function(){this.$el.querySelector("#"+this.activeTab).focus()},focusActiveTabContent:function(){this.$el.querySelector("#tab-"+this.activeTab).focus()},updateActive:function(){var e=this;this.activeTab=this.active&&-1!==this.tabs.findIndex((function(t){return t.id===e.active}))?this.active:this.tabs.length>0?this.tabs[0].id:""},toggleStarred:function(){this.isStarred=!this.isStarred,this.$emit("update:starred",this.isStarred)},updateTabs:function(){var e=this.$children.filter((function(e){return e.name&&"string"==typeof e.name&&i(e.id)&&i(e.icon)}));0!==e.length&&e.length!==this.$children.length&&n.a.util.warn("Mixing tabs and non-tab-content is not possible."),this.tabs=e.sort((function(e,t){var s=e.order||0,A=t.order||0;return s===A?OC.Util.naturalSortCompare(e.name,t.name):s-A})),this.tabs.length>0&&this.updateActive()},onTitleInput:function(e){this.$emit("input-title",e),this.$emit("update:title",e.target.value)},onSubmitTitle:function(e){this.$emit("submit-title",e)},onDismissEditing:function(){this.$emit("dismiss-editing")}}},l=(s(229),s(231),s(0)),m=s(138),g=s.n(m),u=Object(l.a)(c,(function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("transition",{attrs:{name:"slide-right"}},[s("aside",{attrs:{id:"app-sidebar"}},[s("header",{staticClass:"app-sidebar-header",class:{"app-sidebar-header--with-figure":e.hasFigure,"app-sidebar-header--compact":e.compact}},[s("a",{staticClass:"app-sidebar__close icon-close",attrs:{href:"#",title:e.t("close")},on:{click:function(t){return t.preventDefault(),e.closeSidebar(t)}}}),e._v(" "),e.hasFigure?s("div",{staticClass:"app-sidebar-header__figure",class:{"app-sidebar-header__figure--with-action":e.hasFigureClickListener},style:{backgroundImage:"url("+e.background+")"},on:{click:e.onFigureClick}},[e._t("header")],2):e._e(),e._v(" "),s("div",{staticClass:"app-sidebar-header__desc",class:{"app-sidebar-header__desc--with-star":e.canStar,"app-sidebar-header__desc--with-subtitle":e.subtitle&&!e.titleEditable,"app-sidebar-header__desc--editable":e.titleEditable&&!e.subtitle,"app-sidebar-header__desc--with-subtitle--editable":e.titleEditable&&e.subtitle}},[e.canStar?s("a",{staticClass:"app-sidebar-header__star",class:{"icon-starred":e.isStarred&&!e.starLoading,"icon-star":!e.isStarred&&!e.starLoading,"icon-loading-small":e.starLoading},on:{click:function(t){return t.preventDefault(),e.toggleStarred(t)}}}):e._e(),e._v(" "),e.titleEditable?e._e():s("h2",{staticClass:"app-sidebar-header__title"},[e._v("\n\t\t\t\t\t"+e._s(e.title)+"\n\t\t\t\t")]),e._v(" "),e.titleEditable?[s("form",{staticClass:"rename-form",on:{submit:function(t){return t.preventDefault(),e.onSubmitTitle(t)}}},[s("input",{directives:[{name:"focus",rawName:"v-focus"}],staticClass:"app-sidebar-header__title-input",attrs:{type:"text",placeholder:e.titlePlaceholder},domProps:{value:e.title},on:{keydown:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])?null:e.onDismissEditing(t)},input:e.onTitleInput}}),e._v(" "),s("button",{staticClass:"icon-confirm",attrs:{type:"submit"}})])]:e._e(),e._v(" "),""!==e.subtitle.trim()?s("p",{staticClass:"app-sidebar-header__subtitle"},[e._v("\n\t\t\t\t\t"+e._s(e.subtitle)+"\n\t\t\t\t")]):e._e(),e._v(" "),e.$slots["secondary-actions"]?s("Actions",{staticClass:"app-sidebar-header__menu",attrs:{"force-menu":e.forceMenu}},[e._t("secondary-actions")],2):e._e()],2),e._v(" "),e.$slots["primary-actions"]?s("div",{staticClass:"app-sidebar-header__action"},[e._t("primary-actions")],2):e._e()]),e._v(" "),e.hasMultipleTabs?s("nav",{staticClass:"app-sidebar-tabs__nav",on:{keydown:[function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"left",37,t.key,["Left","ArrowLeft"])?null:"button"in t&&0!==t.button?null:t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:(t.preventDefault(),e.focusPreviousTab(t))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"right",39,t.key,["Right","ArrowRight"])?null:"button"in t&&2!==t.button?null:t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:(t.preventDefault(),e.focusNextTab(t))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"tab",9,t.key,"Tab")?null:t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:(t.preventDefault(),e.focusActiveTabContent(t))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"page-up",void 0,t.key,void 0)?null:t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:(t.preventDefault(),e.focusFirstTab(t))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"page-down",void 0,t.key,void 0)?null:t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:(t.preventDefault(),e.focusLastTab(t))}]}},[s("ul",e._l(e.tabs,(function(t){return s("li",{key:t.id,staticClass:"app-sidebar-tabs__tab"},[s("a",{class:{active:e.activeTab===t.id},attrs:{id:t.id,"aria-controls":"tab-"+t.id,"aria-selected":e.activeTab===t.id,"data-id":t.id,href:"#tab-"+t.id,tabindex:e.activeTab===t.id?null:-1,role:"tab"},on:{click:function(t){return t.preventDefault(),e.setActive(t)}}},[s("span",{staticClass:"app-sidebar-tabs__tab-icon",class:t.icon}),e._v("\n\t\t\t\t\t\t"+e._s(t.name)+"\n\t\t\t\t\t")])])})),0)]):e._e(),e._v(" "),s("div",{staticClass:"app-sidebar-tabs__content",class:{"app-sidebar-tabs__content--multiple":e.hasMultipleTabs}},[e._t("default",null,{activeTab:e.activeTab})],2)])])}),[],!1,null,"1059746a",null);"function"==typeof g.a&&g()(u);var d=u.exports;
  63. /*
  64. * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
  65. *
  66. * @author 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
  67. *
  68. * @license GNU AGPL version 3 or any later version
  69. *
  70. * This program is free software: you can redistribute it and/or modify
  71. * it under the terms of the GNU Affero General Public License as
  72. * published by the Free Software Foundation, either version 3 of the
  73. * License, or (at your option) any later version.
  74. *
  75. * This program is distributed in the hope that it will be useful,
  76. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  77. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  78. * GNU Affero General Public License for more details.
  79. *
  80. * You should have received a copy of the GNU Affero General Public License
  81. * along with this program. If not, see <http://www.gnu.org/licenses/>.
  82. */t.default=d},2:function(e,t,s){"use strict";function A(e,t){for(var s=[],A={},n=0;n<t.length;n++){var a=t[n],o=a[0],r={id:e+":"+n,css:a[1],media:a[2],sourceMap:a[3]};A[o]?A[o].parts.push(r):s.push(A[o]={id:o,parts:[r]})}return s}s.r(t),s.d(t,"default",(function(){return u}));var n="undefined"!=typeof document;if("undefined"!=typeof DEBUG&&DEBUG&&!n)throw new Error("vue-style-loader cannot be used in a non-browser environment. Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.");var a={},o=n&&(document.head||document.getElementsByTagName("head")[0]),r=null,i=0,c=!1,l=function(){},m=null,g="undefined"!=typeof navigator&&/msie [6-9]\b/.test(navigator.userAgent.toLowerCase());function u(e,t,s,n){c=s,m=n||{};var o=A(e,t);return d(o),function(t){for(var s=[],n=0;n<o.length;n++){var r=o[n];(i=a[r.id]).refs--,s.push(i)}t?d(o=A(e,t)):o=[];for(n=0;n<s.length;n++){var i;if(0===(i=s[n]).refs){for(var c=0;c<i.parts.length;c++)i.parts[c]();delete a[i.id]}}}}function d(e){for(var t=0;t<e.length;t++){var s=e[t],A=a[s.id];if(A){A.refs++;for(var n=0;n<A.parts.length;n++)A.parts[n](s.parts[n]);for(;n<s.parts.length;n++)A.parts.push(f(s.parts[n]));A.parts.length>s.parts.length&&(A.parts.length=s.parts.length)}else{var o=[];for(n=0;n<s.parts.length;n++)o.push(f(s.parts[n]));a[s.id]={id:s.id,refs:1,parts:o}}}}function p(){var e=document.createElement("style");return e.type="text/css",o.appendChild(e),e}function f(e){var t,s,A=document.querySelector('style[data-vue-ssr-id~="'+e.id+'"]');if(A){if(c)return l;A.parentNode.removeChild(A)}if(g){var n=i++;A=r||(r=p()),t=M.bind(null,A,n,!1),s=M.bind(null,A,n,!0)}else A=p(),t=b.bind(null,A),s=function(){A.parentNode.removeChild(A)};return t(e),function(A){if(A){if(A.css===e.css&&A.media===e.media&&A.sourceMap===e.sourceMap)return;t(e=A)}else s()}}var h,v=(h=[],function(e,t){return h[e]=t,h.filter(Boolean).join("\n")});function M(e,t,s,A){var n=s?"":A.css;if(e.styleSheet)e.styleSheet.cssText=v(t,n);else{var a=document.createTextNode(n),o=e.childNodes;o[t]&&e.removeChild(o[t]),o.length?e.insertBefore(a,o[t]):e.appendChild(a)}}function b(e,t){var s=t.css,A=t.media,n=t.sourceMap;if(A&&e.setAttribute("media",A),m.ssrId&&e.setAttribute("data-vue-ssr-id",t.id),n&&(s+="\n/*# sourceURL="+n.sources[0]+" */",s+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(n))))+" */"),e.styleSheet)e.styleSheet.cssText=s;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(s))}}},21:function(e,t){e.exports=__webpack_require__(/*! core-js/modules/es.regexp.exec */ "./node_modules/core-js/modules/es.regexp.exec.js")},22:function(e,t){e.exports=__webpack_require__(/*! core-js/modules/es.array.map */ "./node_modules/core-js/modules/es.array.map.js")},228:function(e,t){e.exports=__webpack_require__(/*! core-js/modules/es.array.find-index */ "./node_modules/core-js/modules/es.array.find-index.js")},229:function(e,t,s){"use strict";var A=s(106);s.n(A).a},23:function(e,t){e.exports=__webpack_require__(/*! core-js/modules/es.regexp.to-string */ "./node_modules/core-js/modules/es.regexp.to-string.js")},230:function(e,t,s){(t=s(1)(!1)).push([e.i,"#app-sidebar[data-v-1059746a]{z-index:1500;height:calc(100vh - 50px);width:27vw;min-width:300px;max-width:500px;top:50px;right:0;display:flex;flex-shrink:0;flex-direction:column;position:-webkit-sticky;position:sticky;overflow-y:auto;overflow-x:hidden;background:var(--color-main-background);border-left:1px solid var(--color-border)}#app-sidebar .app-sidebar-header>.app-sidebar__close[data-v-1059746a]{position:absolute;width:44px;height:44px;top:6px;right:6px;z-index:100;opacity:.7;border-radius:22px}#app-sidebar .app-sidebar-header>.app-sidebar__close[data-v-1059746a]:hover,#app-sidebar .app-sidebar-header>.app-sidebar__close[data-v-1059746a]:active,#app-sidebar .app-sidebar-header>.app-sidebar__close[data-v-1059746a]:focus{opacity:1;background-color:rgba(127,127,127,0.25)}#app-sidebar .app-sidebar-header__figure[data-v-1059746a]{max-height:250px;height:250px;width:100%;background-size:contain;background-position:center;background-repeat:no-repeat}#app-sidebar .app-sidebar-header__figure--with-action[data-v-1059746a]{cursor:pointer}#app-sidebar .app-sidebar-header__desc[data-v-1059746a]{position:relative;padding:18px 106px 18px 9px;display:flex;flex-direction:column;justify-content:center;box-sizing:content-box}#app-sidebar .app-sidebar-header__desc .app-sidebar-header__title[data-v-1059746a],#app-sidebar .app-sidebar-header__desc .app-sidebar-header__subtitle[data-v-1059746a]{width:100%;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;margin:0}#app-sidebar .app-sidebar-header__desc .app-sidebar-header__title[data-v-1059746a]{padding:0;font-size:20px;line-height:30px}#app-sidebar .app-sidebar-header__desc input.app-sidebar-header__title-input[data-v-1059746a]{font-size:16px;padding:7px;width:100%;margin:0}#app-sidebar .app-sidebar-header__desc .app-sidebar-header__subtitle[data-v-1059746a]{font-size:14px;padding:0;opacity:.7}#app-sidebar .app-sidebar-header__desc .app-sidebar-header__star[data-v-1059746a]{display:block;width:44px;height:44px;padding:14px;position:absolute;left:0}#app-sidebar .app-sidebar-header__desc .app-sidebar-header__menu[data-v-1059746a]{position:absolute;right:22px;background-color:rgba(127,127,127,0.25);border-radius:22px}#app-sidebar .app-sidebar-header__desc--with-star[data-v-1059746a]{padding-left:44px}#app-sidebar .app-sidebar-header__desc--with-subtitle[data-v-1059746a]{justify-content:space-between;height:52px}#app-sidebar .app-sidebar-header__desc--editable[data-v-1059746a]{height:39px}#app-sidebar .app-sidebar-header__desc--with-subtitle--editable[data-v-1059746a]{height:78px}#app-sidebar .app-sidebar-header__desc--with-subtitle--editable .app-sidebar-header__subtitle[data-v-1059746a]{margin-left:7px}#app-sidebar .app-sidebar-header__desc--with-subtitle--editable .app-sidebar-header__title-input[data-v-1059746a]{margin-top:-16px}#app-sidebar .app-sidebar-header--with-figure .app-sidebar-header__desc[data-v-1059746a]{padding-right:88px}#app-sidebar .app-sidebar-header:not(.app-sidebar-header--with-figure) .app-sidebar-header__menu[data-v-1059746a]{top:6px;right:56px}#app-sidebar .app-sidebar-header__action[data-v-1059746a]{display:flex;margin:0 10px;max-height:50px;align-items:center}#app-sidebar .app-sidebar-header--compact .app-sidebar-header__figure[data-v-1059746a]{height:70px;width:70px;margin:9px;border-radius:3px;position:absolute;left:0;top:0;z-index:2}#app-sidebar .app-sidebar-header--compact .app-sidebar-header__desc[data-v-1059746a]{padding-left:44px;margin-left:46px;height:52px}#app-sidebar .app-sidebar-header--compact .app-sidebar-header__desc .app-sidebar-header__star[data-v-1059746a]{margin-top:-9px;z-index:3}#app-sidebar .app-sidebar-header--compact .app-sidebar-header__desc .app-sidebar-header__menu[data-v-1059746a]{right:50px;top:6px;margin:0;background-color:transparent}#app-sidebar .app-sidebar-header--compact .app-sidebar-header__desc--editable[data-v-1059746a]{padding-top:0}#app-sidebar .app-sidebar-header--compact .app-sidebar-header__desc--editable input.app-sidebar-header__title-input[data-v-1059746a]{margin-top:0}#app-sidebar .app-sidebar-tabs__nav[data-v-1059746a]{margin-top:10px}#app-sidebar .app-sidebar-tabs__nav ul[data-v-1059746a]{display:flex;justify-content:stretch}#app-sidebar .app-sidebar-tabs__tab[data-v-1059746a]{display:block;text-align:center;flex:1 1}#app-sidebar .app-sidebar-tabs__tab a[data-v-1059746a]{display:block;padding-top:25px;padding-bottom:5px;position:relative;border-bottom:1px solid var(--color-border);text-align:center;opacity:.7;color:var(--color-main-text);transition:color var(--animation-quick),opacity var(--animation-quick),border-color var(--animation-quick)}#app-sidebar .app-sidebar-tabs__tab a[data-v-1059746a]:hover,#app-sidebar .app-sidebar-tabs__tab a[data-v-1059746a]:focus,#app-sidebar .app-sidebar-tabs__tab a[data-v-1059746a]:active,#app-sidebar .app-sidebar-tabs__tab a.active[data-v-1059746a]{opacity:1}#app-sidebar .app-sidebar-tabs__tab a:hover .app-sidebar-tabs__tab-icon[data-v-1059746a],#app-sidebar .app-sidebar-tabs__tab a:focus .app-sidebar-tabs__tab-icon[data-v-1059746a],#app-sidebar .app-sidebar-tabs__tab a:active .app-sidebar-tabs__tab-icon[data-v-1059746a],#app-sidebar .app-sidebar-tabs__tab a.active .app-sidebar-tabs__tab-icon[data-v-1059746a]{opacity:1}#app-sidebar .app-sidebar-tabs__tab a[data-v-1059746a]:not(.active):hover,#app-sidebar .app-sidebar-tabs__tab a[data-v-1059746a]:not(.active):focus{box-shadow:inset 0 -1px 0 var(--color-background-darker);border-bottom-color:var(--color-background-darker)}#app-sidebar .app-sidebar-tabs__tab a.active[data-v-1059746a]{font-weight:bold;color:var(--color-text-light);border-bottom-color:var(--color-text-light);box-shadow:inset 0 -1px 0 var(--color-text-light)}#app-sidebar .app-sidebar-tabs__tab a[data-v-1059746a]:focus{border-bottom-color:var(--color-primary-element);box-shadow:inset 0 -1px 0 var(--color-primary-element)}#app-sidebar .app-sidebar-tabs__tab-icon[data-v-1059746a]{height:25px;width:100%;position:absolute;top:0;left:0;opacity:.7;background-position:center 8px;background-size:16px;transition:opacity var(--animation-quick)}#app-sidebar .app-sidebar-tabs__content[data-v-1059746a]{position:relative;flex:1 1 100%}#app-sidebar .app-sidebar-tabs__content--multiple[data-v-1059746a]>:not(section){display:none}.slide-right-leave-active[data-v-1059746a],.slide-right-enter-active[data-v-1059746a]{transition-duration:var(--animation-quick);transition-property:max-width, min-width}.slide-right-enter-to[data-v-1059746a],.slide-right-leave[data-v-1059746a]{min-width:300px;max-width:500px}.slide-right-enter[data-v-1059746a],.slide-right-leave-to[data-v-1059746a]{min-width:0 !important;max-width:0 !important}.fade-leave-active[data-v-1059746a],.fade-enter-active[data-v-1059746a]{transition-duration:var(--animation-quick);transition-property:opacity;position:absolute;top:0;left:0;width:100%;opacity:1}.fade-enter[data-v-1059746a],.fade-leave-to[data-v-1059746a]{opacity:0}.rename-form[data-v-1059746a]{display:flex}.rename-form .icon-confirm[data-v-1059746a]{margin:0}\n",""]),e.exports=t},231:function(e,t,s){"use strict";var A=s(107);s.n(A).a},232:function(e,t,s){(t=s(1)(!1)).push([e.i,".app-sidebar-header__action button,.app-sidebar-header__action .button,.app-sidebar-header__action input[type='button'],.app-sidebar-header__action input[type='submit'],.app-sidebar-header__action input[type='reset']{padding:6px 22px}\n",""]),e.exports=t},25:function(e,t){e.exports=__webpack_require__(/*! core-js/modules/es.array.concat */ "./node_modules/core-js/modules/es.array.concat.js")},27:function(e,t){e.exports=__webpack_require__(/*! @nextcloud/l10n/dist/gettext */ "./node_modules/@nextcloud/l10n/dist/gettext.js")},28:function(e,t){e.exports=__webpack_require__(/*! core-js/modules/es.string.trim */ "./node_modules/core-js/modules/es.string.trim.js")},29:function(e,t,s){var A=s(67);"string"==typeof A&&(A=[[e.i,A,""]]),A.locals&&(e.exports=A.locals);(0,s(2).default)("640a212a",A,!0,{})},3:function(e,t){e.exports=__webpack_require__(/*! v-tooltip */ "./node_modules/v-tooltip/dist/v-tooltip.esm.js")},30:function(e,t){e.exports=__webpack_require__(/*! core-js/modules/es.string.replace */ "./node_modules/core-js/modules/es.string.replace.js")},31:function(e,t,s){"use strict";s(25),s(15),s(65),s(12);var A=s(5),n=s.n(A);t.a=function(e,t,s){if(void 0!==e)for(var A=e.length-1;A>=0;A--){var a=e[A],o=!a.componentOptions&&a.tag&&-1===t.indexOf(a.tag),r=!!a.componentOptions&&"string"==typeof a.componentOptions.tag,i=r&&-1===t.indexOf(a.componentOptions.tag);(o||!r||i)&&((o||i)&&n.a.util.warn("".concat(o?a.tag:a.componentOptions.tag," is not allowed inside the ").concat(s.$options.name," component"),s),e.splice(A,1))}}},32:function(e,t,s){"use strict";var A=s(6);t.a={methods:{n:A.a,t:A.b}}},37:function(e,t){},38:function(e,t,s){"use strict";s.r(t);var A=s(43);
  83. /**
  84. * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>
  85. *
  86. * @author John Molakvoæ <skjnldsv@protonmail.com>
  87. *
  88. * @license GNU AGPL version 3 or any later version
  89. *
  90. * This program is free software: you can redistribute it and/or modify
  91. * it under the terms of the GNU Affero General Public License as
  92. * published by the Free Software Foundation, either version 3 of the
  93. * License, or (at your option) any later version.
  94. *
  95. * This program is distributed in the hope that it will be useful,
  96. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  97. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  98. * GNU Affero General Public License for more details.
  99. *
  100. * You should have received a copy of the GNU Affero General Public License
  101. * along with this program. If not, see <http://www.gnu.org/licenses/>.
  102. *
  103. */t.default=A.a},4:function(e,t){e.exports=__webpack_require__(/*! core-js/modules/es.object.to-string */ "./node_modules/core-js/modules/es.object.to-string.js")},40:function(e,t,s){var A=s(41);"string"==typeof A&&(A=[[e.i,A,""]]),A.locals&&(e.exports=A.locals);(0,s(2).default)("941c791e",A,!0,{})},41:function(e,t,s){(t=s(1)(!1)).push([e.i,".vue-tooltip[data-v-e1f55ce]{position:absolute;z-index:100000;right:auto;left:auto;display:block;margin:0;margin-top:-3px;padding:10px 0;text-align:left;text-align:start;white-space:normal;text-decoration:none;letter-spacing:normal;word-spacing:normal;text-transform:none;word-wrap:normal;word-break:normal;opacity:0;text-shadow:none;font-family:'Nunito', 'Open Sans', Frutiger, Calibri, 'Myriad Pro', Myriad, sans-serif;font-size:12px;font-weight:normal;font-style:normal;line-height:1.6;line-break:auto;filter:drop-shadow(0 1px 10px var(--color-box-shadow))}.vue-tooltip[data-v-e1f55ce][x-placement^='top'] .tooltip-arrow{bottom:0;margin-top:0;margin-bottom:0;border-width:10px 10px 0 10px;border-right-color:transparent;border-bottom-color:transparent;border-left-color:transparent}.vue-tooltip[data-v-e1f55ce][x-placement^='bottom'] .tooltip-arrow{top:0;margin-top:0;margin-bottom:0;border-width:0 10px 10px 10px;border-top-color:transparent;border-right-color:transparent;border-left-color:transparent}.vue-tooltip[data-v-e1f55ce][x-placement^='right'] .tooltip-arrow{right:100%;margin-right:0;margin-left:0;border-width:10px 10px 10px 0;border-top-color:transparent;border-bottom-color:transparent;border-left-color:transparent}.vue-tooltip[data-v-e1f55ce][x-placement^='left'] .tooltip-arrow{left:100%;margin-right:0;margin-left:0;border-width:10px 0 10px 10px;border-top-color:transparent;border-right-color:transparent;border-bottom-color:transparent}.vue-tooltip[data-v-e1f55ce][aria-hidden='true']{visibility:hidden;transition:opacity .15s, visibility .15s;opacity:0}.vue-tooltip[data-v-e1f55ce][aria-hidden='false']{visibility:visible;transition:opacity .15s;opacity:1}.vue-tooltip[data-v-e1f55ce] .tooltip-inner{max-width:350px;padding:5px 8px;text-align:center;color:var(--color-main-text);border-radius:var(--border-radius);background-color:var(--color-main-background)}.vue-tooltip[data-v-e1f55ce] .tooltip-arrow{position:absolute;z-index:1;width:0;height:0;margin:0;border-style:solid;border-color:var(--color-main-background)}\n",""]),e.exports=t},43:function(e,t,s){"use strict";s(25),s(46),s(15);var A=s(14),n=s(13),a=s(17),o=(s(64),function(e){var t=e.getBoundingClientRect(),s=document.documentElement.clientHeight,A=document.documentElement.clientWidth,n=Object.assign({});return n.top=t.top<0,n.left=t.left<0,n.bottom=t.bottom>s,n.right=t.right>A,n.any=n.top||n.left||n.bottom||n.right,n.all=n.top&&n.left&&n.bottom&&n.right,n.offsetY=n.top?t.top:n.bottom?t.bottom-s:0,n.offsetX=n.left?t.left:n.right?t.right-A:0,n}),r=s(31),i=s(6),c=["ActionButton","ActionCheckbox","ActionInput","ActionLink","ActionRadio","ActionRouter","ActionSeparator","ActionText","ActionTextEditable"],l={name:"Actions",directives:{ClickOutside:A.directive,tooltip:n.default},props:{open:{type:Boolean,default:!1},forceMenu:{type:Boolean,default:!1},menuAlign:{type:String,default:"center",validator:function(e){return["left","center","right"].indexOf(e)>-1}},defaultIcon:{type:String,default:"action-item__menutoggle--default-icon"},ariaLabel:{type:String,default:Object(i.b)("Actions")}},data:function(){return{actions:[],opened:this.open,focusIndex:0,randomId:"menu-"+Object(a.a)(),offsetX:0,offsetY:0,offsetYArrow:0,rotateArrow:!1,children:this.$children}},computed:{hasMultipleActions:function(){return this.actions.length>1},isValidSingleAction:function(){return 1===this.actions.length&&null!==this.firstActionElement},firstActionVNode:function(){return this.actions[0]},firstAction:function(){return this.children[0]?this.children[0]:{}},firstActionBinding:function(){if(this.firstActionVNode&&this.firstActionVNode.componentOptions){var e=this.firstActionVNode.componentOptions.tag;if("ActionLink"===e)return{is:"a",href:this.firstAction.href,target:this.firstAction.target,"aria-label":this.firstAction.ariaLabel};if("ActionRouter"===e)return{is:"router-link",to:this.firstAction.to,exact:this.firstAction.exact,"aria-label":this.firstAction.ariaLabel};if("ActionButton"===e)return{is:"button","aria-label":this.firstAction.ariaLabel}}return null},firstActionEvent:function(){return this.firstActionVNode&&this.firstActionVNode.componentOptions&&this.firstActionVNode.componentOptions.listeners&&this.firstActionVNode.componentOptions.listeners.click},firstActionEventBinding:function(){return this.firstActionEvent?"click":null},firstActionClass:function(){var e=this.firstActionVNode&&this.firstActionVNode.data.staticClass,t=this.firstActionVNode&&this.firstActionVNode.data.class;return"".concat(e," ").concat(t)}},watch:{open:function(e){var t=this;this.opened=e,this.opened&&this.$nextTick((function(){t.onOpen()}))}},beforeMount:function(){this.initActions(),Object(r.a)(this.$slots.default,c,this)},beforeUpdate:function(){this.initActions(),Object(r.a)(this.$slots.default,c,this)},methods:{toggleMenu:function(e){var t=this;this.opened=!this.opened,this.opened?(this.$nextTick((function(){t.onOpen(),t.focusFirstAction()})),this.$emit("open",e)):(this.offsetX=0,this.offsetY=0,this.offsetYArrow=0,this.rotateArrow=!1),this.$emit("update:open",this.opened)},closeMenu:function(e){this.opened&&(this.$emit("update:open",!1),this.$emit("close",e)),this.opened=!1,this.offsetX=0,this.offsetY=0,this.offsetYArrow=0,this.rotateArrow=!1},onOpen:function(){if(this.offsetX=0,this.offsetY=0,this.offsetYArrow=0,this.rotateArrow=!1,"center"===this.menuAlign){var e=o(this.$refs.menu);(e.left||e.right)&&(this.offsetX=e.offsetX>0?Math.round(e.offsetX)+5:Math.round(e.offsetX)-5),e.bottom&&(this.offsetY=0-Math.round(this.$refs.menu.clientHeight)-42,this.offsetYArrow=Math.round(this.$refs.menu.clientHeight)+18,this.rotateArrow=!0)}},onMouseFocusAction:function(e){if(document.activeElement!==e.target){var t=e.target.closest("li");if(t){var s=t.querySelector(".focusable");if(s){var A=this.$refs.menu.querySelectorAll(".focusable"),n=Array.prototype.indexOf.call(A,s);n>-1&&(this.focusIndex=n,this.focusAction())}}}},removeCurrentActive:function(){var e=this.$refs.menu.querySelector("li.active");e&&e.classList.remove("active")},focusAction:function(){var e=this.$refs.menu.querySelectorAll(".focusable")[this.focusIndex];if(e){var t=e.closest("li");e.focus(),t&&(this.removeCurrentActive(),t.classList.add("active"))}},focusPreviousAction:function(){this.focusIndex=Math.max(this.focusIndex-1,0),this.focusAction()},focusNextAction:function(){this.focusIndex=Math.min(this.focusIndex+1,this.$refs.menu.querySelectorAll(".focusable").length-1),this.focusAction()},focusFirstAction:function(){this.focusIndex=0,this.focusAction()},focusLastAction:function(){this.focusIndex=this.$el.querySelectorAll(".focusable").length-1,this.focusAction()},execFirstAction:function(e){this.firstActionEvent&&this.firstActionEvent(e)},initActions:function(){this.actions=(this.$slots.default||[]).filter((function(e){return!!e&&!!e.componentOptions}))}}},m=(s(66),s(0)),g=s(37),u=s.n(g),d=Object(m.a)(l,(function(){var e=this,t=e.$createElement,s=e._self._c||t;return e.isValidSingleAction&&!e.forceMenu?s("element",e._b({directives:[{name:"tooltip",rawName:"v-tooltip.auto",value:e.firstAction.text,expression:"firstAction.text",modifiers:{auto:!0}}],staticClass:"action-item action-item--single",class:[e.firstAction.icon,e.firstActionClass],attrs:{rel:"noreferrer noopener"},on:e._d({},[e.firstActionEventBinding,e.execFirstAction])},"element",e.firstActionBinding,!1),[s("span",{attrs:{"aria-hidden":!0,hidden:""}},[e._t("default")],2)]):s("div",{directives:[{name:"show",rawName:"v-show",value:e.hasMultipleActions||e.forceMenu,expression:"hasMultipleActions || forceMenu"},{name:"click-outside",rawName:"v-click-outside",value:e.closeMenu,expression:"closeMenu"}],staticClass:"action-item",class:{"action-item--open":e.opened},on:{keydown:[function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"up",38,t.key,["Up","ArrowUp"])?null:t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:(t.preventDefault(),e.focusPreviousAction(t))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"down",40,t.key,["Down","ArrowDown"])?null:t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:(t.preventDefault(),e.focusNextAction(t))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"tab",9,t.key,"Tab")?null:t.shiftKey?(t.preventDefault(),e.focusPreviousAction(t)):null},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"page-up",void 0,t.key,void 0)?null:t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:(t.preventDefault(),e.focusFirstAction(t))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"page-down",void 0,t.key,void 0)?null:t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:(t.preventDefault(),e.focusLastAction(t))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])?null:t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:(t.preventDefault(),e.closeMenu(t))}]}},[s("a",{staticClass:"icon action-item__menutoggle",class:e.defaultIcon,attrs:{href:"#","aria-label":e.ariaLabel,"aria-haspopup":"true","aria-controls":e.randomId,"aria-expanded":e.opened},on:{click:function(t){return t.preventDefault(),e.toggleMenu(t)},keydown:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"space",32,t.key,[" ","Spacebar"])?null:t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:(t.preventDefault(),e.toggleMenu(t))}}}),e._v(" "),s("div",{directives:[{name:"show",rawName:"v-show",value:e.opened,expression:"opened"}],ref:"menu",staticClass:"action-item__menu",class:["menu-"+e.menuAlign,{open:e.opened}],style:{marginRight:e.offsetX+"px",marginTop:e.offsetY+"px"},attrs:{tabindex:"-1"},on:{mousemove:e.onMouseFocusAction}},[s("div",{staticClass:"action-item__menu_arrow",style:{transform:"translateX("+e.offsetX+"px) translateY("+e.offsetYArrow+"px) "+(e.rotateArrow?" rotate(180deg)":"")}}),e._v(" "),s("ul",{attrs:{id:e.randomId,tabindex:"-1"}},[e.opened?[e._t("default")]:e._e()],2)])])}),[],!1,null,"7b368b0c",null);"function"==typeof u.a&&u()(d);t.a=d.exports},46:function(e,t){e.exports=__webpack_require__(/*! core-js/modules/es.array.filter */ "./node_modules/core-js/modules/es.array.filter.js")},5:function(e,t){e.exports=__webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.runtime.esm.js")},6:function(e,t,s){"use strict";s.d(t,"b",(function(){return r})),s.d(t,"a",(function(){return o}));s(22);var A=s(27),n=Object(A.getGettextBuilder)().detectLocale();[{locale:"cs_CZ",json:{charset:"utf-8",headers:{"Last-Translator":"Pavel Borecki <pavel.borecki@gmail.com>, 2020","Language-Team":"Czech (Czech Republic) (https://www.transifex.com/nextcloud/teams/64236/cs_CZ/)","Content-Type":"text/plain; charset=UTF-8",Language:"cs_CZ","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nPavel Borecki <pavel.borecki@gmail.com>, 2020\n"},msgstr:["Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2020\nLanguage-Team: Czech (Czech Republic) (https://www.transifex.com/nextcloud/teams/64236/cs_CZ/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cs_CZ\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"]},"{tag} (invisible)":{msgid:"{tag} (invisible)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:170"},msgstr:["{tag} (neviditelný)"]},"{tag} (restricted)":{msgid:"{tag} (restricted)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:173"},msgstr:["{tag} (omezený)"]},Actions:{msgid:"Actions",comments:{reference:"src/components/Actions/Actions.vue:194"},msgstr:["Akce"]},Choose:{msgid:"Choose",comments:{reference:"src/components/ColorPicker/ColorPicker.vue:145"},msgstr:["Zvolit"]},Close:{msgid:"Close",comments:{reference:"src/components/Modal/Modal.vue:117"},msgstr:["Zavřít"]},Next:{msgid:"Next",comments:{reference:"src/components/Modal/Modal.vue:166"},msgstr:["Následující"]},"No results":{msgid:"No results",comments:{reference:"src/components/Multiselect/Multiselect.vue:172\nsrc/components/MultiselectTags/MultiselectTags.vue:78"},msgstr:["Žádné výsledky"]},"Pause slideshow":{msgid:"Pause slideshow",comments:{reference:"src/components/Modal/Modal.vue:302"},msgstr:["Pozastavit prezentaci"]},Previous:{msgid:"Previous",comments:{reference:"src/components/Modal/Modal.vue:144"},msgstr:["Předchozí"]},"Select a tag":{msgid:"Select a tag",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:100"},msgstr:["Vybrat štítek"]},Settings:{msgid:"Settings",comments:{reference:"src/components/AppNavigationSettings/AppNavigationSettings.vue:53"},msgstr:["Nastavení"]},"Start slideshow":{msgid:"Start slideshow",comments:{reference:"src/components/Modal/Modal.vue:302"},msgstr:["Spustit prezentaci"]}}}}},{locale:"de",json:{charset:"utf-8",headers:{"Last-Translator":"Philipp Fischbeck <pfischbeck@googlemail.com>, 2020","Language-Team":"German (https://www.transifex.com/nextcloud/teams/64236/de/)","Content-Type":"text/plain; charset=UTF-8",Language:"de","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nMark Ziegler <mark.ziegler@rakekniven.de>, 2020\nPhilipp Fischbeck <pfischbeck@googlemail.com>, 2020\n"},msgstr:["Last-Translator: Philipp Fischbeck <pfischbeck@googlemail.com>, 2020\nLanguage-Team: German (https://www.transifex.com/nextcloud/teams/64236/de/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: de\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{tag} (invisible)":{msgid:"{tag} (invisible)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:170"},msgstr:["{tag} (unsichtbar)"]},"{tag} (restricted)":{msgid:"{tag} (restricted)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:173"},msgstr:["{tag} (eingeschränkt)"]},Actions:{msgid:"Actions",comments:{reference:"src/components/Actions/Actions.vue:194"},msgstr:["Aktionen"]},Choose:{msgid:"Choose",comments:{reference:"src/components/ColorPicker/ColorPicker.vue:145"},msgstr:["Auswählen"]},Close:{msgid:"Close",comments:{reference:"src/components/Modal/Modal.vue:117"},msgstr:["Schließen"]},Next:{msgid:"Next",comments:{reference:"src/components/Modal/Modal.vue:166"},msgstr:["Weiter"]},"No results":{msgid:"No results",comments:{reference:"src/components/Multiselect/Multiselect.vue:172\nsrc/components/MultiselectTags/MultiselectTags.vue:78"},msgstr:["Keine Ergebnisse"]},"Pause slideshow":{msgid:"Pause slideshow",comments:{reference:"src/components/Modal/Modal.vue:302"},msgstr:["Diashow pausieren"]},Previous:{msgid:"Previous",comments:{reference:"src/components/Modal/Modal.vue:144"},msgstr:["Vorherige"]},"Select a tag":{msgid:"Select a tag",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:100"},msgstr:["Schlagwort auswählen"]},Settings:{msgid:"Settings",comments:{reference:"src/components/AppNavigationSettings/AppNavigationSettings.vue:53"},msgstr:["Einstellungen"]},"Start slideshow":{msgid:"Start slideshow",comments:{reference:"src/components/Modal/Modal.vue:302"},msgstr:["Diashow starten"]}}}}},{locale:"de_DE",json:{charset:"utf-8",headers:{"Last-Translator":"Philipp Fischbeck <pfischbeck@googlemail.com>, 2020","Language-Team":"German (Germany) (https://www.transifex.com/nextcloud/teams/64236/de_DE/)","Content-Type":"text/plain; charset=UTF-8",Language:"de_DE","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nMark Ziegler <mark.ziegler@rakekniven.de>, 2020\nPhilipp Fischbeck <pfischbeck@googlemail.com>, 2020\n"},msgstr:["Last-Translator: Philipp Fischbeck <pfischbeck@googlemail.com>, 2020\nLanguage-Team: German (Germany) (https://www.transifex.com/nextcloud/teams/64236/de_DE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: de_DE\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{tag} (invisible)":{msgid:"{tag} (invisible)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:170"},msgstr:["{tag} (unsichtbar)"]},"{tag} (restricted)":{msgid:"{tag} (restricted)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:173"},msgstr:["{tag} (eingeschränkt)"]},Actions:{msgid:"Actions",comments:{reference:"src/components/Actions/Actions.vue:194"},msgstr:["Aktionen"]},Choose:{msgid:"Choose",comments:{reference:"src/components/ColorPicker/ColorPicker.vue:145"},msgstr:["Auswählen"]},Close:{msgid:"Close",comments:{reference:"src/components/Modal/Modal.vue:117"},msgstr:["Schließen"]},Next:{msgid:"Next",comments:{reference:"src/components/Modal/Modal.vue:166"},msgstr:["Weiter"]},"No results":{msgid:"No results",comments:{reference:"src/components/Multiselect/Multiselect.vue:172\nsrc/components/MultiselectTags/MultiselectTags.vue:78"},msgstr:["Keine Ergebnisse"]},"Pause slideshow":{msgid:"Pause slideshow",comments:{reference:"src/components/Modal/Modal.vue:302"},msgstr:["Diashow pausieren"]},Previous:{msgid:"Previous",comments:{reference:"src/components/Modal/Modal.vue:144"},msgstr:["Vorherige"]},"Select a tag":{msgid:"Select a tag",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:100"},msgstr:["Schlagwort auswählen"]},Settings:{msgid:"Settings",comments:{reference:"src/components/AppNavigationSettings/AppNavigationSettings.vue:53"},msgstr:["Einstellungen"]},"Start slideshow":{msgid:"Start slideshow",comments:{reference:"src/components/Modal/Modal.vue:302"},msgstr:["Diashow starten"]}}}}},{locale:"el",json:{charset:"utf-8",headers:{"Last-Translator":"george k <norhorn@gmail.com>, 2020","Language-Team":"Greek (https://www.transifex.com/nextcloud/teams/64236/el/)","Content-Type":"text/plain; charset=UTF-8",Language:"el","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nEfstathios Iosifidis <iefstathios@gmail.com>, 2020\ngeorge k <norhorn@gmail.com>, 2020\n"},msgstr:["Last-Translator: george k <norhorn@gmail.com>, 2020\nLanguage-Team: Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: el\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{tag} (invisible)":{msgid:"{tag} (invisible)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:170"},msgstr:["{tag} (αόρατο)"]},"{tag} (restricted)":{msgid:"{tag} (restricted)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:173"},msgstr:["{tag} (περιορισμένο)"]},Actions:{msgid:"Actions",comments:{reference:"src/components/Actions/Actions.vue:194"},msgstr:["Ενέργειες"]},Choose:{msgid:"Choose",comments:{reference:"src/components/ColorPicker/ColorPicker.vue:145"},msgstr:["Επιλογή"]},Close:{msgid:"Close",comments:{reference:"src/components/Modal/Modal.vue:117"},msgstr:["Κλείσιμο"]},Next:{msgid:"Next",comments:{reference:"src/components/Modal/Modal.vue:166"},msgstr:["Επόμενο"]},"No results":{msgid:"No results",comments:{reference:"src/components/Multiselect/Multiselect.vue:172\nsrc/components/MultiselectTags/MultiselectTags.vue:78"},msgstr:["Κανένα αποτέλεσμα"]},"Pause slideshow":{msgid:"Pause slideshow",comments:{reference:"src/components/Modal/Modal.vue:302"},msgstr:["Παύση προβολής διαφανειών"]},Previous:{msgid:"Previous",comments:{reference:"src/components/Modal/Modal.vue:144"},msgstr:["Προηγούμενο"]},"Select a tag":{msgid:"Select a tag",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:100"},msgstr:["Επιλογή ετικέτας"]},Settings:{msgid:"Settings",comments:{reference:"src/components/AppNavigationSettings/AppNavigationSettings.vue:53"},msgstr:["Ρυθμίσεις"]},"Start slideshow":{msgid:"Start slideshow",comments:{reference:"src/components/Modal/Modal.vue:302"},msgstr:["Έναρξη προβολής διαφανειών"]}}}}},{locale:"eu",json:{charset:"utf-8",headers:{"Last-Translator":"Asier Iturralde Sarasola <asier.iturralde@gmail.com>, 2020","Language-Team":"Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)","Content-Type":"text/plain; charset=UTF-8",Language:"eu","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nAsier Iturralde Sarasola <asier.iturralde@gmail.com>, 2020\n"},msgstr:["Last-Translator: Asier Iturralde Sarasola <asier.iturralde@gmail.com>, 2020\nLanguage-Team: Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: eu\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{tag} (invisible)":{msgid:"{tag} (invisible)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:169"},msgstr:["{tag} (ikusezina)"]},"{tag} (restricted)":{msgid:"{tag} (restricted)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:172"},msgstr:["{tag} (mugatua)"]},Choose:{msgid:"Choose",comments:{reference:"src/components/ColorPicker/ColorPicker.vue:145"},msgstr:["Aukeratu"]},Close:{msgid:"Close",comments:{reference:"src/components/Modal/Modal.vue:109"},msgstr:["Itxi"]},Next:{msgid:"Next",comments:{reference:"src/components/Modal/Modal.vue:154"},msgstr:["Hurrengoa"]},"No results":{msgid:"No results",comments:{reference:"src/components/Multiselect/Multiselect.vue:169\nsrc/components/MultiselectTags/MultiselectTags.vue:78"},msgstr:["Emaitzarik ez"]},"Pause slideshow":{msgid:"Pause slideshow",comments:{reference:"src/components/Modal/Modal.vue:290"},msgstr:["Pausatu diaporama"]},Previous:{msgid:"Previous",comments:{reference:"src/components/Modal/Modal.vue:134"},msgstr:["Aurrekoa"]},"Select a tag":{msgid:"Select a tag",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:100"},msgstr:["Hautatu etiketa bat"]},Settings:{msgid:"Settings",comments:{reference:"src/components/AppNavigationSettings/AppNavigationSettings.vue:53"},msgstr:["Ezarpenak"]},"Start slideshow":{msgid:"Start slideshow",comments:{reference:"src/components/Modal/Modal.vue:290"},msgstr:["Hasi diaporama"]}}}}},{locale:"fr",json:{charset:"utf-8",headers:{"Last-Translator":"Greg Greg <grena@grenabox.fr>, 2020","Language-Team":"French (https://www.transifex.com/nextcloud/teams/64236/fr/)","Content-Type":"text/plain; charset=UTF-8",Language:"fr","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nBrendan Abolivier <transifex@brendanabolivier.com>, 2020\ngud bes <gudbes@protonmail.com>, 2020\nGreg Greg <grena@grenabox.fr>, 2020\n"},msgstr:["Last-Translator: Greg Greg <grena@grenabox.fr>, 2020\nLanguage-Team: French (https://www.transifex.com/nextcloud/teams/64236/fr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fr\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},"{tag} (invisible)":{msgid:"{tag} (invisible)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:170"},msgstr:["{tag} (invisible)"]},"{tag} (restricted)":{msgid:"{tag} (restricted)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:173"},msgstr:["{tag} (restreint)"]},Actions:{msgid:"Actions",comments:{reference:"src/components/Actions/Actions.vue:196"},msgstr:["Actions"]},Choose:{msgid:"Choose",comments:{reference:"src/components/ColorPicker/ColorPicker.vue:145"},msgstr:["Choisir"]},Close:{msgid:"Close",comments:{reference:"src/components/Modal/Modal.vue:117"},msgstr:["Fermer"]},Next:{msgid:"Next",comments:{reference:"src/components/Modal/Modal.vue:166"},msgstr:["Suivant"]},"No results":{msgid:"No results",comments:{reference:"src/components/Multiselect/Multiselect.vue:172\nsrc/components/MultiselectTags/MultiselectTags.vue:78"},msgstr:["Aucun résultat"]},"Pause slideshow":{msgid:"Pause slideshow",comments:{reference:"src/components/Modal/Modal.vue:302"},msgstr:["Mettre le diaporama en pause"]},Previous:{msgid:"Previous",comments:{reference:"src/components/Modal/Modal.vue:144"},msgstr:["Précédent"]},"Select a tag":{msgid:"Select a tag",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:100"},msgstr:["Sélectionnez une balise"]},Settings:{msgid:"Settings",comments:{reference:"src/components/AppNavigationSettings/AppNavigationSettings.vue:53"},msgstr:["Paramètres"]},"Start slideshow":{msgid:"Start slideshow",comments:{reference:"src/components/Modal/Modal.vue:302"},msgstr:["Démarrer le diaporama"]}}}}},{locale:"gl",json:{charset:"utf-8",headers:{"Last-Translator":"Miguel Anxo Bouzada <mbouzada@gmail.com>, 2020","Language-Team":"Galician (https://www.transifex.com/nextcloud/teams/64236/gl/)","Content-Type":"text/plain; charset=UTF-8",Language:"gl","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nMiguel Anxo Bouzada <mbouzada@gmail.com>, 2020\n"},msgstr:["Last-Translator: Miguel Anxo Bouzada <mbouzada@gmail.com>, 2020\nLanguage-Team: Galician (https://www.transifex.com/nextcloud/teams/64236/gl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: gl\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{tag} (invisible)":{msgid:"{tag} (invisible)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:170"},msgstr:["{tag} (invisíbel)"]},"{tag} (restricted)":{msgid:"{tag} (restricted)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:173"},msgstr:["{tag} (restrinxido)"]},Actions:{msgid:"Actions",comments:{reference:"src/components/Actions/Actions.vue:196"},msgstr:["Accións"]},Choose:{msgid:"Choose",comments:{reference:"src/components/ColorPicker/ColorPicker.vue:145"},msgstr:["Escoller"]},Close:{msgid:"Close",comments:{reference:"src/components/Modal/Modal.vue:117"},msgstr:["Pechar"]},Next:{msgid:"Next",comments:{reference:"src/components/Modal/Modal.vue:166"},msgstr:["Seguinte"]},"No results":{msgid:"No results",comments:{reference:"src/components/Multiselect/Multiselect.vue:172\nsrc/components/MultiselectTags/MultiselectTags.vue:78"},msgstr:["Sen resultados"]},"Pause slideshow":{msgid:"Pause slideshow",comments:{reference:"src/components/Modal/Modal.vue:302"},msgstr:["Pausar o diaporama"]},Previous:{msgid:"Previous",comments:{reference:"src/components/Modal/Modal.vue:144"},msgstr:["Anterir"]},"Select a tag":{msgid:"Select a tag",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:100"},msgstr:["Seleccione unha etiqueta"]},Settings:{msgid:"Settings",comments:{reference:"src/components/AppNavigationSettings/AppNavigationSettings.vue:53"},msgstr:["Axustes"]},"Start slideshow":{msgid:"Start slideshow",comments:{reference:"src/components/Modal/Modal.vue:302"},msgstr:["Iniciar o diaporama"]}}}}},{locale:"he",json:{charset:"utf-8",headers:{"Last-Translator":"Yaron Shahrabani <sh.yaron@gmail.com>, 2020","Language-Team":"Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)","Content-Type":"text/plain; charset=UTF-8",Language:"he","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nYaron Shahrabani <sh.yaron@gmail.com>, 2020\n"},msgstr:["Last-Translator: Yaron Shahrabani <sh.yaron@gmail.com>, 2020\nLanguage-Team: Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: he\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\n"]},"{tag} (invisible)":{msgid:"{tag} (invisible)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:169"},msgstr:["{tag} (נסתר)"]},"{tag} (restricted)":{msgid:"{tag} (restricted)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:172"},msgstr:["{tag} (מוגבל)"]},Choose:{msgid:"Choose",comments:{reference:"src/components/ColorPicker/ColorPicker.vue:145"},msgstr:["בחירה"]},Close:{msgid:"Close",comments:{reference:"src/components/Modal/Modal.vue:109"},msgstr:["סגירה"]},Next:{msgid:"Next",comments:{reference:"src/components/Modal/Modal.vue:154"},msgstr:["הבא"]},"No results":{msgid:"No results",comments:{reference:"src/components/Multiselect/Multiselect.vue:169\nsrc/components/MultiselectTags/MultiselectTags.vue:78"},msgstr:["אין תוצאות"]},"Pause slideshow":{msgid:"Pause slideshow",comments:{reference:"src/components/Modal/Modal.vue:290"},msgstr:["השהיית מצגת"]},Previous:{msgid:"Previous",comments:{reference:"src/components/Modal/Modal.vue:134"},msgstr:["הקודם"]},"Select a tag":{msgid:"Select a tag",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:100"},msgstr:["בחירת תגית"]},Settings:{msgid:"Settings",comments:{reference:"src/components/AppNavigationSettings/AppNavigationSettings.vue:53"},msgstr:["הגדרות"]},"Start slideshow":{msgid:"Start slideshow",comments:{reference:"src/components/Modal/Modal.vue:290"},msgstr:["התחלת המצגת"]}}}}},{locale:"it",json:{charset:"utf-8",headers:{"Last-Translator":"Random_R, 2020","Language-Team":"Italian (https://www.transifex.com/nextcloud/teams/64236/it/)","Content-Type":"text/plain; charset=UTF-8",Language:"it","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nRandom_R, 2020\n"},msgstr:["Last-Translator: Random_R, 2020\nLanguage-Team: Italian (https://www.transifex.com/nextcloud/teams/64236/it/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: it\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{tag} (invisible)":{msgid:"{tag} (invisible)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:170"},msgstr:["{tag} (invisibile)"]},"{tag} (restricted)":{msgid:"{tag} (restricted)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:173"},msgstr:["{tag} (limitato)"]},Actions:{msgid:"Actions",comments:{reference:"src/components/Actions/Actions.vue:196"},msgstr:["Azioni"]},Choose:{msgid:"Choose",comments:{reference:"src/components/ColorPicker/ColorPicker.vue:145"},msgstr:["Scegli"]},Close:{msgid:"Close",comments:{reference:"src/components/Modal/Modal.vue:117"},msgstr:["Chiudi"]},Next:{msgid:"Next",comments:{reference:"src/components/Modal/Modal.vue:166"},msgstr:["Successivo"]},"No results":{msgid:"No results",comments:{reference:"src/components/Multiselect/Multiselect.vue:172\nsrc/components/MultiselectTags/MultiselectTags.vue:78"},msgstr:["Nessun risultato"]},"Pause slideshow":{msgid:"Pause slideshow",comments:{reference:"src/components/Modal/Modal.vue:302"},msgstr:["Presentazione in pausa"]},Previous:{msgid:"Previous",comments:{reference:"src/components/Modal/Modal.vue:144"},msgstr:["Precedente"]},"Select a tag":{msgid:"Select a tag",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:100"},msgstr:["Seleziona un'etichetta"]},Settings:{msgid:"Settings",comments:{reference:"src/components/AppNavigationSettings/AppNavigationSettings.vue:53"},msgstr:["Impostazioni"]},"Start slideshow":{msgid:"Start slideshow",comments:{reference:"src/components/Modal/Modal.vue:302"},msgstr:["Avvia presentazione"]}}}}},{locale:"lt_LT",json:{charset:"utf-8",headers:{"Last-Translator":"Moo, 2020","Language-Team":"Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)","Content-Type":"text/plain; charset=UTF-8",Language:"lt_LT","Plural-Forms":"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nMoo, 2020\n"},msgstr:["Last-Translator: Moo, 2020\nLanguage-Team: Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lt_LT\nPlural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\n"]},"{tag} (invisible)":{msgid:"{tag} (invisible)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:169"},msgstr:["{tag} (nematoma)"]},"{tag} (restricted)":{msgid:"{tag} (restricted)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:172"},msgstr:["{tag} (apribota)"]},Choose:{msgid:"Choose",comments:{reference:"src/components/ColorPicker/ColorPicker.vue:145"},msgstr:["Pasirinkti"]},Close:{msgid:"Close",comments:{reference:"src/components/Modal/Modal.vue:109"},msgstr:["Užverti"]},Next:{msgid:"Next",comments:{reference:"src/components/Modal/Modal.vue:154"},msgstr:["Kitas"]},"No results":{msgid:"No results",comments:{reference:"src/components/Multiselect/Multiselect.vue:169\nsrc/components/MultiselectTags/MultiselectTags.vue:78"},msgstr:["Nėra rezultatų"]},"Pause slideshow":{msgid:"Pause slideshow",comments:{reference:"src/components/Modal/Modal.vue:290"},msgstr:["Pristabdyti skaidrių rodymą"]},Previous:{msgid:"Previous",comments:{reference:"src/components/Modal/Modal.vue:134"},msgstr:["Ankstesnis"]},"Select a tag":{msgid:"Select a tag",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:100"},msgstr:["Pasirinkti žymę"]},Settings:{msgid:"Settings",comments:{reference:"src/components/AppNavigationSettings/AppNavigationSettings.vue:53"},msgstr:["Nustatymai"]},"Start slideshow":{msgid:"Start slideshow",comments:{reference:"src/components/Modal/Modal.vue:290"},msgstr:["Pradėti skaidrių rodymą"]}}}}},{locale:"lv",json:{charset:"utf-8",headers:{"Last-Translator":"stendec <stendec@inbox.lv>, 2020","Language-Team":"Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)","Content-Type":"text/plain; charset=UTF-8",Language:"lv","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nstendec <stendec@inbox.lv>, 2020\n"},msgstr:["Last-Translator: stendec <stendec@inbox.lv>, 2020\nLanguage-Team: Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lv\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n"]},"{tag} (invisible)":{msgid:"{tag} (invisible)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:169"},msgstr:["{tag} (neredzams)"]},"{tag} (restricted)":{msgid:"{tag} (restricted)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:172"},msgstr:["{tag} (ierobežots)"]},Choose:{msgid:"Choose",comments:{reference:"src/components/ColorPicker/ColorPicker.vue:145"},msgstr:["Izvēlēties"]},Close:{msgid:"Close",comments:{reference:"src/components/Modal/Modal.vue:109"},msgstr:["Aizvērt"]},Next:{msgid:"Next",comments:{reference:"src/components/Modal/Modal.vue:154"},msgstr:["Nākamais"]},"No results":{msgid:"No results",comments:{reference:"src/components/Multiselect/Multiselect.vue:169\nsrc/components/MultiselectTags/MultiselectTags.vue:78"},msgstr:["Nav rezultātu"]},"Pause slideshow":{msgid:"Pause slideshow",comments:{reference:"src/components/Modal/Modal.vue:290"},msgstr:["Pauzēt slaidrādi"]},Previous:{msgid:"Previous",comments:{reference:"src/components/Modal/Modal.vue:134"},msgstr:["Iepriekšējais"]},"Select a tag":{msgid:"Select a tag",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:100"},msgstr:["Izvēlēties birku"]},Settings:{msgid:"Settings",comments:{reference:"src/components/AppNavigationSettings/AppNavigationSettings.vue:53"},msgstr:["Iestatījumi"]},"Start slideshow":{msgid:"Start slideshow",comments:{reference:"src/components/Modal/Modal.vue:290"},msgstr:["Sākt slaidrādi"]}}}}},{locale:"mk",json:{charset:"utf-8",headers:{"Last-Translator":"Сашко Тодоров, 2020","Language-Team":"Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)","Content-Type":"text/plain; charset=UTF-8",Language:"mk","Plural-Forms":"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nСашко Тодоров, 2020\n"},msgstr:["Last-Translator: Сашко Тодоров, 2020\nLanguage-Team: Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mk\nPlural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\n"]},"{tag} (invisible)":{msgid:"{tag} (invisible)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:169"},msgstr:["{tag} (невидливо)"]},"{tag} (restricted)":{msgid:"{tag} (restricted)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:172"},msgstr:["{tag} (ограничено)"]},Choose:{msgid:"Choose",comments:{reference:"src/components/ColorPicker/ColorPicker.vue:145"},msgstr:["Избери"]},Close:{msgid:"Close",comments:{reference:"src/components/Modal/Modal.vue:109"},msgstr:["Затвори"]},Next:{msgid:"Next",comments:{reference:"src/components/Modal/Modal.vue:154"},msgstr:["Следно"]},"No results":{msgid:"No results",comments:{reference:"src/components/Multiselect/Multiselect.vue:169\nsrc/components/MultiselectTags/MultiselectTags.vue:78"},msgstr:["Нема резултати"]},"Pause slideshow":{msgid:"Pause slideshow",comments:{reference:"src/components/Modal/Modal.vue:290"},msgstr:["Пузирај слајдшоу"]},Previous:{msgid:"Previous",comments:{reference:"src/components/Modal/Modal.vue:134"},msgstr:["Предходно"]},"Select a tag":{msgid:"Select a tag",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:100"},msgstr:["Избери ознака"]},Settings:{msgid:"Settings",comments:{reference:"src/components/AppNavigationSettings/AppNavigationSettings.vue:53"},msgstr:["Параметри"]},"Start slideshow":{msgid:"Start slideshow",comments:{reference:"src/components/Modal/Modal.vue:290"},msgstr:["Стартувај слајдшоу"]}}}}},{locale:"nl",json:{charset:"utf-8",headers:{"Last-Translator":"Arjan van S, 2020","Language-Team":"Dutch (https://www.transifex.com/nextcloud/teams/64236/nl/)","Content-Type":"text/plain; charset=UTF-8",Language:"nl","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nRoeland Jago Douma <roeland@famdouma.nl>, 2020\nArjan van S, 2020\n"},msgstr:["Last-Translator: Arjan van S, 2020\nLanguage-Team: Dutch (https://www.transifex.com/nextcloud/teams/64236/nl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nl\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{tag} (invisible)":{msgid:"{tag} (invisible)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:170"},msgstr:["{tag} (onzichtbaar)"]},"{tag} (restricted)":{msgid:"{tag} (restricted)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:173"},msgstr:["{tag} (beperkt)"]},Actions:{msgid:"Actions",comments:{reference:"src/components/Actions/Actions.vue:196"},msgstr:["Acties"]},Choose:{msgid:"Choose",comments:{reference:"src/components/ColorPicker/ColorPicker.vue:145"},msgstr:["Kies"]},Close:{msgid:"Close",comments:{reference:"src/components/Modal/Modal.vue:117"},msgstr:["Sluiten"]},Next:{msgid:"Next",comments:{reference:"src/components/Modal/Modal.vue:166"},msgstr:["Volgende"]},"No results":{msgid:"No results",comments:{reference:"src/components/Multiselect/Multiselect.vue:172\nsrc/components/MultiselectTags/MultiselectTags.vue:78"},msgstr:["Geen resultaten"]},"Pause slideshow":{msgid:"Pause slideshow",comments:{reference:"src/components/Modal/Modal.vue:302"},msgstr:["Pauzeer diavoorstelling"]},Previous:{msgid:"Previous",comments:{reference:"src/components/Modal/Modal.vue:144"},msgstr:["Vorige"]},"Select a tag":{msgid:"Select a tag",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:100"},msgstr:["Selecteer een label"]},Settings:{msgid:"Settings",comments:{reference:"src/components/AppNavigationSettings/AppNavigationSettings.vue:53"},msgstr:["Instellingen"]},"Start slideshow":{msgid:"Start slideshow",comments:{reference:"src/components/Modal/Modal.vue:302"},msgstr:["Start diavoorstelling"]}}}}},{locale:"oc",json:{charset:"utf-8",headers:{"Last-Translator":"Quentin PAGÈS, 2020","Language-Team":"Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)","Content-Type":"text/plain; charset=UTF-8",Language:"oc","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nQuentin PAGÈS, 2020\n"},msgstr:["Last-Translator: Quentin PAGÈS, 2020\nLanguage-Team: Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: oc\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},"{tag} (invisible)":{msgid:"{tag} (invisible)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:170"},msgstr:["{tag} (invisible)"]},"{tag} (restricted)":{msgid:"{tag} (restricted)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:173"},msgstr:["{tag} (limit)"]},Actions:{msgid:"Actions",comments:{reference:"src/components/Actions/Actions.vue:194"},msgstr:["Accions"]},Choose:{msgid:"Choose",comments:{reference:"src/components/ColorPicker/ColorPicker.vue:145"},msgstr:["Causir"]},Close:{msgid:"Close",comments:{reference:"src/components/Modal/Modal.vue:117"},msgstr:["Tampar"]},Next:{msgid:"Next",comments:{reference:"src/components/Modal/Modal.vue:166"},msgstr:["Seguent"]},"No results":{msgid:"No results",comments:{reference:"src/components/Multiselect/Multiselect.vue:172\nsrc/components/MultiselectTags/MultiselectTags.vue:78"},msgstr:["Cap de resultat"]},"Pause slideshow":{msgid:"Pause slideshow",comments:{reference:"src/components/Modal/Modal.vue:302"},msgstr:["Metre en pausa lo diaporama"]},Previous:{msgid:"Previous",comments:{reference:"src/components/Modal/Modal.vue:144"},msgstr:["Precedent"]},"Select a tag":{msgid:"Select a tag",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:100"},msgstr:["Seleccionar una etiqueta"]},Settings:{msgid:"Settings",comments:{reference:"src/components/AppNavigationSettings/AppNavigationSettings.vue:53"},msgstr:["Paramètres"]},"Start slideshow":{msgid:"Start slideshow",comments:{reference:"src/components/Modal/Modal.vue:302"},msgstr:["Lançar lo diaporama"]}}}}},{locale:"pl",json:{charset:"utf-8",headers:{"Last-Translator":"Valdnet Valdnet, 2020","Language-Team":"Polish (https://www.transifex.com/nextcloud/teams/64236/pl/)","Content-Type":"text/plain; charset=UTF-8",Language:"pl","Plural-Forms":"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nValdnet Valdnet, 2020\n"},msgstr:["Last-Translator: Valdnet Valdnet, 2020\nLanguage-Team: Polish (https://www.transifex.com/nextcloud/teams/64236/pl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pl\nPlural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"]},"{tag} (invisible)":{msgid:"{tag} (invisible)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:170"},msgstr:["{tag} (niewidoczna)"]},"{tag} (restricted)":{msgid:"{tag} (restricted)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:173"},msgstr:["{tag} (ograniczona)"]},Actions:{msgid:"Actions",comments:{reference:"src/components/Actions/Actions.vue:196"},msgstr:["Działania"]},Choose:{msgid:"Choose",comments:{reference:"src/components/ColorPicker/ColorPicker.vue:145"},msgstr:["Wybierz"]},Close:{msgid:"Close",comments:{reference:"src/components/Modal/Modal.vue:117"},msgstr:["Zamknij"]},Next:{msgid:"Next",comments:{reference:"src/components/Modal/Modal.vue:166"},msgstr:["Następny"]},"No results":{msgid:"No results",comments:{reference:"src/components/Multiselect/Multiselect.vue:172\nsrc/components/MultiselectTags/MultiselectTags.vue:78"},msgstr:["Brak wyników"]},"Pause slideshow":{msgid:"Pause slideshow",comments:{reference:"src/components/Modal/Modal.vue:302"},msgstr:["Wstrzymaj pokaz slajdów"]},Previous:{msgid:"Previous",comments:{reference:"src/components/Modal/Modal.vue:144"},msgstr:["Poprzedni"]},"Select a tag":{msgid:"Select a tag",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:100"},msgstr:["Wybierz etykietę"]},Settings:{msgid:"Settings",comments:{reference:"src/components/AppNavigationSettings/AppNavigationSettings.vue:53"},msgstr:["Ustawienia"]},"Start slideshow":{msgid:"Start slideshow",comments:{reference:"src/components/Modal/Modal.vue:302"},msgstr:["Rozpocznij pokaz slajdów"]}}}}},{locale:"pt_BR",json:{charset:"utf-8",headers:{"Last-Translator":"Paulo Schopf, 2020","Language-Team":"Portuguese (Brazil) (https://www.transifex.com/nextcloud/teams/64236/pt_BR/)","Content-Type":"text/plain; charset=UTF-8",Language:"pt_BR","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nMaurício Gardini <accounts@mauriciogardini.com>, 2020\nPaulo Schopf, 2020\n"},msgstr:["Last-Translator: Paulo Schopf, 2020\nLanguage-Team: Portuguese (Brazil) (https://www.transifex.com/nextcloud/teams/64236/pt_BR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pt_BR\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},"{tag} (invisible)":{msgid:"{tag} (invisible)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:170"},msgstr:["{tag} (invisível)"]},"{tag} (restricted)":{msgid:"{tag} (restricted)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:173"},msgstr:["{tag} (restrito) "]},Actions:{msgid:"Actions",comments:{reference:"src/components/Actions/Actions.vue:194"},msgstr:["Ações"]},Choose:{msgid:"Choose",comments:{reference:"src/components/ColorPicker/ColorPicker.vue:145"},msgstr:["Escolher"]},Close:{msgid:"Close",comments:{reference:"src/components/Modal/Modal.vue:117"},msgstr:["Fechar"]},Next:{msgid:"Next",comments:{reference:"src/components/Modal/Modal.vue:166"},msgstr:["Próximo"]},"No results":{msgid:"No results",comments:{reference:"src/components/Multiselect/Multiselect.vue:172\nsrc/components/MultiselectTags/MultiselectTags.vue:78"},msgstr:["Sem resultados"]},"Pause slideshow":{msgid:"Pause slideshow",comments:{reference:"src/components/Modal/Modal.vue:302"},msgstr:["Pausar apresentação de slides"]},Previous:{msgid:"Previous",comments:{reference:"src/components/Modal/Modal.vue:144"},msgstr:["Anterior"]},"Select a tag":{msgid:"Select a tag",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:100"},msgstr:["Selecionar uma tag"]},Settings:{msgid:"Settings",comments:{reference:"src/components/AppNavigationSettings/AppNavigationSettings.vue:53"},msgstr:["Configurações"]},"Start slideshow":{msgid:"Start slideshow",comments:{reference:"src/components/Modal/Modal.vue:302"},msgstr:["Iniciar apresentação de slides"]}}}}},{locale:"pt_PT",json:{charset:"utf-8",headers:{"Last-Translator":"fpapoila <fpapoila@gmail.com>, 2020","Language-Team":"Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)","Content-Type":"text/plain; charset=UTF-8",Language:"pt_PT","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nfpapoila <fpapoila@gmail.com>, 2020\n"},msgstr:["Last-Translator: fpapoila <fpapoila@gmail.com>, 2020\nLanguage-Team: Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pt_PT\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{tag} (invisible)":{msgid:"{tag} (invisible)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:169"},msgstr:["{tag} (invisivel)"]},"{tag} (restricted)":{msgid:"{tag} (restricted)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:172"},msgstr:["{tag} (restrito)"]},Choose:{msgid:"Choose",comments:{reference:"src/components/ColorPicker/ColorPicker.vue:145"},msgstr:["Escolher"]},Close:{msgid:"Close",comments:{reference:"src/components/Modal/Modal.vue:109"},msgstr:["Fechar"]},Next:{msgid:"Next",comments:{reference:"src/components/Modal/Modal.vue:154"},msgstr:["Proximo"]},"No results":{msgid:"No results",comments:{reference:"src/components/Multiselect/Multiselect.vue:169\nsrc/components/MultiselectTags/MultiselectTags.vue:78"},msgstr:["Sem resultados"]},"Pause slideshow":{msgid:"Pause slideshow",comments:{reference:"src/components/Modal/Modal.vue:290"},msgstr:["Pausar apresentação de slides"]},Previous:{msgid:"Previous",comments:{reference:"src/components/Modal/Modal.vue:134"},msgstr:["Anterior"]},"Select a tag":{msgid:"Select a tag",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:100"},msgstr:["Selecionar etiqueta"]},Settings:{msgid:"Settings",comments:{reference:"src/components/AppNavigationSettings/AppNavigationSettings.vue:53"},msgstr:["Definições"]},"Start slideshow":{msgid:"Start slideshow",comments:{reference:"src/components/Modal/Modal.vue:290"},msgstr:["Iniciar apresentação de slides"]}}}}},{locale:"ru",json:{charset:"utf-8",headers:{"Last-Translator":"Alex <kekcuha@gmail.com>, 2020","Language-Team":"Russian (https://www.transifex.com/nextcloud/teams/64236/ru/)","Content-Type":"text/plain; charset=UTF-8",Language:"ru","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nAlex <kekcuha@gmail.com>, 2020\n"},msgstr:["Last-Translator: Alex <kekcuha@gmail.com>, 2020\nLanguage-Team: Russian (https://www.transifex.com/nextcloud/teams/64236/ru/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ru\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},"{tag} (invisible)":{msgid:"{tag} (invisible)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:169"},msgstr:["{tag} (невидимое)"]},"{tag} (restricted)":{msgid:"{tag} (restricted)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:172"},msgstr:["{tag} (ограниченное)"]},Choose:{msgid:"Choose",comments:{reference:"src/components/ColorPicker/ColorPicker.vue:145"},msgstr:["Выберите"]},Close:{msgid:"Close",comments:{reference:"src/components/Modal/Modal.vue:109"},msgstr:["Закрыть"]},Next:{msgid:"Next",comments:{reference:"src/components/Modal/Modal.vue:154"},msgstr:["Следующее"]},"No results":{msgid:"No results",comments:{reference:"src/components/Multiselect/Multiselect.vue:169\nsrc/components/MultiselectTags/MultiselectTags.vue:78"},msgstr:["Результаты отсуствуют"]},"Pause slideshow":{msgid:"Pause slideshow",comments:{reference:"src/components/Modal/Modal.vue:290"},msgstr:["Приостановить показ слйдов"]},Previous:{msgid:"Previous",comments:{reference:"src/components/Modal/Modal.vue:134"},msgstr:["Предыдущее"]},"Select a tag":{msgid:"Select a tag",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:100"},msgstr:["Выберите метку"]},Settings:{msgid:"Settings",comments:{reference:"src/components/AppNavigationSettings/AppNavigationSettings.vue:53"},msgstr:["Параметры"]},"Start slideshow":{msgid:"Start slideshow",comments:{reference:"src/components/Modal/Modal.vue:290"},msgstr:["Начать показ слайдов"]}}}}},{locale:"sv",json:{charset:"utf-8",headers:{"Last-Translator":"Jonatan Nyberg, 2020","Language-Team":"Swedish (https://www.transifex.com/nextcloud/teams/64236/sv/)","Content-Type":"text/plain; charset=UTF-8",Language:"sv","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nGabriel Ekström <gabriel.ekstrom06@gmail.com>, 2020\nErik Lennartsson, 2020\nJonatan Nyberg, 2020\n"},msgstr:["Last-Translator: Jonatan Nyberg, 2020\nLanguage-Team: Swedish (https://www.transifex.com/nextcloud/teams/64236/sv/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sv\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{tag} (invisible)":{msgid:"{tag} (invisible)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:170"},msgstr:["{tag} (osynlig)"]},"{tag} (restricted)":{msgid:"{tag} (restricted)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:173"},msgstr:["{tag} (begränsad)"]},Actions:{msgid:"Actions",comments:{reference:"src/components/Actions/Actions.vue:194"},msgstr:["Åtgärder"]},Choose:{msgid:"Choose",comments:{reference:"src/components/ColorPicker/ColorPicker.vue:145"},msgstr:["Välj"]},Close:{msgid:"Close",comments:{reference:"src/components/Modal/Modal.vue:117"},msgstr:["Stäng"]},Next:{msgid:"Next",comments:{reference:"src/components/Modal/Modal.vue:166"},msgstr:["Nästa"]},"No results":{msgid:"No results",comments:{reference:"src/components/Multiselect/Multiselect.vue:172\nsrc/components/MultiselectTags/MultiselectTags.vue:78"},msgstr:["Inga resultat"]},"Pause slideshow":{msgid:"Pause slideshow",comments:{reference:"src/components/Modal/Modal.vue:302"},msgstr:["Pausa bildspel"]},Previous:{msgid:"Previous",comments:{reference:"src/components/Modal/Modal.vue:144"},msgstr:["Föregående"]},"Select a tag":{msgid:"Select a tag",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:100"},msgstr:["Välj en tag"]},Settings:{msgid:"Settings",comments:{reference:"src/components/AppNavigationSettings/AppNavigationSettings.vue:53"},msgstr:["Inställningar"]},"Start slideshow":{msgid:"Start slideshow",comments:{reference:"src/components/Modal/Modal.vue:302"},msgstr:["Starta bildspel"]}}}}},{locale:"tr",json:{charset:"utf-8",headers:{"Last-Translator":"Kemal Oktay Aktoğan <oktayaktogan@gmail.com>, 2020","Language-Team":"Turkish (https://www.transifex.com/nextcloud/teams/64236/tr/)","Content-Type":"text/plain; charset=UTF-8",Language:"tr","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nKemal Oktay Aktoğan <oktayaktogan@gmail.com>, 2020\n"},msgstr:["Last-Translator: Kemal Oktay Aktoğan <oktayaktogan@gmail.com>, 2020\nLanguage-Team: Turkish (https://www.transifex.com/nextcloud/teams/64236/tr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: tr\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},"{tag} (invisible)":{msgid:"{tag} (invisible)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:169"},msgstr:["{tag} (görünmez)"]},"{tag} (restricted)":{msgid:"{tag} (restricted)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:172"},msgstr:["{tag} (kısıtlı)"]},Choose:{msgid:"Choose",comments:{reference:"src/components/ColorPicker/ColorPicker.vue:145"},msgstr:["Seç"]},Close:{msgid:"Close",comments:{reference:"src/components/Modal/Modal.vue:109"},msgstr:["Kapat"]},Next:{msgid:"Next",comments:{reference:"src/components/Modal/Modal.vue:154"},msgstr:["İleri"]},"No results":{msgid:"No results",comments:{reference:"src/components/Multiselect/Multiselect.vue:169\nsrc/components/MultiselectTags/MultiselectTags.vue:78"},msgstr:["Sonuç yok"]},"Pause slideshow":{msgid:"Pause slideshow",comments:{reference:"src/components/Modal/Modal.vue:290"},msgstr:["Slayt gösterisini duraklat"]},Previous:{msgid:"Previous",comments:{reference:"src/components/Modal/Modal.vue:134"},msgstr:["Önceki"]},"Select a tag":{msgid:"Select a tag",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:100"},msgstr:["Bir etiket seçin"]},Settings:{msgid:"Settings",comments:{reference:"src/components/AppNavigationSettings/AppNavigationSettings.vue:53"},msgstr:["Ayarlar"]},"Start slideshow":{msgid:"Start slideshow",comments:{reference:"src/components/Modal/Modal.vue:290"},msgstr:["Slayt gösterisini başlat"]}}}}},{locale:"zh_TW",json:{charset:"utf-8",headers:{"Last-Translator":"byStarTW (pan93412) <pan93412@gmail.com>, 2020","Language-Team":"Chinese (Taiwan) (https://www.transifex.com/nextcloud/teams/64236/zh_TW/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_TW","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nbyStarTW (pan93412) <pan93412@gmail.com>, 2020\n"},msgstr:["Last-Translator: byStarTW (pan93412) <pan93412@gmail.com>, 2020\nLanguage-Team: Chinese (Taiwan) (https://www.transifex.com/nextcloud/teams/64236/zh_TW/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_TW\nPlural-Forms: nplurals=1; plural=0;\n"]},"{tag} (invisible)":{msgid:"{tag} (invisible)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:169"},msgstr:["{tag} (隱藏)"]},"{tag} (restricted)":{msgid:"{tag} (restricted)",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:172"},msgstr:["{tag} (受限)"]},Choose:{msgid:"Choose",comments:{reference:"src/components/ColorPicker/ColorPicker.vue:145"},msgstr:["選擇"]},Close:{msgid:"Close",comments:{reference:"src/components/Modal/Modal.vue:109"},msgstr:["關閉"]},Next:{msgid:"Next",comments:{reference:"src/components/Modal/Modal.vue:154"},msgstr:["下一個"]},"No results":{msgid:"No results",comments:{reference:"src/components/Multiselect/Multiselect.vue:169\nsrc/components/MultiselectTags/MultiselectTags.vue:78"},msgstr:["無結果"]},"Pause slideshow":{msgid:"Pause slideshow",comments:{reference:"src/components/Modal/Modal.vue:290"},msgstr:["暫停幻燈片"]},Previous:{msgid:"Previous",comments:{reference:"src/components/Modal/Modal.vue:134"},msgstr:["上一個"]},"Select a tag":{msgid:"Select a tag",comments:{reference:"src/components/MultiselectTags/MultiselectTags.vue:100"},msgstr:["選擇標籤"]},Settings:{msgid:"Settings",comments:{reference:"src/components/AppNavigationSettings/AppNavigationSettings.vue:53"},msgstr:["設定"]},"Start slideshow":{msgid:"Start slideshow",comments:{reference:"src/components/Modal/Modal.vue:290"},msgstr:["開始幻燈片"]}}}}}].map((function(e){return n.addTranslation(e.locale,e.json)}));var a=n.build(),o=a.ngettext.bind(a),r=a.gettext.bind(a)},64:function(e,t){e.exports=__webpack_require__(/*! core-js/modules/es.object.assign */ "./node_modules/core-js/modules/es.object.assign.js")},65:function(e,t){e.exports=__webpack_require__(/*! core-js/modules/es.array.splice */ "./node_modules/core-js/modules/es.array.splice.js")},66:function(e,t,s){"use strict";var A=s(29);s.n(A).a},67:function(e,t,s){var A=s(1),n=s(7),a=s(8),o=s(9),r=s(10),i=s(11);t=A(!1);var c=n(a),l=n(o),m=n(r),g=n(i);t.push([e.i,'@font-face{font-family:"iconfont-vue-e1f55ce";src:url('+c+");src:url("+c+') format("embedded-opentype"),url('+l+') format("woff"),url('+m+') format("truetype"),url('+g+') format("svg")}.icon[data-v-7b368b0c]{font-style:normal;font-weight:400}.icon.arrow-left-double[data-v-7b368b0c]:before{font-family:"iconfont-vue-e1f55ce";content:""}.icon.arrow-left[data-v-7b368b0c]:before{font-family:"iconfont-vue-e1f55ce";content:""}.icon.arrow-right-double[data-v-7b368b0c]:before{font-family:"iconfont-vue-e1f55ce";content:""}.icon.arrow-right[data-v-7b368b0c]:before{font-family:"iconfont-vue-e1f55ce";content:""}.icon.breadcrumb[data-v-7b368b0c]:before{font-family:"iconfont-vue-e1f55ce";content:""}.icon.checkmark[data-v-7b368b0c]:before{font-family:"iconfont-vue-e1f55ce";content:""}.icon.close[data-v-7b368b0c]:before{font-family:"iconfont-vue-e1f55ce";content:""}.icon.confirm[data-v-7b368b0c]:before{font-family:"iconfont-vue-e1f55ce";content:""}.icon.info[data-v-7b368b0c]:before{font-family:"iconfont-vue-e1f55ce";content:""}.icon.menu[data-v-7b368b0c]:before{font-family:"iconfont-vue-e1f55ce";content:""}.icon.more[data-v-7b368b0c]:before{font-family:"iconfont-vue-e1f55ce";content:""}.icon.pause[data-v-7b368b0c]:before{font-family:"iconfont-vue-e1f55ce";content:""}.icon.play[data-v-7b368b0c]:before{font-family:"iconfont-vue-e1f55ce";content:""}.icon.triangle-s[data-v-7b368b0c]:before{font-family:"iconfont-vue-e1f55ce";content:""}.action-item[data-v-7b368b0c]{position:relative;display:inline-block}.action-item--single[data-v-7b368b0c]:hover,.action-item--single[data-v-7b368b0c]:focus,.action-item--single[data-v-7b368b0c]:active,.action-item__menutoggle[data-v-7b368b0c]:hover,.action-item__menutoggle[data-v-7b368b0c]:focus,.action-item__menutoggle[data-v-7b368b0c]:active{border-radius:22px;background-color:rgba(127,127,127,0.25) !important;opacity:1}.action-item.action-item--open .action-item__menutoggle[data-v-7b368b0c]{opacity:1;border-radius:22px;background-color:rgba(127,127,127,0.25)}.action-item--single[data-v-7b368b0c],.action-item__menutoggle[data-v-7b368b0c]{box-sizing:border-box;width:44px;height:44px;margin:0;padding:14px;cursor:pointer;border:none;background-color:transparent}.action-item__menutoggle[data-v-7b368b0c]{display:flex;align-items:center;justify-content:center;opacity:.7}.action-item__menutoggle[data-v-7b368b0c]:before{content:\'\'}.action-item__menutoggle--default-icon[data-v-7b368b0c]{font-size:16px}.action-item__menutoggle--default-icon[data-v-7b368b0c]:before{font-family:"iconfont-vue-e1f55ce";font-style:normal;font-weight:400;content:""}.action-item--single[data-v-7b368b0c]{opacity:.7}.action-item--single[data-v-7b368b0c]:hover,.action-item--single[data-v-7b368b0c]:focus,.action-item--single[data-v-7b368b0c]:active{opacity:1}.action-item--single>[hidden][data-v-7b368b0c]{display:none}.action-item--multiple[data-v-7b368b0c]{position:relative}.action-item__menu[data-v-7b368b0c]{position:absolute;z-index:110;right:50%;display:none;margin-bottom:10px;margin-top:-5px;transform:translateX(50%);color:var(--color-main-text);border-radius:var(--border-radius);background-color:var(--color-main-background);filter:drop-shadow(0 1px 3px var(--color-box-shadow))}.action-item__menu ul[data-v-7b368b0c]>:not(li){display:none}.action-item__menu.open[data-v-7b368b0c]{display:block}.action-item__menu .action-item__menu_arrow[data-v-7b368b0c]{position:absolute;right:50%;bottom:100%;width:0;height:0;margin-right:-9px;content:\' \';pointer-events:none;border:solid transparent;border-width:9px;border-bottom-color:var(--color-main-background)}.action-item__menu.menu-right[data-v-7b368b0c]{right:0;left:auto;transform:none}.action-item__menu.menu-right .action-item__menu_arrow[data-v-7b368b0c]{right:13px;margin-right:0}.action-item__menu.menu-left[data-v-7b368b0c]{right:auto;left:0;transform:none}.action-item__menu.menu-left .action-item__menu_arrow[data-v-7b368b0c]{right:auto;left:13px;margin-right:0}.ie .action-item__menu[data-v-7b368b0c],.ie .action-item__menu .action-item__menu_arrow[data-v-7b368b0c],.edge .action-item__menu[data-v-7b368b0c],.edge .action-item__menu .action-item__menu_arrow[data-v-7b368b0c]{border:1px solid var(--color-border)}\n',""]),e.exports=t},7:function(e,t,s){"use strict";e.exports=function(e,t){return t||(t={}),"string"!=typeof(e=e&&e.__esModule?e.default:e)?e:(/^['"].*['"]$/.test(e)&&(e=e.slice(1,-1)),t.hash&&(e+=t.hash),/["'() \t\n]/.test(e)||t.needQuotes?'"'.concat(e.replace(/"/g,'\\"').replace(/\n/g,"\\n"),'"'):e)}},8:function(e,t,s){"use strict";s.r(t),t.default="data:application/vnd.ms-fontobject;base64,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"},9:function(e,t,s){"use strict";s.r(t),t.default="data:font/woff;base64,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DDUAAgAACQIE4gTiBOIMNfseBOAAAQAAAAEAAEB6caFfDzz1AAsTiAAAAADasyhOAAAAANpiTE///wAAE5MTiAAAAAgAAgAAAAAAAAABAAATiAAAAAATiP////UTkwABAAAAAAAAAAAAAAAAAAAABwAAAAATiAAAE4gAABOIAAATiAAABjYAABOIAAAAAP//AAAAAAAAAAAAAAAAAAAAAAAiADYAWABsAIAAlAC0AQ4BfAGaAhACJgI0AkIAAQAAAA8ASwADAAAAAAACAAAACgAKAAAA/wAAAAAAAAAAABAAxgABAAAAAAABABQAAAABAAAAAAACAAcAFAABAAAAAAADABQAGwABAAAAAAAEABQALwABAAAAAAAFAAsAQwABAAAAAAAGABQATgABAAAAAAAKACsAYgABAAAAAAALABMAjQADAAEECQABACgAoAADAAEECQACAA4AyAADAAEECQADACgA1gADAAEECQAEACgA/gADAAEECQAFABYBJgADAAEECQAGACgBPAADAAEECQAKAFYBZAADAAEECQALACYBumljb25mb250LXZ1ZS1lMWY1NWNlUmVndWxhcmljb25mb250LXZ1ZS1lMWY1NWNlaWNvbmZvbnQtdnVlLWUxZjU1Y2VWZXJzaW9uIDEuMGljb25mb250LXZ1ZS1lMWY1NWNlR2VuZXJhdGVkIGJ5IHN2ZzJ0dGYgZnJvbSBGb250ZWxsbyBwcm9qZWN0Lmh0dHA6Ly9mb250ZWxsby5jb20AaQBjAG8AbgBmAG8AbgB0AC0AdgB1AGUALQBlADEAZgA1ADUAYwBlAFIAZQBnAHUAbABhAHIAaQBjAG8AbgBmAG8AbgB0AC0AdgB1AGUALQBlADEAZgA1ADUAYwBlAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0AZQAxAGYANQA1AGMAZQBWAGUAcgBzAGkAbwBuACAAMQAuADAAaQBjAG8AbgBmAG8AbgB0AC0AdgB1AGUALQBlADEAZgA1ADUAYwBlAEcAZQBuAGUAcgBhAHQAZQBkACAAYgB5ACAAcwB2AGcAMgB0AHQAZgAgAGYAcgBvAG0AIABGAG8AbgB0AGUAbABsAG8AIABwAHIAbwBqAGUAYwB0AC4AaAB0AHQAcAA6AC8ALwBmAG8AbgB0AGUAbABsAG8ALgBjAG8AbQAAAAIAAAAAAAAAMgAAAAAAAAAAAAAAAAAAAAAAAAAAAA8ADwAAAQIBAwEEAQUBBgEHAQgBCQEKAQsBDAENAQ4BDxFhcnJvdy1sZWZ0LWRvdWJsZQphcnJvdy1sZWZ0EmFycm93LXJpZ2h0LWRvdWJsZQthcnJvdy1yaWdodApicmVhZGNydW1iCWNoZWNrbWFyawVjbG9zZQdjb25maXJtBGluZm8EbWVudQRtb3JlBXBhdXNlBHBsYXkKdHJpYW5nbGUtcw=="}})}));
  104. //# sourceMappingURL=AppSidebar.js.map
  105. /***/ }),
  106. /***/ "./node_modules/dompurify/dist/purify.js":
  107. /*!***********************************************!*\
  108. !*** ./node_modules/dompurify/dist/purify.js ***!
  109. \***********************************************/
  110. /*! no static exports found */
  111. /***/ (function(module, exports, __webpack_require__) {
  112. /*! @license DOMPurify | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/2.0.8/LICENSE */
  113. (function (global, factory) {
  114. true ? module.exports = factory() :
  115. undefined;
  116. }(this, function () { 'use strict';
  117. function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }
  118. var hasOwnProperty = Object.hasOwnProperty,
  119. setPrototypeOf = Object.setPrototypeOf,
  120. isFrozen = Object.isFrozen,
  121. objectKeys = Object.keys;
  122. var freeze = Object.freeze,
  123. seal = Object.seal; // eslint-disable-line import/no-mutable-exports
  124. var _ref = typeof Reflect !== 'undefined' && Reflect,
  125. apply = _ref.apply,
  126. construct = _ref.construct;
  127. if (!apply) {
  128. apply = function apply(fun, thisValue, args) {
  129. return fun.apply(thisValue, args);
  130. };
  131. }
  132. if (!freeze) {
  133. freeze = function freeze(x) {
  134. return x;
  135. };
  136. }
  137. if (!seal) {
  138. seal = function seal(x) {
  139. return x;
  140. };
  141. }
  142. if (!construct) {
  143. construct = function construct(Func, args) {
  144. return new (Function.prototype.bind.apply(Func, [null].concat(_toConsumableArray(args))))();
  145. };
  146. }
  147. var arrayForEach = unapply(Array.prototype.forEach);
  148. var arrayIndexOf = unapply(Array.prototype.indexOf);
  149. var arrayJoin = unapply(Array.prototype.join);
  150. var arrayPop = unapply(Array.prototype.pop);
  151. var arrayPush = unapply(Array.prototype.push);
  152. var arraySlice = unapply(Array.prototype.slice);
  153. var stringToLowerCase = unapply(String.prototype.toLowerCase);
  154. var stringMatch = unapply(String.prototype.match);
  155. var stringReplace = unapply(String.prototype.replace);
  156. var stringIndexOf = unapply(String.prototype.indexOf);
  157. var stringTrim = unapply(String.prototype.trim);
  158. var regExpTest = unapply(RegExp.prototype.test);
  159. var regExpCreate = unconstruct(RegExp);
  160. var typeErrorCreate = unconstruct(TypeError);
  161. function unapply(func) {
  162. return function (thisArg) {
  163. for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
  164. args[_key - 1] = arguments[_key];
  165. }
  166. return apply(func, thisArg, args);
  167. };
  168. }
  169. function unconstruct(func) {
  170. return function () {
  171. for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
  172. args[_key2] = arguments[_key2];
  173. }
  174. return construct(func, args);
  175. };
  176. }
  177. /* Add properties to a lookup table */
  178. function addToSet(set, array) {
  179. if (setPrototypeOf) {
  180. // Make 'in' and truthy checks like Boolean(set.constructor)
  181. // independent of any properties defined on Object.prototype.
  182. // Prevent prototype setters from intercepting set as a this value.
  183. setPrototypeOf(set, null);
  184. }
  185. var l = array.length;
  186. while (l--) {
  187. var element = array[l];
  188. if (typeof element === 'string') {
  189. var lcElement = stringToLowerCase(element);
  190. if (lcElement !== element) {
  191. // Config presets (e.g. tags.js, attrs.js) are immutable.
  192. if (!isFrozen(array)) {
  193. array[l] = lcElement;
  194. }
  195. element = lcElement;
  196. }
  197. }
  198. set[element] = true;
  199. }
  200. return set;
  201. }
  202. /* Shallow clone an object */
  203. function clone(object) {
  204. var newObject = {};
  205. var property = void 0;
  206. for (property in object) {
  207. if (apply(hasOwnProperty, object, [property])) {
  208. newObject[property] = object[property];
  209. }
  210. }
  211. return newObject;
  212. }
  213. var html = freeze(['a', 'abbr', 'acronym', 'address', 'area', 'article', 'aside', 'audio', 'b', 'bdi', 'bdo', 'big', 'blink', 'blockquote', 'body', 'br', 'button', 'canvas', 'caption', 'center', 'cite', 'code', 'col', 'colgroup', 'content', 'data', 'datalist', 'dd', 'decorator', 'del', 'details', 'dfn', 'dir', 'div', 'dl', 'dt', 'element', 'em', 'fieldset', 'figcaption', 'figure', 'font', 'footer', 'form', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'head', 'header', 'hgroup', 'hr', 'html', 'i', 'img', 'input', 'ins', 'kbd', 'label', 'legend', 'li', 'main', 'map', 'mark', 'marquee', 'menu', 'menuitem', 'meter', 'nav', 'nobr', 'ol', 'optgroup', 'option', 'output', 'p', 'picture', 'pre', 'progress', 'q', 'rp', 'rt', 'ruby', 's', 'samp', 'section', 'select', 'shadow', 'small', 'source', 'spacer', 'span', 'strike', 'strong', 'style', 'sub', 'summary', 'sup', 'table', 'tbody', 'td', 'template', 'textarea', 'tfoot', 'th', 'thead', 'time', 'tr', 'track', 'tt', 'u', 'ul', 'var', 'video', 'wbr']);
  214. // SVG
  215. var svg = freeze(['svg', 'a', 'altglyph', 'altglyphdef', 'altglyphitem', 'animatecolor', 'animatemotion', 'animatetransform', 'audio', 'canvas', 'circle', 'clippath', 'defs', 'desc', 'ellipse', 'filter', 'font', 'g', 'glyph', 'glyphref', 'hkern', 'image', 'line', 'lineargradient', 'marker', 'mask', 'metadata', 'mpath', 'path', 'pattern', 'polygon', 'polyline', 'radialgradient', 'rect', 'stop', 'style', 'switch', 'symbol', 'text', 'textpath', 'title', 'tref', 'tspan', 'video', 'view', 'vkern']);
  216. var svgFilters = freeze(['feBlend', 'feColorMatrix', 'feComponentTransfer', 'feComposite', 'feConvolveMatrix', 'feDiffuseLighting', 'feDisplacementMap', 'feDistantLight', 'feFlood', 'feFuncA', 'feFuncB', 'feFuncG', 'feFuncR', 'feGaussianBlur', 'feMerge', 'feMergeNode', 'feMorphology', 'feOffset', 'fePointLight', 'feSpecularLighting', 'feSpotLight', 'feTile', 'feTurbulence']);
  217. var mathMl = freeze(['math', 'menclose', 'merror', 'mfenced', 'mfrac', 'mglyph', 'mi', 'mlabeledtr', 'mmultiscripts', 'mn', 'mo', 'mover', 'mpadded', 'mphantom', 'mroot', 'mrow', 'ms', 'mspace', 'msqrt', 'mstyle', 'msub', 'msup', 'msubsup', 'mtable', 'mtd', 'mtext', 'mtr', 'munder', 'munderover']);
  218. var text = freeze(['#text']);
  219. var html$1 = freeze(['accept', 'action', 'align', 'alt', 'autocapitalize', 'autocomplete', 'autopictureinpicture', 'autoplay', 'background', 'bgcolor', 'border', 'capture', 'cellpadding', 'cellspacing', 'checked', 'cite', 'class', 'clear', 'color', 'cols', 'colspan', 'controls', 'controlslist', 'coords', 'crossorigin', 'datetime', 'decoding', 'default', 'dir', 'disabled', 'disablepictureinpicture', 'disableremoteplayback', 'download', 'draggable', 'enctype', 'enterkeyhint', 'face', 'for', 'headers', 'height', 'hidden', 'high', 'href', 'hreflang', 'id', 'inputmode', 'integrity', 'ismap', 'kind', 'label', 'lang', 'list', 'loading', 'loop', 'low', 'max', 'maxlength', 'media', 'method', 'min', 'minlength', 'multiple', 'muted', 'name', 'noshade', 'novalidate', 'nowrap', 'open', 'optimum', 'pattern', 'placeholder', 'playsinline', 'poster', 'preload', 'pubdate', 'radiogroup', 'readonly', 'rel', 'required', 'rev', 'reversed', 'role', 'rows', 'rowspan', 'spellcheck', 'scope', 'selected', 'shape', 'size', 'sizes', 'span', 'srclang', 'start', 'src', 'srcset', 'step', 'style', 'summary', 'tabindex', 'title', 'translate', 'type', 'usemap', 'valign', 'value', 'width', 'xmlns']);
  220. var svg$1 = freeze(['accent-height', 'accumulate', 'additive', 'alignment-baseline', 'ascent', 'attributename', 'attributetype', 'azimuth', 'basefrequency', 'baseline-shift', 'begin', 'bias', 'by', 'class', 'clip', 'clip-path', 'clip-rule', 'color', 'color-interpolation', 'color-interpolation-filters', 'color-profile', 'color-rendering', 'cx', 'cy', 'd', 'dx', 'dy', 'diffuseconstant', 'direction', 'display', 'divisor', 'dur', 'edgemode', 'elevation', 'end', 'fill', 'fill-opacity', 'fill-rule', 'filter', 'filterunits', 'flood-color', 'flood-opacity', 'font-family', 'font-size', 'font-size-adjust', 'font-stretch', 'font-style', 'font-variant', 'font-weight', 'fx', 'fy', 'g1', 'g2', 'glyph-name', 'glyphref', 'gradientunits', 'gradienttransform', 'height', 'href', 'id', 'image-rendering', 'in', 'in2', 'k', 'k1', 'k2', 'k3', 'k4', 'kerning', 'keypoints', 'keysplines', 'keytimes', 'lang', 'lengthadjust', 'letter-spacing', 'kernelmatrix', 'kernelunitlength', 'lighting-color', 'local', 'marker-end', 'marker-mid', 'marker-start', 'markerheight', 'markerunits', 'markerwidth', 'maskcontentunits', 'maskunits', 'max', 'mask', 'media', 'method', 'mode', 'min', 'name', 'numoctaves', 'offset', 'operator', 'opacity', 'order', 'orient', 'orientation', 'origin', 'overflow', 'paint-order', 'path', 'pathlength', 'patterncontentunits', 'patterntransform', 'patternunits', 'points', 'preservealpha', 'preserveaspectratio', 'primitiveunits', 'r', 'rx', 'ry', 'radius', 'refx', 'refy', 'repeatcount', 'repeatdur', 'restart', 'result', 'rotate', 'scale', 'seed', 'shape-rendering', 'specularconstant', 'specularexponent', 'spreadmethod', 'startoffset', 'stddeviation', 'stitchtiles', 'stop-color', 'stop-opacity', 'stroke-dasharray', 'stroke-dashoffset', 'stroke-linecap', 'stroke-linejoin', 'stroke-miterlimit', 'stroke-opacity', 'stroke', 'stroke-width', 'style', 'surfacescale', 'tabindex', 'targetx', 'targety', 'transform', 'text-anchor', 'text-decoration', 'text-rendering', 'textlength', 'type', 'u1', 'u2', 'unicode', 'values', 'viewbox', 'visibility', 'version', 'vert-adv-y', 'vert-origin-x', 'vert-origin-y', 'width', 'word-spacing', 'wrap', 'writing-mode', 'xchannelselector', 'ychannelselector', 'x', 'x1', 'x2', 'xmlns', 'y', 'y1', 'y2', 'z', 'zoomandpan']);
  221. var mathMl$1 = freeze(['accent', 'accentunder', 'align', 'bevelled', 'close', 'columnsalign', 'columnlines', 'columnspan', 'denomalign', 'depth', 'dir', 'display', 'displaystyle', 'encoding', 'fence', 'frame', 'height', 'href', 'id', 'largeop', 'length', 'linethickness', 'lspace', 'lquote', 'mathbackground', 'mathcolor', 'mathsize', 'mathvariant', 'maxsize', 'minsize', 'movablelimits', 'notation', 'numalign', 'open', 'rowalign', 'rowlines', 'rowspacing', 'rowspan', 'rspace', 'rquote', 'scriptlevel', 'scriptminsize', 'scriptsizemultiplier', 'selection', 'separator', 'separators', 'stretchy', 'subscriptshift', 'supscriptshift', 'symmetric', 'voffset', 'width', 'xmlns']);
  222. var xml = freeze(['xlink:href', 'xml:id', 'xlink:title', 'xml:space', 'xmlns:xlink']);
  223. // eslint-disable-next-line unicorn/better-regex
  224. var MUSTACHE_EXPR = seal(/\{\{[\s\S]*|[\s\S]*\}\}/gm); // Specify template detection regex for SAFE_FOR_TEMPLATES mode
  225. var ERB_EXPR = seal(/<%[\s\S]*|[\s\S]*%>/gm);
  226. var DATA_ATTR = seal(/^data-[\-\w.\u00B7-\uFFFF]/); // eslint-disable-line no-useless-escape
  227. var ARIA_ATTR = seal(/^aria-[\-\w]+$/); // eslint-disable-line no-useless-escape
  228. var IS_ALLOWED_URI = seal(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i // eslint-disable-line no-useless-escape
  229. );
  230. var IS_SCRIPT_OR_DATA = seal(/^(?:\w+script|data):/i);
  231. var ATTR_WHITESPACE = seal(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205f\u3000]/g // eslint-disable-line no-control-regex
  232. );
  233. var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
  234. function _toConsumableArray$1(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }
  235. var getGlobal = function getGlobal() {
  236. return typeof window === 'undefined' ? null : window;
  237. };
  238. /**
  239. * Creates a no-op policy for internal use only.
  240. * Don't export this function outside this module!
  241. * @param {?TrustedTypePolicyFactory} trustedTypes The policy factory.
  242. * @param {Document} document The document object (to determine policy name suffix)
  243. * @return {?TrustedTypePolicy} The policy created (or null, if Trusted Types
  244. * are not supported).
  245. */
  246. var _createTrustedTypesPolicy = function _createTrustedTypesPolicy(trustedTypes, document) {
  247. if ((typeof trustedTypes === 'undefined' ? 'undefined' : _typeof(trustedTypes)) !== 'object' || typeof trustedTypes.createPolicy !== 'function') {
  248. return null;
  249. }
  250. // Allow the callers to control the unique policy name
  251. // by adding a data-tt-policy-suffix to the script element with the DOMPurify.
  252. // Policy creation with duplicate names throws in Trusted Types.
  253. var suffix = null;
  254. var ATTR_NAME = 'data-tt-policy-suffix';
  255. if (document.currentScript && document.currentScript.hasAttribute(ATTR_NAME)) {
  256. suffix = document.currentScript.getAttribute(ATTR_NAME);
  257. }
  258. var policyName = 'dompurify' + (suffix ? '#' + suffix : '');
  259. try {
  260. return trustedTypes.createPolicy(policyName, {
  261. createHTML: function createHTML(html$$1) {
  262. return html$$1;
  263. }
  264. });
  265. } catch (_) {
  266. // Policy creation failed (most likely another DOMPurify script has
  267. // already run). Skip creating the policy, as this will only cause errors
  268. // if TT are enforced.
  269. console.warn('TrustedTypes policy ' + policyName + ' could not be created.');
  270. return null;
  271. }
  272. };
  273. function createDOMPurify() {
  274. var window = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : getGlobal();
  275. var DOMPurify = function DOMPurify(root) {
  276. return createDOMPurify(root);
  277. };
  278. /**
  279. * Version label, exposed for easier checks
  280. * if DOMPurify is up to date or not
  281. */
  282. DOMPurify.version = '2.0.12';
  283. /**
  284. * Array of elements that DOMPurify removed during sanitation.
  285. * Empty if nothing was removed.
  286. */
  287. DOMPurify.removed = [];
  288. if (!window || !window.document || window.document.nodeType !== 9) {
  289. // Not running in a browser, provide a factory function
  290. // so that you can pass your own Window
  291. DOMPurify.isSupported = false;
  292. return DOMPurify;
  293. }
  294. var originalDocument = window.document;
  295. var removeTitle = false;
  296. var document = window.document;
  297. var DocumentFragment = window.DocumentFragment,
  298. HTMLTemplateElement = window.HTMLTemplateElement,
  299. Node = window.Node,
  300. NodeFilter = window.NodeFilter,
  301. _window$NamedNodeMap = window.NamedNodeMap,
  302. NamedNodeMap = _window$NamedNodeMap === undefined ? window.NamedNodeMap || window.MozNamedAttrMap : _window$NamedNodeMap,
  303. Text = window.Text,
  304. Comment = window.Comment,
  305. DOMParser = window.DOMParser,
  306. trustedTypes = window.trustedTypes;
  307. // As per issue #47, the web-components registry is inherited by a
  308. // new document created via createHTMLDocument. As per the spec
  309. // (http://w3c.github.io/webcomponents/spec/custom/#creating-and-passing-registries)
  310. // a new empty registry is used when creating a template contents owner
  311. // document, so we use that as our parent document to ensure nothing
  312. // is inherited.
  313. if (typeof HTMLTemplateElement === 'function') {
  314. var template = document.createElement('template');
  315. if (template.content && template.content.ownerDocument) {
  316. document = template.content.ownerDocument;
  317. }
  318. }
  319. var trustedTypesPolicy = _createTrustedTypesPolicy(trustedTypes, originalDocument);
  320. var emptyHTML = trustedTypesPolicy && RETURN_TRUSTED_TYPE ? trustedTypesPolicy.createHTML('') : '';
  321. var _document = document,
  322. implementation = _document.implementation,
  323. createNodeIterator = _document.createNodeIterator,
  324. getElementsByTagName = _document.getElementsByTagName,
  325. createDocumentFragment = _document.createDocumentFragment;
  326. var importNode = originalDocument.importNode;
  327. var hooks = {};
  328. /**
  329. * Expose whether this browser supports running the full DOMPurify.
  330. */
  331. DOMPurify.isSupported = implementation && typeof implementation.createHTMLDocument !== 'undefined' && document.documentMode !== 9;
  332. var MUSTACHE_EXPR$$1 = MUSTACHE_EXPR,
  333. ERB_EXPR$$1 = ERB_EXPR,
  334. DATA_ATTR$$1 = DATA_ATTR,
  335. ARIA_ATTR$$1 = ARIA_ATTR,
  336. IS_SCRIPT_OR_DATA$$1 = IS_SCRIPT_OR_DATA,
  337. ATTR_WHITESPACE$$1 = ATTR_WHITESPACE;
  338. var IS_ALLOWED_URI$$1 = IS_ALLOWED_URI;
  339. /**
  340. * We consider the elements and attributes below to be safe. Ideally
  341. * don't add any new ones but feel free to remove unwanted ones.
  342. */
  343. /* allowed element names */
  344. var ALLOWED_TAGS = null;
  345. var DEFAULT_ALLOWED_TAGS = addToSet({}, [].concat(_toConsumableArray$1(html), _toConsumableArray$1(svg), _toConsumableArray$1(svgFilters), _toConsumableArray$1(mathMl), _toConsumableArray$1(text)));
  346. /* Allowed attribute names */
  347. var ALLOWED_ATTR = null;
  348. var DEFAULT_ALLOWED_ATTR = addToSet({}, [].concat(_toConsumableArray$1(html$1), _toConsumableArray$1(svg$1), _toConsumableArray$1(mathMl$1), _toConsumableArray$1(xml)));
  349. /* Explicitly forbidden tags (overrides ALLOWED_TAGS/ADD_TAGS) */
  350. var FORBID_TAGS = null;
  351. /* Explicitly forbidden attributes (overrides ALLOWED_ATTR/ADD_ATTR) */
  352. var FORBID_ATTR = null;
  353. /* Decide if ARIA attributes are okay */
  354. var ALLOW_ARIA_ATTR = true;
  355. /* Decide if custom data attributes are okay */
  356. var ALLOW_DATA_ATTR = true;
  357. /* Decide if unknown protocols are okay */
  358. var ALLOW_UNKNOWN_PROTOCOLS = false;
  359. /* Output should be safe for jQuery's $() factory? */
  360. var SAFE_FOR_JQUERY = false;
  361. /* Output should be safe for common template engines.
  362. * This means, DOMPurify removes data attributes, mustaches and ERB
  363. */
  364. var SAFE_FOR_TEMPLATES = false;
  365. /* Decide if document with <html>... should be returned */
  366. var WHOLE_DOCUMENT = false;
  367. /* Track whether config is already set on this instance of DOMPurify. */
  368. var SET_CONFIG = false;
  369. /* Decide if all elements (e.g. style, script) must be children of
  370. * document.body. By default, browsers might move them to document.head */
  371. var FORCE_BODY = false;
  372. /* Decide if a DOM `HTMLBodyElement` should be returned, instead of a html
  373. * string (or a TrustedHTML object if Trusted Types are supported).
  374. * If `WHOLE_DOCUMENT` is enabled a `HTMLHtmlElement` will be returned instead
  375. */
  376. var RETURN_DOM = false;
  377. /* Decide if a DOM `DocumentFragment` should be returned, instead of a html
  378. * string (or a TrustedHTML object if Trusted Types are supported) */
  379. var RETURN_DOM_FRAGMENT = false;
  380. /* If `RETURN_DOM` or `RETURN_DOM_FRAGMENT` is enabled, decide if the returned DOM
  381. * `Node` is imported into the current `Document`. If this flag is not enabled the
  382. * `Node` will belong (its ownerDocument) to a fresh `HTMLDocument`, created by
  383. * DOMPurify. */
  384. var RETURN_DOM_IMPORT = false;
  385. /* Try to return a Trusted Type object instead of a string, retrun a string in
  386. * case Trusted Types are not supported */
  387. var RETURN_TRUSTED_TYPE = false;
  388. /* Output should be free from DOM clobbering attacks? */
  389. var SANITIZE_DOM = true;
  390. /* Keep element content when removing element? */
  391. var KEEP_CONTENT = true;
  392. /* If a `Node` is passed to sanitize(), then performs sanitization in-place instead
  393. * of importing it into a new Document and returning a sanitized copy */
  394. var IN_PLACE = false;
  395. /* Allow usage of profiles like html, svg and mathMl */
  396. var USE_PROFILES = {};
  397. /* Tags to ignore content of when KEEP_CONTENT is true */
  398. var FORBID_CONTENTS = addToSet({}, ['annotation-xml', 'audio', 'colgroup', 'desc', 'foreignobject', 'head', 'iframe', 'math', 'mi', 'mn', 'mo', 'ms', 'mtext', 'noembed', 'noframes', 'plaintext', 'script', 'style', 'svg', 'template', 'thead', 'title', 'video', 'xmp']);
  399. /* Tags that are safe for data: URIs */
  400. var DATA_URI_TAGS = null;
  401. var DEFAULT_DATA_URI_TAGS = addToSet({}, ['audio', 'video', 'img', 'source', 'image', 'track']);
  402. /* Attributes safe for values like "javascript:" */
  403. var URI_SAFE_ATTRIBUTES = null;
  404. var DEFAULT_URI_SAFE_ATTRIBUTES = addToSet({}, ['alt', 'class', 'for', 'id', 'label', 'name', 'pattern', 'placeholder', 'summary', 'title', 'value', 'style', 'xmlns']);
  405. /* Keep a reference to config to pass to hooks */
  406. var CONFIG = null;
  407. /* Ideally, do not touch anything below this line */
  408. /* ______________________________________________ */
  409. var formElement = document.createElement('form');
  410. /**
  411. * _parseConfig
  412. *
  413. * @param {Object} cfg optional config literal
  414. */
  415. // eslint-disable-next-line complexity
  416. var _parseConfig = function _parseConfig(cfg) {
  417. if (CONFIG && CONFIG === cfg) {
  418. return;
  419. }
  420. /* Shield configuration object from tampering */
  421. if (!cfg || (typeof cfg === 'undefined' ? 'undefined' : _typeof(cfg)) !== 'object') {
  422. cfg = {};
  423. }
  424. /* Set configuration parameters */
  425. ALLOWED_TAGS = 'ALLOWED_TAGS' in cfg ? addToSet({}, cfg.ALLOWED_TAGS) : DEFAULT_ALLOWED_TAGS;
  426. ALLOWED_ATTR = 'ALLOWED_ATTR' in cfg ? addToSet({}, cfg.ALLOWED_ATTR) : DEFAULT_ALLOWED_ATTR;
  427. URI_SAFE_ATTRIBUTES = 'ADD_URI_SAFE_ATTR' in cfg ? addToSet(clone(DEFAULT_URI_SAFE_ATTRIBUTES), cfg.ADD_URI_SAFE_ATTR) : DEFAULT_URI_SAFE_ATTRIBUTES;
  428. DATA_URI_TAGS = 'ADD_DATA_URI_TAGS' in cfg ? addToSet(clone(DEFAULT_DATA_URI_TAGS), cfg.ADD_DATA_URI_TAGS) : DEFAULT_DATA_URI_TAGS;
  429. FORBID_TAGS = 'FORBID_TAGS' in cfg ? addToSet({}, cfg.FORBID_TAGS) : {};
  430. FORBID_ATTR = 'FORBID_ATTR' in cfg ? addToSet({}, cfg.FORBID_ATTR) : {};
  431. USE_PROFILES = 'USE_PROFILES' in cfg ? cfg.USE_PROFILES : false;
  432. ALLOW_ARIA_ATTR = cfg.ALLOW_ARIA_ATTR !== false; // Default true
  433. ALLOW_DATA_ATTR = cfg.ALLOW_DATA_ATTR !== false; // Default true
  434. ALLOW_UNKNOWN_PROTOCOLS = cfg.ALLOW_UNKNOWN_PROTOCOLS || false; // Default false
  435. SAFE_FOR_JQUERY = cfg.SAFE_FOR_JQUERY || false; // Default false
  436. SAFE_FOR_TEMPLATES = cfg.SAFE_FOR_TEMPLATES || false; // Default false
  437. WHOLE_DOCUMENT = cfg.WHOLE_DOCUMENT || false; // Default false
  438. RETURN_DOM = cfg.RETURN_DOM || false; // Default false
  439. RETURN_DOM_FRAGMENT = cfg.RETURN_DOM_FRAGMENT || false; // Default false
  440. RETURN_DOM_IMPORT = cfg.RETURN_DOM_IMPORT || false; // Default false
  441. RETURN_TRUSTED_TYPE = cfg.RETURN_TRUSTED_TYPE || false; // Default false
  442. FORCE_BODY = cfg.FORCE_BODY || false; // Default false
  443. SANITIZE_DOM = cfg.SANITIZE_DOM !== false; // Default true
  444. KEEP_CONTENT = cfg.KEEP_CONTENT !== false; // Default true
  445. IN_PLACE = cfg.IN_PLACE || false; // Default false
  446. IS_ALLOWED_URI$$1 = cfg.ALLOWED_URI_REGEXP || IS_ALLOWED_URI$$1;
  447. if (SAFE_FOR_TEMPLATES) {
  448. ALLOW_DATA_ATTR = false;
  449. }
  450. if (RETURN_DOM_FRAGMENT) {
  451. RETURN_DOM = true;
  452. }
  453. /* Parse profile info */
  454. if (USE_PROFILES) {
  455. ALLOWED_TAGS = addToSet({}, [].concat(_toConsumableArray$1(text)));
  456. ALLOWED_ATTR = [];
  457. if (USE_PROFILES.html === true) {
  458. addToSet(ALLOWED_TAGS, html);
  459. addToSet(ALLOWED_ATTR, html$1);
  460. }
  461. if (USE_PROFILES.svg === true) {
  462. addToSet(ALLOWED_TAGS, svg);
  463. addToSet(ALLOWED_ATTR, svg$1);
  464. addToSet(ALLOWED_ATTR, xml);
  465. }
  466. if (USE_PROFILES.svgFilters === true) {
  467. addToSet(ALLOWED_TAGS, svgFilters);
  468. addToSet(ALLOWED_ATTR, svg$1);
  469. addToSet(ALLOWED_ATTR, xml);
  470. }
  471. if (USE_PROFILES.mathMl === true) {
  472. addToSet(ALLOWED_TAGS, mathMl);
  473. addToSet(ALLOWED_ATTR, mathMl$1);
  474. addToSet(ALLOWED_ATTR, xml);
  475. }
  476. }
  477. /* Merge configuration parameters */
  478. if (cfg.ADD_TAGS) {
  479. if (ALLOWED_TAGS === DEFAULT_ALLOWED_TAGS) {
  480. ALLOWED_TAGS = clone(ALLOWED_TAGS);
  481. }
  482. addToSet(ALLOWED_TAGS, cfg.ADD_TAGS);
  483. }
  484. if (cfg.ADD_ATTR) {
  485. if (ALLOWED_ATTR === DEFAULT_ALLOWED_ATTR) {
  486. ALLOWED_ATTR = clone(ALLOWED_ATTR);
  487. }
  488. addToSet(ALLOWED_ATTR, cfg.ADD_ATTR);
  489. }
  490. if (cfg.ADD_URI_SAFE_ATTR) {
  491. addToSet(URI_SAFE_ATTRIBUTES, cfg.ADD_URI_SAFE_ATTR);
  492. }
  493. /* Add #text in case KEEP_CONTENT is set to true */
  494. if (KEEP_CONTENT) {
  495. ALLOWED_TAGS['#text'] = true;
  496. }
  497. /* Add html, head and body to ALLOWED_TAGS in case WHOLE_DOCUMENT is true */
  498. if (WHOLE_DOCUMENT) {
  499. addToSet(ALLOWED_TAGS, ['html', 'head', 'body']);
  500. }
  501. /* Add tbody to ALLOWED_TAGS in case tables are permitted, see #286, #365 */
  502. if (ALLOWED_TAGS.table) {
  503. addToSet(ALLOWED_TAGS, ['tbody']);
  504. delete FORBID_TAGS.tbody;
  505. }
  506. // Prevent further manipulation of configuration.
  507. // Not available in IE8, Safari 5, etc.
  508. if (freeze) {
  509. freeze(cfg);
  510. }
  511. CONFIG = cfg;
  512. };
  513. /**
  514. * _forceRemove
  515. *
  516. * @param {Node} node a DOM node
  517. */
  518. var _forceRemove = function _forceRemove(node) {
  519. arrayPush(DOMPurify.removed, { element: node });
  520. try {
  521. // eslint-disable-next-line unicorn/prefer-node-remove
  522. node.parentNode.removeChild(node);
  523. } catch (_) {
  524. node.outerHTML = emptyHTML;
  525. }
  526. };
  527. /**
  528. * _removeAttribute
  529. *
  530. * @param {String} name an Attribute name
  531. * @param {Node} node a DOM node
  532. */
  533. var _removeAttribute = function _removeAttribute(name, node) {
  534. try {
  535. arrayPush(DOMPurify.removed, {
  536. attribute: node.getAttributeNode(name),
  537. from: node
  538. });
  539. } catch (_) {
  540. arrayPush(DOMPurify.removed, {
  541. attribute: null,
  542. from: node
  543. });
  544. }
  545. node.removeAttribute(name);
  546. };
  547. /**
  548. * _initDocument
  549. *
  550. * @param {String} dirty a string of dirty markup
  551. * @return {Document} a DOM, filled with the dirty markup
  552. */
  553. var _initDocument = function _initDocument(dirty) {
  554. /* Create a HTML document */
  555. var doc = void 0;
  556. var leadingWhitespace = void 0;
  557. if (FORCE_BODY) {
  558. dirty = '<remove></remove>' + dirty;
  559. } else {
  560. /* If FORCE_BODY isn't used, leading whitespace needs to be preserved manually */
  561. var matches = stringMatch(dirty, /^[\r\n\t ]+/);
  562. leadingWhitespace = matches && matches[0];
  563. }
  564. var dirtyPayload = trustedTypesPolicy ? trustedTypesPolicy.createHTML(dirty) : dirty;
  565. /* Use the DOMParser API by default, fallback later if needs be */
  566. try {
  567. doc = new DOMParser().parseFromString(dirtyPayload, 'text/html');
  568. } catch (_) {}
  569. /* Remove title to fix a mXSS bug in older MS Edge */
  570. if (removeTitle) {
  571. addToSet(FORBID_TAGS, ['title']);
  572. }
  573. /* Use createHTMLDocument in case DOMParser is not available */
  574. if (!doc || !doc.documentElement) {
  575. doc = implementation.createHTMLDocument('');
  576. var _doc = doc,
  577. body = _doc.body;
  578. body.parentNode.removeChild(body.parentNode.firstElementChild);
  579. body.outerHTML = dirtyPayload;
  580. }
  581. if (dirty && leadingWhitespace) {
  582. doc.body.insertBefore(document.createTextNode(leadingWhitespace), doc.body.childNodes[0] || null);
  583. }
  584. /* Work on whole document or just its body */
  585. return getElementsByTagName.call(doc, WHOLE_DOCUMENT ? 'html' : 'body')[0];
  586. };
  587. /* Here we test for a broken feature in Edge that might cause mXSS */
  588. if (DOMPurify.isSupported) {
  589. (function () {
  590. try {
  591. var doc = _initDocument('<x/><title>&lt;/title&gt;&lt;img&gt;');
  592. if (regExpTest(/<\/title/, doc.querySelector('title').innerHTML)) {
  593. removeTitle = true;
  594. }
  595. } catch (_) {}
  596. })();
  597. }
  598. /**
  599. * _createIterator
  600. *
  601. * @param {Document} root document/fragment to create iterator for
  602. * @return {Iterator} iterator instance
  603. */
  604. var _createIterator = function _createIterator(root) {
  605. return createNodeIterator.call(root.ownerDocument || root, root, NodeFilter.SHOW_ELEMENT | NodeFilter.SHOW_COMMENT | NodeFilter.SHOW_TEXT, function () {
  606. return NodeFilter.FILTER_ACCEPT;
  607. }, false);
  608. };
  609. /**
  610. * _isClobbered
  611. *
  612. * @param {Node} elm element to check for clobbering attacks
  613. * @return {Boolean} true if clobbered, false if safe
  614. */
  615. var _isClobbered = function _isClobbered(elm) {
  616. if (elm instanceof Text || elm instanceof Comment) {
  617. return false;
  618. }
  619. if (typeof elm.nodeName !== 'string' || typeof elm.textContent !== 'string' || typeof elm.removeChild !== 'function' || !(elm.attributes instanceof NamedNodeMap) || typeof elm.removeAttribute !== 'function' || typeof elm.setAttribute !== 'function' || typeof elm.namespaceURI !== 'string') {
  620. return true;
  621. }
  622. return false;
  623. };
  624. /**
  625. * _isNode
  626. *
  627. * @param {Node} obj object to check whether it's a DOM node
  628. * @return {Boolean} true is object is a DOM node
  629. */
  630. var _isNode = function _isNode(object) {
  631. return (typeof Node === 'undefined' ? 'undefined' : _typeof(Node)) === 'object' ? object instanceof Node : object && (typeof object === 'undefined' ? 'undefined' : _typeof(object)) === 'object' && typeof object.nodeType === 'number' && typeof object.nodeName === 'string';
  632. };
  633. /**
  634. * _executeHook
  635. * Execute user configurable hooks
  636. *
  637. * @param {String} entryPoint Name of the hook's entry point
  638. * @param {Node} currentNode node to work on with the hook
  639. * @param {Object} data additional hook parameters
  640. */
  641. var _executeHook = function _executeHook(entryPoint, currentNode, data) {
  642. if (!hooks[entryPoint]) {
  643. return;
  644. }
  645. arrayForEach(hooks[entryPoint], function (hook) {
  646. hook.call(DOMPurify, currentNode, data, CONFIG);
  647. });
  648. };
  649. /**
  650. * _sanitizeElements
  651. *
  652. * @protect nodeName
  653. * @protect textContent
  654. * @protect removeChild
  655. *
  656. * @param {Node} currentNode to check for permission to exist
  657. * @return {Boolean} true if node was killed, false if left alive
  658. */
  659. // eslint-disable-next-line complexity
  660. var _sanitizeElements = function _sanitizeElements(currentNode) {
  661. var content = void 0;
  662. /* Execute a hook if present */
  663. _executeHook('beforeSanitizeElements', currentNode, null);
  664. /* Check if element is clobbered or can clobber */
  665. if (_isClobbered(currentNode)) {
  666. _forceRemove(currentNode);
  667. return true;
  668. }
  669. /* Now let's check the element's type and name */
  670. var tagName = stringToLowerCase(currentNode.nodeName);
  671. /* Execute a hook if present */
  672. _executeHook('uponSanitizeElement', currentNode, {
  673. tagName: tagName,
  674. allowedTags: ALLOWED_TAGS
  675. });
  676. /* Take care of an mXSS pattern using p, br inside svg, math */
  677. if ((tagName === 'svg' || tagName === 'math') && currentNode.querySelectorAll('p, br').length !== 0) {
  678. _forceRemove(currentNode);
  679. return true;
  680. }
  681. /* Remove element if anything forbids its presence */
  682. if (!ALLOWED_TAGS[tagName] || FORBID_TAGS[tagName]) {
  683. /* Keep content except for bad-listed elements */
  684. if (KEEP_CONTENT && !FORBID_CONTENTS[tagName] && typeof currentNode.insertAdjacentHTML === 'function') {
  685. try {
  686. var htmlToInsert = currentNode.innerHTML;
  687. currentNode.insertAdjacentHTML('AfterEnd', trustedTypesPolicy ? trustedTypesPolicy.createHTML(htmlToInsert) : htmlToInsert);
  688. } catch (_) {}
  689. }
  690. _forceRemove(currentNode);
  691. return true;
  692. }
  693. /* Remove in case a noscript/noembed XSS is suspected */
  694. if (tagName === 'noscript' && regExpTest(/<\/noscript/i, currentNode.innerHTML)) {
  695. _forceRemove(currentNode);
  696. return true;
  697. }
  698. if (tagName === 'noembed' && regExpTest(/<\/noembed/i, currentNode.innerHTML)) {
  699. _forceRemove(currentNode);
  700. return true;
  701. }
  702. /* Convert markup to cover jQuery behavior */
  703. if (SAFE_FOR_JQUERY && !currentNode.firstElementChild && (!currentNode.content || !currentNode.content.firstElementChild) && regExpTest(/</g, currentNode.textContent)) {
  704. arrayPush(DOMPurify.removed, { element: currentNode.cloneNode() });
  705. if (currentNode.innerHTML) {
  706. currentNode.innerHTML = stringReplace(currentNode.innerHTML, /</g, '&lt;');
  707. } else {
  708. currentNode.innerHTML = stringReplace(currentNode.textContent, /</g, '&lt;');
  709. }
  710. }
  711. /* Sanitize element content to be template-safe */
  712. if (SAFE_FOR_TEMPLATES && currentNode.nodeType === 3) {
  713. /* Get the element's text content */
  714. content = currentNode.textContent;
  715. content = stringReplace(content, MUSTACHE_EXPR$$1, ' ');
  716. content = stringReplace(content, ERB_EXPR$$1, ' ');
  717. if (currentNode.textContent !== content) {
  718. arrayPush(DOMPurify.removed, { element: currentNode.cloneNode() });
  719. currentNode.textContent = content;
  720. }
  721. }
  722. /* Execute a hook if present */
  723. _executeHook('afterSanitizeElements', currentNode, null);
  724. return false;
  725. };
  726. /**
  727. * _isValidAttribute
  728. *
  729. * @param {string} lcTag Lowercase tag name of containing element.
  730. * @param {string} lcName Lowercase attribute name.
  731. * @param {string} value Attribute value.
  732. * @return {Boolean} Returns true if `value` is valid, otherwise false.
  733. */
  734. // eslint-disable-next-line complexity
  735. var _isValidAttribute = function _isValidAttribute(lcTag, lcName, value) {
  736. /* Make sure attribute cannot clobber */
  737. if (SANITIZE_DOM && (lcName === 'id' || lcName === 'name') && (value in document || value in formElement)) {
  738. return false;
  739. }
  740. /* Allow valid data-* attributes: At least one character after "-"
  741. (https://html.spec.whatwg.org/multipage/dom.html#embedding-custom-non-visible-data-with-the-data-*-attributes)
  742. XML-compatible (https://html.spec.whatwg.org/multipage/infrastructure.html#xml-compatible and http://www.w3.org/TR/xml/#d0e804)
  743. We don't need to check the value; it's always URI safe. */
  744. if (ALLOW_DATA_ATTR && regExpTest(DATA_ATTR$$1, lcName)) ; else if (ALLOW_ARIA_ATTR && regExpTest(ARIA_ATTR$$1, lcName)) ; else if (!ALLOWED_ATTR[lcName] || FORBID_ATTR[lcName]) {
  745. return false;
  746. /* Check value is safe. First, is attr inert? If so, is safe */
  747. } else if (URI_SAFE_ATTRIBUTES[lcName]) ; else if (regExpTest(IS_ALLOWED_URI$$1, stringReplace(value, ATTR_WHITESPACE$$1, ''))) ; else if ((lcName === 'src' || lcName === 'xlink:href' || lcName === 'href') && lcTag !== 'script' && stringIndexOf(value, 'data:') === 0 && DATA_URI_TAGS[lcTag]) ; else if (ALLOW_UNKNOWN_PROTOCOLS && !regExpTest(IS_SCRIPT_OR_DATA$$1, stringReplace(value, ATTR_WHITESPACE$$1, ''))) ; else if (!value) ; else {
  748. return false;
  749. }
  750. return true;
  751. };
  752. /**
  753. * _sanitizeAttributes
  754. *
  755. * @protect attributes
  756. * @protect nodeName
  757. * @protect removeAttribute
  758. * @protect setAttribute
  759. *
  760. * @param {Node} currentNode to sanitize
  761. */
  762. // eslint-disable-next-line complexity
  763. var _sanitizeAttributes = function _sanitizeAttributes(currentNode) {
  764. var attr = void 0;
  765. var value = void 0;
  766. var lcName = void 0;
  767. var idAttr = void 0;
  768. var l = void 0;
  769. /* Execute a hook if present */
  770. _executeHook('beforeSanitizeAttributes', currentNode, null);
  771. var attributes = currentNode.attributes;
  772. /* Check if we have attributes; if not we might have a text node */
  773. if (!attributes) {
  774. return;
  775. }
  776. var hookEvent = {
  777. attrName: '',
  778. attrValue: '',
  779. keepAttr: true,
  780. allowedAttributes: ALLOWED_ATTR
  781. };
  782. l = attributes.length;
  783. /* Go backwards over all attributes; safely remove bad ones */
  784. while (l--) {
  785. attr = attributes[l];
  786. var _attr = attr,
  787. name = _attr.name,
  788. namespaceURI = _attr.namespaceURI;
  789. value = stringTrim(attr.value);
  790. lcName = stringToLowerCase(name);
  791. /* Execute a hook if present */
  792. hookEvent.attrName = lcName;
  793. hookEvent.attrValue = value;
  794. hookEvent.keepAttr = true;
  795. hookEvent.forceKeepAttr = undefined; // Allows developers to see this is a property they can set
  796. _executeHook('uponSanitizeAttribute', currentNode, hookEvent);
  797. value = hookEvent.attrValue;
  798. /* Did the hooks approve of the attribute? */
  799. if (hookEvent.forceKeepAttr) {
  800. continue;
  801. }
  802. /* Remove attribute */
  803. // Safari (iOS + Mac), last tested v8.0.5, crashes if you try to
  804. // remove a "name" attribute from an <img> tag that has an "id"
  805. // attribute at the time.
  806. if (lcName === 'name' && currentNode.nodeName === 'IMG' && attributes.id) {
  807. idAttr = attributes.id;
  808. attributes = arraySlice(attributes, []);
  809. _removeAttribute('id', currentNode);
  810. _removeAttribute(name, currentNode);
  811. if (arrayIndexOf(attributes, idAttr) > l) {
  812. currentNode.setAttribute('id', idAttr.value);
  813. }
  814. } else if (
  815. // This works around a bug in Safari, where input[type=file]
  816. // cannot be dynamically set after type has been removed
  817. currentNode.nodeName === 'INPUT' && lcName === 'type' && value === 'file' && hookEvent.keepAttr && (ALLOWED_ATTR[lcName] || !FORBID_ATTR[lcName])) {
  818. continue;
  819. } else {
  820. // This avoids a crash in Safari v9.0 with double-ids.
  821. // The trick is to first set the id to be empty and then to
  822. // remove the attribute
  823. if (name === 'id') {
  824. currentNode.setAttribute(name, '');
  825. }
  826. _removeAttribute(name, currentNode);
  827. }
  828. /* Did the hooks approve of the attribute? */
  829. if (!hookEvent.keepAttr) {
  830. continue;
  831. }
  832. /* Work around a security issue in jQuery 3.0 */
  833. if (SAFE_FOR_JQUERY && regExpTest(/\/>/i, value)) {
  834. _removeAttribute(name, currentNode);
  835. continue;
  836. }
  837. /* Take care of an mXSS pattern using namespace switches */
  838. if (regExpTest(/svg|math/i, currentNode.namespaceURI) && regExpTest(regExpCreate('</(' + arrayJoin(objectKeys(FORBID_CONTENTS), '|') + ')', 'i'), value)) {
  839. _removeAttribute(name, currentNode);
  840. continue;
  841. }
  842. /* Sanitize attribute content to be template-safe */
  843. if (SAFE_FOR_TEMPLATES) {
  844. value = stringReplace(value, MUSTACHE_EXPR$$1, ' ');
  845. value = stringReplace(value, ERB_EXPR$$1, ' ');
  846. }
  847. /* Is `value` valid for this attribute? */
  848. var lcTag = currentNode.nodeName.toLowerCase();
  849. if (!_isValidAttribute(lcTag, lcName, value)) {
  850. continue;
  851. }
  852. /* Handle invalid data-* attribute set by try-catching it */
  853. try {
  854. if (namespaceURI) {
  855. currentNode.setAttributeNS(namespaceURI, name, value);
  856. } else {
  857. /* Fallback to setAttribute() for browser-unrecognized namespaces e.g. "x-schema". */
  858. currentNode.setAttribute(name, value);
  859. }
  860. arrayPop(DOMPurify.removed);
  861. } catch (_) {}
  862. }
  863. /* Execute a hook if present */
  864. _executeHook('afterSanitizeAttributes', currentNode, null);
  865. };
  866. /**
  867. * _sanitizeShadowDOM
  868. *
  869. * @param {DocumentFragment} fragment to iterate over recursively
  870. */
  871. var _sanitizeShadowDOM = function _sanitizeShadowDOM(fragment) {
  872. var shadowNode = void 0;
  873. var shadowIterator = _createIterator(fragment);
  874. /* Execute a hook if present */
  875. _executeHook('beforeSanitizeShadowDOM', fragment, null);
  876. while (shadowNode = shadowIterator.nextNode()) {
  877. /* Execute a hook if present */
  878. _executeHook('uponSanitizeShadowNode', shadowNode, null);
  879. /* Sanitize tags and elements */
  880. if (_sanitizeElements(shadowNode)) {
  881. continue;
  882. }
  883. /* Deep shadow DOM detected */
  884. if (shadowNode.content instanceof DocumentFragment) {
  885. _sanitizeShadowDOM(shadowNode.content);
  886. }
  887. /* Check attributes, sanitize if necessary */
  888. _sanitizeAttributes(shadowNode);
  889. }
  890. /* Execute a hook if present */
  891. _executeHook('afterSanitizeShadowDOM', fragment, null);
  892. };
  893. /**
  894. * Sanitize
  895. * Public method providing core sanitation functionality
  896. *
  897. * @param {String|Node} dirty string or DOM node
  898. * @param {Object} configuration object
  899. */
  900. // eslint-disable-next-line complexity
  901. DOMPurify.sanitize = function (dirty, cfg) {
  902. var body = void 0;
  903. var importedNode = void 0;
  904. var currentNode = void 0;
  905. var oldNode = void 0;
  906. var returnNode = void 0;
  907. /* Make sure we have a string to sanitize.
  908. DO NOT return early, as this will return the wrong type if
  909. the user has requested a DOM object rather than a string */
  910. if (!dirty) {
  911. dirty = '<!-->';
  912. }
  913. /* Stringify, in case dirty is an object */
  914. if (typeof dirty !== 'string' && !_isNode(dirty)) {
  915. // eslint-disable-next-line no-negated-condition
  916. if (typeof dirty.toString !== 'function') {
  917. throw typeErrorCreate('toString is not a function');
  918. } else {
  919. dirty = dirty.toString();
  920. if (typeof dirty !== 'string') {
  921. throw typeErrorCreate('dirty is not a string, aborting');
  922. }
  923. }
  924. }
  925. /* Check we can run. Otherwise fall back or ignore */
  926. if (!DOMPurify.isSupported) {
  927. if (_typeof(window.toStaticHTML) === 'object' || typeof window.toStaticHTML === 'function') {
  928. if (typeof dirty === 'string') {
  929. return window.toStaticHTML(dirty);
  930. }
  931. if (_isNode(dirty)) {
  932. return window.toStaticHTML(dirty.outerHTML);
  933. }
  934. }
  935. return dirty;
  936. }
  937. /* Assign config vars */
  938. if (!SET_CONFIG) {
  939. _parseConfig(cfg);
  940. }
  941. /* Clean up removed elements */
  942. DOMPurify.removed = [];
  943. /* Check if dirty is correctly typed for IN_PLACE */
  944. if (typeof dirty === 'string') {
  945. IN_PLACE = false;
  946. }
  947. if (IN_PLACE) ; else if (dirty instanceof Node) {
  948. /* If dirty is a DOM element, append to an empty document to avoid
  949. elements being stripped by the parser */
  950. body = _initDocument('<!-->');
  951. importedNode = body.ownerDocument.importNode(dirty, true);
  952. if (importedNode.nodeType === 1 && importedNode.nodeName === 'BODY') {
  953. /* Node is already a body, use as is */
  954. body = importedNode;
  955. } else if (importedNode.nodeName === 'HTML') {
  956. body = importedNode;
  957. } else {
  958. // eslint-disable-next-line unicorn/prefer-node-append
  959. body.appendChild(importedNode);
  960. }
  961. } else {
  962. /* Exit directly if we have nothing to do */
  963. if (!RETURN_DOM && !SAFE_FOR_TEMPLATES && !WHOLE_DOCUMENT &&
  964. // eslint-disable-next-line unicorn/prefer-includes
  965. dirty.indexOf('<') === -1) {
  966. return trustedTypesPolicy && RETURN_TRUSTED_TYPE ? trustedTypesPolicy.createHTML(dirty) : dirty;
  967. }
  968. /* Initialize the document to work on */
  969. body = _initDocument(dirty);
  970. /* Check we have a DOM node from the data */
  971. if (!body) {
  972. return RETURN_DOM ? null : emptyHTML;
  973. }
  974. }
  975. /* Remove first element node (ours) if FORCE_BODY is set */
  976. if (body && FORCE_BODY) {
  977. _forceRemove(body.firstChild);
  978. }
  979. /* Get node iterator */
  980. var nodeIterator = _createIterator(IN_PLACE ? dirty : body);
  981. /* Now start iterating over the created document */
  982. while (currentNode = nodeIterator.nextNode()) {
  983. /* Fix IE's strange behavior with manipulated textNodes #89 */
  984. if (currentNode.nodeType === 3 && currentNode === oldNode) {
  985. continue;
  986. }
  987. /* Sanitize tags and elements */
  988. if (_sanitizeElements(currentNode)) {
  989. continue;
  990. }
  991. /* Shadow DOM detected, sanitize it */
  992. if (currentNode.content instanceof DocumentFragment) {
  993. _sanitizeShadowDOM(currentNode.content);
  994. }
  995. /* Check attributes, sanitize if necessary */
  996. _sanitizeAttributes(currentNode);
  997. oldNode = currentNode;
  998. }
  999. oldNode = null;
  1000. /* If we sanitized `dirty` in-place, return it. */
  1001. if (IN_PLACE) {
  1002. return dirty;
  1003. }
  1004. /* Return sanitized string or DOM */
  1005. if (RETURN_DOM) {
  1006. if (RETURN_DOM_FRAGMENT) {
  1007. returnNode = createDocumentFragment.call(body.ownerDocument);
  1008. while (body.firstChild) {
  1009. // eslint-disable-next-line unicorn/prefer-node-append
  1010. returnNode.appendChild(body.firstChild);
  1011. }
  1012. } else {
  1013. returnNode = body;
  1014. }
  1015. if (RETURN_DOM_IMPORT) {
  1016. /*
  1017. AdoptNode() is not used because internal state is not reset
  1018. (e.g. the past names map of a HTMLFormElement), this is safe
  1019. in theory but we would rather not risk another attack vector.
  1020. The state that is cloned by importNode() is explicitly defined
  1021. by the specs.
  1022. */
  1023. returnNode = importNode.call(originalDocument, returnNode, true);
  1024. }
  1025. return returnNode;
  1026. }
  1027. var serializedHTML = WHOLE_DOCUMENT ? body.outerHTML : body.innerHTML;
  1028. /* Sanitize final string template-safe */
  1029. if (SAFE_FOR_TEMPLATES) {
  1030. serializedHTML = stringReplace(serializedHTML, MUSTACHE_EXPR$$1, ' ');
  1031. serializedHTML = stringReplace(serializedHTML, ERB_EXPR$$1, ' ');
  1032. }
  1033. return trustedTypesPolicy && RETURN_TRUSTED_TYPE ? trustedTypesPolicy.createHTML(serializedHTML) : serializedHTML;
  1034. };
  1035. /**
  1036. * Public method to set the configuration once
  1037. * setConfig
  1038. *
  1039. * @param {Object} cfg configuration object
  1040. */
  1041. DOMPurify.setConfig = function (cfg) {
  1042. _parseConfig(cfg);
  1043. SET_CONFIG = true;
  1044. };
  1045. /**
  1046. * Public method to remove the configuration
  1047. * clearConfig
  1048. *
  1049. */
  1050. DOMPurify.clearConfig = function () {
  1051. CONFIG = null;
  1052. SET_CONFIG = false;
  1053. };
  1054. /**
  1055. * Public method to check if an attribute value is valid.
  1056. * Uses last set config, if any. Otherwise, uses config defaults.
  1057. * isValidAttribute
  1058. *
  1059. * @param {string} tag Tag name of containing element.
  1060. * @param {string} attr Attribute name.
  1061. * @param {string} value Attribute value.
  1062. * @return {Boolean} Returns true if `value` is valid. Otherwise, returns false.
  1063. */
  1064. DOMPurify.isValidAttribute = function (tag, attr, value) {
  1065. /* Initialize shared config vars if necessary. */
  1066. if (!CONFIG) {
  1067. _parseConfig({});
  1068. }
  1069. var lcTag = stringToLowerCase(tag);
  1070. var lcName = stringToLowerCase(attr);
  1071. return _isValidAttribute(lcTag, lcName, value);
  1072. };
  1073. /**
  1074. * AddHook
  1075. * Public method to add DOMPurify hooks
  1076. *
  1077. * @param {String} entryPoint entry point for the hook to add
  1078. * @param {Function} hookFunction function to execute
  1079. */
  1080. DOMPurify.addHook = function (entryPoint, hookFunction) {
  1081. if (typeof hookFunction !== 'function') {
  1082. return;
  1083. }
  1084. hooks[entryPoint] = hooks[entryPoint] || [];
  1085. arrayPush(hooks[entryPoint], hookFunction);
  1086. };
  1087. /**
  1088. * RemoveHook
  1089. * Public method to remove a DOMPurify hook at a given entryPoint
  1090. * (pops it from the stack of hooks if more are present)
  1091. *
  1092. * @param {String} entryPoint entry point for the hook to remove
  1093. */
  1094. DOMPurify.removeHook = function (entryPoint) {
  1095. if (hooks[entryPoint]) {
  1096. arrayPop(hooks[entryPoint]);
  1097. }
  1098. };
  1099. /**
  1100. * RemoveHooks
  1101. * Public method to remove all DOMPurify hooks at a given entryPoint
  1102. *
  1103. * @param {String} entryPoint entry point for the hooks to remove
  1104. */
  1105. DOMPurify.removeHooks = function (entryPoint) {
  1106. if (hooks[entryPoint]) {
  1107. hooks[entryPoint] = [];
  1108. }
  1109. };
  1110. /**
  1111. * RemoveAllHooks
  1112. * Public method to remove all DOMPurify hooks
  1113. *
  1114. */
  1115. DOMPurify.removeAllHooks = function () {
  1116. hooks = {};
  1117. };
  1118. return DOMPurify;
  1119. }
  1120. var purify = createDOMPurify();
  1121. return purify;
  1122. }));
  1123. //# sourceMappingURL=purify.js.map
  1124. /***/ }),
  1125. /***/ "./node_modules/marked/lib/marked.js":
  1126. /*!*******************************************!*\
  1127. !*** ./node_modules/marked/lib/marked.js ***!
  1128. \*******************************************/
  1129. /*! no static exports found */
  1130. /***/ (function(module, exports, __webpack_require__) {
  1131. /**
  1132. * marked - a markdown parser
  1133. * Copyright (c) 2011-2020, Christopher Jeffrey. (MIT Licensed)
  1134. * https://github.com/markedjs/marked
  1135. */
  1136. /**
  1137. * DO NOT EDIT THIS FILE
  1138. * The code in this file is generated from files in ./src/
  1139. */
  1140. (function (global, factory) {
  1141. true ? module.exports = factory() :
  1142. undefined;
  1143. }(this, (function () { 'use strict';
  1144. function _defineProperties(target, props) {
  1145. for (var i = 0; i < props.length; i++) {
  1146. var descriptor = props[i];
  1147. descriptor.enumerable = descriptor.enumerable || false;
  1148. descriptor.configurable = true;
  1149. if ("value" in descriptor) descriptor.writable = true;
  1150. Object.defineProperty(target, descriptor.key, descriptor);
  1151. }
  1152. }
  1153. function _createClass(Constructor, protoProps, staticProps) {
  1154. if (protoProps) _defineProperties(Constructor.prototype, protoProps);
  1155. if (staticProps) _defineProperties(Constructor, staticProps);
  1156. return Constructor;
  1157. }
  1158. function _unsupportedIterableToArray(o, minLen) {
  1159. if (!o) return;
  1160. if (typeof o === "string") return _arrayLikeToArray(o, minLen);
  1161. var n = Object.prototype.toString.call(o).slice(8, -1);
  1162. if (n === "Object" && o.constructor) n = o.constructor.name;
  1163. if (n === "Map" || n === "Set") return Array.from(o);
  1164. if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
  1165. }
  1166. function _arrayLikeToArray(arr, len) {
  1167. if (len == null || len > arr.length) len = arr.length;
  1168. for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
  1169. return arr2;
  1170. }
  1171. function _createForOfIteratorHelperLoose(o) {
  1172. var i = 0;
  1173. if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) {
  1174. if (Array.isArray(o) || (o = _unsupportedIterableToArray(o))) return function () {
  1175. if (i >= o.length) return {
  1176. done: true
  1177. };
  1178. return {
  1179. done: false,
  1180. value: o[i++]
  1181. };
  1182. };
  1183. throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
  1184. }
  1185. i = o[Symbol.iterator]();
  1186. return i.next.bind(i);
  1187. }
  1188. function createCommonjsModule(fn, module) {
  1189. return module = { exports: {} }, fn(module, module.exports), module.exports;
  1190. }
  1191. var defaults = createCommonjsModule(function (module) {
  1192. function getDefaults() {
  1193. return {
  1194. baseUrl: null,
  1195. breaks: false,
  1196. gfm: true,
  1197. headerIds: true,
  1198. headerPrefix: '',
  1199. highlight: null,
  1200. langPrefix: 'language-',
  1201. mangle: true,
  1202. pedantic: false,
  1203. renderer: null,
  1204. sanitize: false,
  1205. sanitizer: null,
  1206. silent: false,
  1207. smartLists: false,
  1208. smartypants: false,
  1209. tokenizer: null,
  1210. walkTokens: null,
  1211. xhtml: false
  1212. };
  1213. }
  1214. function changeDefaults(newDefaults) {
  1215. module.exports.defaults = newDefaults;
  1216. }
  1217. module.exports = {
  1218. defaults: getDefaults(),
  1219. getDefaults: getDefaults,
  1220. changeDefaults: changeDefaults
  1221. };
  1222. });
  1223. var defaults_1 = defaults.defaults;
  1224. var defaults_2 = defaults.getDefaults;
  1225. var defaults_3 = defaults.changeDefaults;
  1226. /**
  1227. * Helpers
  1228. */
  1229. var escapeTest = /[&<>"']/;
  1230. var escapeReplace = /[&<>"']/g;
  1231. var escapeTestNoEncode = /[<>"']|&(?!#?\w+;)/;
  1232. var escapeReplaceNoEncode = /[<>"']|&(?!#?\w+;)/g;
  1233. var escapeReplacements = {
  1234. '&': '&amp;',
  1235. '<': '&lt;',
  1236. '>': '&gt;',
  1237. '"': '&quot;',
  1238. "'": '&#39;'
  1239. };
  1240. var getEscapeReplacement = function getEscapeReplacement(ch) {
  1241. return escapeReplacements[ch];
  1242. };
  1243. function escape(html, encode) {
  1244. if (encode) {
  1245. if (escapeTest.test(html)) {
  1246. return html.replace(escapeReplace, getEscapeReplacement);
  1247. }
  1248. } else {
  1249. if (escapeTestNoEncode.test(html)) {
  1250. return html.replace(escapeReplaceNoEncode, getEscapeReplacement);
  1251. }
  1252. }
  1253. return html;
  1254. }
  1255. var unescapeTest = /&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig;
  1256. function unescape(html) {
  1257. // explicitly match decimal, hex, and named HTML entities
  1258. return html.replace(unescapeTest, function (_, n) {
  1259. n = n.toLowerCase();
  1260. if (n === 'colon') return ':';
  1261. if (n.charAt(0) === '#') {
  1262. return n.charAt(1) === 'x' ? String.fromCharCode(parseInt(n.substring(2), 16)) : String.fromCharCode(+n.substring(1));
  1263. }
  1264. return '';
  1265. });
  1266. }
  1267. var caret = /(^|[^\[])\^/g;
  1268. function edit(regex, opt) {
  1269. regex = regex.source || regex;
  1270. opt = opt || '';
  1271. var obj = {
  1272. replace: function replace(name, val) {
  1273. val = val.source || val;
  1274. val = val.replace(caret, '$1');
  1275. regex = regex.replace(name, val);
  1276. return obj;
  1277. },
  1278. getRegex: function getRegex() {
  1279. return new RegExp(regex, opt);
  1280. }
  1281. };
  1282. return obj;
  1283. }
  1284. var nonWordAndColonTest = /[^\w:]/g;
  1285. var originIndependentUrl = /^$|^[a-z][a-z0-9+.-]*:|^[?#]/i;
  1286. function cleanUrl(sanitize, base, href) {
  1287. if (sanitize) {
  1288. var prot;
  1289. try {
  1290. prot = decodeURIComponent(unescape(href)).replace(nonWordAndColonTest, '').toLowerCase();
  1291. } catch (e) {
  1292. return null;
  1293. }
  1294. if (prot.indexOf('javascript:') === 0 || prot.indexOf('vbscript:') === 0 || prot.indexOf('data:') === 0) {
  1295. return null;
  1296. }
  1297. }
  1298. if (base && !originIndependentUrl.test(href)) {
  1299. href = resolveUrl(base, href);
  1300. }
  1301. try {
  1302. href = encodeURI(href).replace(/%25/g, '%');
  1303. } catch (e) {
  1304. return null;
  1305. }
  1306. return href;
  1307. }
  1308. var baseUrls = {};
  1309. var justDomain = /^[^:]+:\/*[^/]*$/;
  1310. var protocol = /^([^:]+:)[\s\S]*$/;
  1311. var domain = /^([^:]+:\/*[^/]*)[\s\S]*$/;
  1312. function resolveUrl(base, href) {
  1313. if (!baseUrls[' ' + base]) {
  1314. // we can ignore everything in base after the last slash of its path component,
  1315. // but we might need to add _that_
  1316. // https://tools.ietf.org/html/rfc3986#section-3
  1317. if (justDomain.test(base)) {
  1318. baseUrls[' ' + base] = base + '/';
  1319. } else {
  1320. baseUrls[' ' + base] = rtrim(base, '/', true);
  1321. }
  1322. }
  1323. base = baseUrls[' ' + base];
  1324. var relativeBase = base.indexOf(':') === -1;
  1325. if (href.substring(0, 2) === '//') {
  1326. if (relativeBase) {
  1327. return href;
  1328. }
  1329. return base.replace(protocol, '$1') + href;
  1330. } else if (href.charAt(0) === '/') {
  1331. if (relativeBase) {
  1332. return href;
  1333. }
  1334. return base.replace(domain, '$1') + href;
  1335. } else {
  1336. return base + href;
  1337. }
  1338. }
  1339. var noopTest = {
  1340. exec: function noopTest() {}
  1341. };
  1342. function merge(obj) {
  1343. var i = 1,
  1344. target,
  1345. key;
  1346. for (; i < arguments.length; i++) {
  1347. target = arguments[i];
  1348. for (key in target) {
  1349. if (Object.prototype.hasOwnProperty.call(target, key)) {
  1350. obj[key] = target[key];
  1351. }
  1352. }
  1353. }
  1354. return obj;
  1355. }
  1356. function splitCells(tableRow, count) {
  1357. // ensure that every cell-delimiting pipe has a space
  1358. // before it to distinguish it from an escaped pipe
  1359. var row = tableRow.replace(/\|/g, function (match, offset, str) {
  1360. var escaped = false,
  1361. curr = offset;
  1362. while (--curr >= 0 && str[curr] === '\\') {
  1363. escaped = !escaped;
  1364. }
  1365. if (escaped) {
  1366. // odd number of slashes means | is escaped
  1367. // so we leave it alone
  1368. return '|';
  1369. } else {
  1370. // add space before unescaped |
  1371. return ' |';
  1372. }
  1373. }),
  1374. cells = row.split(/ \|/);
  1375. var i = 0;
  1376. if (cells.length > count) {
  1377. cells.splice(count);
  1378. } else {
  1379. while (cells.length < count) {
  1380. cells.push('');
  1381. }
  1382. }
  1383. for (; i < cells.length; i++) {
  1384. // leading or trailing whitespace is ignored per the gfm spec
  1385. cells[i] = cells[i].trim().replace(/\\\|/g, '|');
  1386. }
  1387. return cells;
  1388. } // Remove trailing 'c's. Equivalent to str.replace(/c*$/, '').
  1389. // /c*$/ is vulnerable to REDOS.
  1390. // invert: Remove suffix of non-c chars instead. Default falsey.
  1391. function rtrim(str, c, invert) {
  1392. var l = str.length;
  1393. if (l === 0) {
  1394. return '';
  1395. } // Length of suffix matching the invert condition.
  1396. var suffLen = 0; // Step left until we fail to match the invert condition.
  1397. while (suffLen < l) {
  1398. var currChar = str.charAt(l - suffLen - 1);
  1399. if (currChar === c && !invert) {
  1400. suffLen++;
  1401. } else if (currChar !== c && invert) {
  1402. suffLen++;
  1403. } else {
  1404. break;
  1405. }
  1406. }
  1407. return str.substr(0, l - suffLen);
  1408. }
  1409. function findClosingBracket(str, b) {
  1410. if (str.indexOf(b[1]) === -1) {
  1411. return -1;
  1412. }
  1413. var l = str.length;
  1414. var level = 0,
  1415. i = 0;
  1416. for (; i < l; i++) {
  1417. if (str[i] === '\\') {
  1418. i++;
  1419. } else if (str[i] === b[0]) {
  1420. level++;
  1421. } else if (str[i] === b[1]) {
  1422. level--;
  1423. if (level < 0) {
  1424. return i;
  1425. }
  1426. }
  1427. }
  1428. return -1;
  1429. }
  1430. function checkSanitizeDeprecation(opt) {
  1431. if (opt && opt.sanitize && !opt.silent) {
  1432. console.warn('marked(): sanitize and sanitizer parameters are deprecated since version 0.7.0, should not be used and will be removed in the future. Read more here: https://marked.js.org/#/USING_ADVANCED.md#options');
  1433. }
  1434. }
  1435. var helpers = {
  1436. escape: escape,
  1437. unescape: unescape,
  1438. edit: edit,
  1439. cleanUrl: cleanUrl,
  1440. resolveUrl: resolveUrl,
  1441. noopTest: noopTest,
  1442. merge: merge,
  1443. splitCells: splitCells,
  1444. rtrim: rtrim,
  1445. findClosingBracket: findClosingBracket,
  1446. checkSanitizeDeprecation: checkSanitizeDeprecation
  1447. };
  1448. var defaults$1 = defaults.defaults;
  1449. var rtrim$1 = helpers.rtrim,
  1450. splitCells$1 = helpers.splitCells,
  1451. _escape = helpers.escape,
  1452. findClosingBracket$1 = helpers.findClosingBracket;
  1453. function outputLink(cap, link, raw) {
  1454. var href = link.href;
  1455. var title = link.title ? _escape(link.title) : null;
  1456. if (cap[0].charAt(0) !== '!') {
  1457. return {
  1458. type: 'link',
  1459. raw: raw,
  1460. href: href,
  1461. title: title,
  1462. text: cap[1]
  1463. };
  1464. } else {
  1465. return {
  1466. type: 'image',
  1467. raw: raw,
  1468. text: _escape(cap[1]),
  1469. href: href,
  1470. title: title
  1471. };
  1472. }
  1473. }
  1474. function indentCodeCompensation(raw, text) {
  1475. var matchIndentToCode = raw.match(/^(\s+)(?:```)/);
  1476. if (matchIndentToCode === null) {
  1477. return text;
  1478. }
  1479. var indentToCode = matchIndentToCode[1];
  1480. return text.split('\n').map(function (node) {
  1481. var matchIndentInNode = node.match(/^\s+/);
  1482. if (matchIndentInNode === null) {
  1483. return node;
  1484. }
  1485. var indentInNode = matchIndentInNode[0];
  1486. if (indentInNode.length >= indentToCode.length) {
  1487. return node.slice(indentToCode.length);
  1488. }
  1489. return node;
  1490. }).join('\n');
  1491. }
  1492. /**
  1493. * Tokenizer
  1494. */
  1495. var Tokenizer_1 = /*#__PURE__*/function () {
  1496. function Tokenizer(options) {
  1497. this.options = options || defaults$1;
  1498. }
  1499. var _proto = Tokenizer.prototype;
  1500. _proto.space = function space(src) {
  1501. var cap = this.rules.block.newline.exec(src);
  1502. if (cap) {
  1503. if (cap[0].length > 1) {
  1504. return {
  1505. type: 'space',
  1506. raw: cap[0]
  1507. };
  1508. }
  1509. return {
  1510. raw: '\n'
  1511. };
  1512. }
  1513. };
  1514. _proto.code = function code(src, tokens) {
  1515. var cap = this.rules.block.code.exec(src);
  1516. if (cap) {
  1517. var lastToken = tokens[tokens.length - 1]; // An indented code block cannot interrupt a paragraph.
  1518. if (lastToken && lastToken.type === 'paragraph') {
  1519. return {
  1520. raw: cap[0],
  1521. text: cap[0].trimRight()
  1522. };
  1523. }
  1524. var text = cap[0].replace(/^ {4}/gm, '');
  1525. return {
  1526. type: 'code',
  1527. raw: cap[0],
  1528. codeBlockStyle: 'indented',
  1529. text: !this.options.pedantic ? rtrim$1(text, '\n') : text
  1530. };
  1531. }
  1532. };
  1533. _proto.fences = function fences(src) {
  1534. var cap = this.rules.block.fences.exec(src);
  1535. if (cap) {
  1536. var raw = cap[0];
  1537. var text = indentCodeCompensation(raw, cap[3] || '');
  1538. return {
  1539. type: 'code',
  1540. raw: raw,
  1541. lang: cap[2] ? cap[2].trim() : cap[2],
  1542. text: text
  1543. };
  1544. }
  1545. };
  1546. _proto.heading = function heading(src) {
  1547. var cap = this.rules.block.heading.exec(src);
  1548. if (cap) {
  1549. return {
  1550. type: 'heading',
  1551. raw: cap[0],
  1552. depth: cap[1].length,
  1553. text: cap[2]
  1554. };
  1555. }
  1556. };
  1557. _proto.nptable = function nptable(src) {
  1558. var cap = this.rules.block.nptable.exec(src);
  1559. if (cap) {
  1560. var item = {
  1561. type: 'table',
  1562. header: splitCells$1(cap[1].replace(/^ *| *\| *$/g, '')),
  1563. align: cap[2].replace(/^ *|\| *$/g, '').split(/ *\| */),
  1564. cells: cap[3] ? cap[3].replace(/\n$/, '').split('\n') : [],
  1565. raw: cap[0]
  1566. };
  1567. if (item.header.length === item.align.length) {
  1568. var l = item.align.length;
  1569. var i;
  1570. for (i = 0; i < l; i++) {
  1571. if (/^ *-+: *$/.test(item.align[i])) {
  1572. item.align[i] = 'right';
  1573. } else if (/^ *:-+: *$/.test(item.align[i])) {
  1574. item.align[i] = 'center';
  1575. } else if (/^ *:-+ *$/.test(item.align[i])) {
  1576. item.align[i] = 'left';
  1577. } else {
  1578. item.align[i] = null;
  1579. }
  1580. }
  1581. l = item.cells.length;
  1582. for (i = 0; i < l; i++) {
  1583. item.cells[i] = splitCells$1(item.cells[i], item.header.length);
  1584. }
  1585. return item;
  1586. }
  1587. }
  1588. };
  1589. _proto.hr = function hr(src) {
  1590. var cap = this.rules.block.hr.exec(src);
  1591. if (cap) {
  1592. return {
  1593. type: 'hr',
  1594. raw: cap[0]
  1595. };
  1596. }
  1597. };
  1598. _proto.blockquote = function blockquote(src) {
  1599. var cap = this.rules.block.blockquote.exec(src);
  1600. if (cap) {
  1601. var text = cap[0].replace(/^ *> ?/gm, '');
  1602. return {
  1603. type: 'blockquote',
  1604. raw: cap[0],
  1605. text: text
  1606. };
  1607. }
  1608. };
  1609. _proto.list = function list(src) {
  1610. var cap = this.rules.block.list.exec(src);
  1611. if (cap) {
  1612. var raw = cap[0];
  1613. var bull = cap[2];
  1614. var isordered = bull.length > 1;
  1615. var list = {
  1616. type: 'list',
  1617. raw: raw,
  1618. ordered: isordered,
  1619. start: isordered ? +bull : '',
  1620. loose: false,
  1621. items: []
  1622. }; // Get each top-level item.
  1623. var itemMatch = cap[0].match(this.rules.block.item);
  1624. var next = false,
  1625. item,
  1626. space,
  1627. b,
  1628. addBack,
  1629. loose,
  1630. istask,
  1631. ischecked;
  1632. var l = itemMatch.length;
  1633. for (var i = 0; i < l; i++) {
  1634. item = itemMatch[i];
  1635. raw = item; // Remove the list item's bullet
  1636. // so it is seen as the next token.
  1637. space = item.length;
  1638. item = item.replace(/^ *([*+-]|\d+\.) */, ''); // Outdent whatever the
  1639. // list item contains. Hacky.
  1640. if (~item.indexOf('\n ')) {
  1641. space -= item.length;
  1642. item = !this.options.pedantic ? item.replace(new RegExp('^ {1,' + space + '}', 'gm'), '') : item.replace(/^ {1,4}/gm, '');
  1643. } // Determine whether the next list item belongs here.
  1644. // Backpedal if it does not belong in this list.
  1645. if (i !== l - 1) {
  1646. b = this.rules.block.bullet.exec(itemMatch[i + 1])[0];
  1647. if (bull.length > 1 ? b.length === 1 : b.length > 1 || this.options.smartLists && b !== bull) {
  1648. addBack = itemMatch.slice(i + 1).join('\n');
  1649. list.raw = list.raw.substring(0, list.raw.length - addBack.length);
  1650. i = l - 1;
  1651. }
  1652. } // Determine whether item is loose or not.
  1653. // Use: /(^|\n)(?! )[^\n]+\n\n(?!\s*$)/
  1654. // for discount behavior.
  1655. loose = next || /\n\n(?!\s*$)/.test(item);
  1656. if (i !== l - 1) {
  1657. next = item.charAt(item.length - 1) === '\n';
  1658. if (!loose) loose = next;
  1659. }
  1660. if (loose) {
  1661. list.loose = true;
  1662. } // Check for task list items
  1663. istask = /^\[[ xX]\] /.test(item);
  1664. ischecked = undefined;
  1665. if (istask) {
  1666. ischecked = item[1] !== ' ';
  1667. item = item.replace(/^\[[ xX]\] +/, '');
  1668. }
  1669. list.items.push({
  1670. type: 'list_item',
  1671. raw: raw,
  1672. task: istask,
  1673. checked: ischecked,
  1674. loose: loose,
  1675. text: item
  1676. });
  1677. }
  1678. return list;
  1679. }
  1680. };
  1681. _proto.html = function html(src) {
  1682. var cap = this.rules.block.html.exec(src);
  1683. if (cap) {
  1684. return {
  1685. type: this.options.sanitize ? 'paragraph' : 'html',
  1686. raw: cap[0],
  1687. pre: !this.options.sanitizer && (cap[1] === 'pre' || cap[1] === 'script' || cap[1] === 'style'),
  1688. text: this.options.sanitize ? this.options.sanitizer ? this.options.sanitizer(cap[0]) : _escape(cap[0]) : cap[0]
  1689. };
  1690. }
  1691. };
  1692. _proto.def = function def(src) {
  1693. var cap = this.rules.block.def.exec(src);
  1694. if (cap) {
  1695. if (cap[3]) cap[3] = cap[3].substring(1, cap[3].length - 1);
  1696. var tag = cap[1].toLowerCase().replace(/\s+/g, ' ');
  1697. return {
  1698. tag: tag,
  1699. raw: cap[0],
  1700. href: cap[2],
  1701. title: cap[3]
  1702. };
  1703. }
  1704. };
  1705. _proto.table = function table(src) {
  1706. var cap = this.rules.block.table.exec(src);
  1707. if (cap) {
  1708. var item = {
  1709. type: 'table',
  1710. header: splitCells$1(cap[1].replace(/^ *| *\| *$/g, '')),
  1711. align: cap[2].replace(/^ *|\| *$/g, '').split(/ *\| */),
  1712. cells: cap[3] ? cap[3].replace(/\n$/, '').split('\n') : []
  1713. };
  1714. if (item.header.length === item.align.length) {
  1715. item.raw = cap[0];
  1716. var l = item.align.length;
  1717. var i;
  1718. for (i = 0; i < l; i++) {
  1719. if (/^ *-+: *$/.test(item.align[i])) {
  1720. item.align[i] = 'right';
  1721. } else if (/^ *:-+: *$/.test(item.align[i])) {
  1722. item.align[i] = 'center';
  1723. } else if (/^ *:-+ *$/.test(item.align[i])) {
  1724. item.align[i] = 'left';
  1725. } else {
  1726. item.align[i] = null;
  1727. }
  1728. }
  1729. l = item.cells.length;
  1730. for (i = 0; i < l; i++) {
  1731. item.cells[i] = splitCells$1(item.cells[i].replace(/^ *\| *| *\| *$/g, ''), item.header.length);
  1732. }
  1733. return item;
  1734. }
  1735. }
  1736. };
  1737. _proto.lheading = function lheading(src) {
  1738. var cap = this.rules.block.lheading.exec(src);
  1739. if (cap) {
  1740. return {
  1741. type: 'heading',
  1742. raw: cap[0],
  1743. depth: cap[2].charAt(0) === '=' ? 1 : 2,
  1744. text: cap[1]
  1745. };
  1746. }
  1747. };
  1748. _proto.paragraph = function paragraph(src) {
  1749. var cap = this.rules.block.paragraph.exec(src);
  1750. if (cap) {
  1751. return {
  1752. type: 'paragraph',
  1753. raw: cap[0],
  1754. text: cap[1].charAt(cap[1].length - 1) === '\n' ? cap[1].slice(0, -1) : cap[1]
  1755. };
  1756. }
  1757. };
  1758. _proto.text = function text(src, tokens) {
  1759. var cap = this.rules.block.text.exec(src);
  1760. if (cap) {
  1761. var lastToken = tokens[tokens.length - 1];
  1762. if (lastToken && lastToken.type === 'text') {
  1763. return {
  1764. raw: cap[0],
  1765. text: cap[0]
  1766. };
  1767. }
  1768. return {
  1769. type: 'text',
  1770. raw: cap[0],
  1771. text: cap[0]
  1772. };
  1773. }
  1774. };
  1775. _proto.escape = function escape(src) {
  1776. var cap = this.rules.inline.escape.exec(src);
  1777. if (cap) {
  1778. return {
  1779. type: 'escape',
  1780. raw: cap[0],
  1781. text: _escape(cap[1])
  1782. };
  1783. }
  1784. };
  1785. _proto.tag = function tag(src, inLink, inRawBlock) {
  1786. var cap = this.rules.inline.tag.exec(src);
  1787. if (cap) {
  1788. if (!inLink && /^<a /i.test(cap[0])) {
  1789. inLink = true;
  1790. } else if (inLink && /^<\/a>/i.test(cap[0])) {
  1791. inLink = false;
  1792. }
  1793. if (!inRawBlock && /^<(pre|code|kbd|script)(\s|>)/i.test(cap[0])) {
  1794. inRawBlock = true;
  1795. } else if (inRawBlock && /^<\/(pre|code|kbd|script)(\s|>)/i.test(cap[0])) {
  1796. inRawBlock = false;
  1797. }
  1798. return {
  1799. type: this.options.sanitize ? 'text' : 'html',
  1800. raw: cap[0],
  1801. inLink: inLink,
  1802. inRawBlock: inRawBlock,
  1803. text: this.options.sanitize ? this.options.sanitizer ? this.options.sanitizer(cap[0]) : _escape(cap[0]) : cap[0]
  1804. };
  1805. }
  1806. };
  1807. _proto.link = function link(src) {
  1808. var cap = this.rules.inline.link.exec(src);
  1809. if (cap) {
  1810. var lastParenIndex = findClosingBracket$1(cap[2], '()');
  1811. if (lastParenIndex > -1) {
  1812. var start = cap[0].indexOf('!') === 0 ? 5 : 4;
  1813. var linkLen = start + cap[1].length + lastParenIndex;
  1814. cap[2] = cap[2].substring(0, lastParenIndex);
  1815. cap[0] = cap[0].substring(0, linkLen).trim();
  1816. cap[3] = '';
  1817. }
  1818. var href = cap[2];
  1819. var title = '';
  1820. if (this.options.pedantic) {
  1821. var link = /^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(href);
  1822. if (link) {
  1823. href = link[1];
  1824. title = link[3];
  1825. } else {
  1826. title = '';
  1827. }
  1828. } else {
  1829. title = cap[3] ? cap[3].slice(1, -1) : '';
  1830. }
  1831. href = href.trim().replace(/^<([\s\S]*)>$/, '$1');
  1832. var token = outputLink(cap, {
  1833. href: href ? href.replace(this.rules.inline._escapes, '$1') : href,
  1834. title: title ? title.replace(this.rules.inline._escapes, '$1') : title
  1835. }, cap[0]);
  1836. return token;
  1837. }
  1838. };
  1839. _proto.reflink = function reflink(src, links) {
  1840. var cap;
  1841. if ((cap = this.rules.inline.reflink.exec(src)) || (cap = this.rules.inline.nolink.exec(src))) {
  1842. var link = (cap[2] || cap[1]).replace(/\s+/g, ' ');
  1843. link = links[link.toLowerCase()];
  1844. if (!link || !link.href) {
  1845. var text = cap[0].charAt(0);
  1846. return {
  1847. type: 'text',
  1848. raw: text,
  1849. text: text
  1850. };
  1851. }
  1852. var token = outputLink(cap, link, cap[0]);
  1853. return token;
  1854. }
  1855. };
  1856. _proto.strong = function strong(src) {
  1857. var cap = this.rules.inline.strong.exec(src);
  1858. if (cap) {
  1859. return {
  1860. type: 'strong',
  1861. raw: cap[0],
  1862. text: cap[4] || cap[3] || cap[2] || cap[1]
  1863. };
  1864. }
  1865. };
  1866. _proto.em = function em(src) {
  1867. var cap = this.rules.inline.em.exec(src);
  1868. if (cap) {
  1869. return {
  1870. type: 'em',
  1871. raw: cap[0],
  1872. text: cap[6] || cap[5] || cap[4] || cap[3] || cap[2] || cap[1]
  1873. };
  1874. }
  1875. };
  1876. _proto.codespan = function codespan(src) {
  1877. var cap = this.rules.inline.code.exec(src);
  1878. if (cap) {
  1879. var text = cap[2].replace(/\n/g, ' ');
  1880. var hasNonSpaceChars = /[^ ]/.test(text);
  1881. var hasSpaceCharsOnBothEnds = text.startsWith(' ') && text.endsWith(' ');
  1882. if (hasNonSpaceChars && hasSpaceCharsOnBothEnds) {
  1883. text = text.substring(1, text.length - 1);
  1884. }
  1885. text = _escape(text, true);
  1886. return {
  1887. type: 'codespan',
  1888. raw: cap[0],
  1889. text: text
  1890. };
  1891. }
  1892. };
  1893. _proto.br = function br(src) {
  1894. var cap = this.rules.inline.br.exec(src);
  1895. if (cap) {
  1896. return {
  1897. type: 'br',
  1898. raw: cap[0]
  1899. };
  1900. }
  1901. };
  1902. _proto.del = function del(src) {
  1903. var cap = this.rules.inline.del.exec(src);
  1904. if (cap) {
  1905. return {
  1906. type: 'del',
  1907. raw: cap[0],
  1908. text: cap[1]
  1909. };
  1910. }
  1911. };
  1912. _proto.autolink = function autolink(src, mangle) {
  1913. var cap = this.rules.inline.autolink.exec(src);
  1914. if (cap) {
  1915. var text, href;
  1916. if (cap[2] === '@') {
  1917. text = _escape(this.options.mangle ? mangle(cap[1]) : cap[1]);
  1918. href = 'mailto:' + text;
  1919. } else {
  1920. text = _escape(cap[1]);
  1921. href = text;
  1922. }
  1923. return {
  1924. type: 'link',
  1925. raw: cap[0],
  1926. text: text,
  1927. href: href,
  1928. tokens: [{
  1929. type: 'text',
  1930. raw: text,
  1931. text: text
  1932. }]
  1933. };
  1934. }
  1935. };
  1936. _proto.url = function url(src, mangle) {
  1937. var cap;
  1938. if (cap = this.rules.inline.url.exec(src)) {
  1939. var text, href;
  1940. if (cap[2] === '@') {
  1941. text = _escape(this.options.mangle ? mangle(cap[0]) : cap[0]);
  1942. href = 'mailto:' + text;
  1943. } else {
  1944. // do extended autolink path validation
  1945. var prevCapZero;
  1946. do {
  1947. prevCapZero = cap[0];
  1948. cap[0] = this.rules.inline._backpedal.exec(cap[0])[0];
  1949. } while (prevCapZero !== cap[0]);
  1950. text = _escape(cap[0]);
  1951. if (cap[1] === 'www.') {
  1952. href = 'http://' + text;
  1953. } else {
  1954. href = text;
  1955. }
  1956. }
  1957. return {
  1958. type: 'link',
  1959. raw: cap[0],
  1960. text: text,
  1961. href: href,
  1962. tokens: [{
  1963. type: 'text',
  1964. raw: text,
  1965. text: text
  1966. }]
  1967. };
  1968. }
  1969. };
  1970. _proto.inlineText = function inlineText(src, inRawBlock, smartypants) {
  1971. var cap = this.rules.inline.text.exec(src);
  1972. if (cap) {
  1973. var text;
  1974. if (inRawBlock) {
  1975. text = this.options.sanitize ? this.options.sanitizer ? this.options.sanitizer(cap[0]) : _escape(cap[0]) : cap[0];
  1976. } else {
  1977. text = _escape(this.options.smartypants ? smartypants(cap[0]) : cap[0]);
  1978. }
  1979. return {
  1980. type: 'text',
  1981. raw: cap[0],
  1982. text: text
  1983. };
  1984. }
  1985. };
  1986. return Tokenizer;
  1987. }();
  1988. var noopTest$1 = helpers.noopTest,
  1989. edit$1 = helpers.edit,
  1990. merge$1 = helpers.merge;
  1991. /**
  1992. * Block-Level Grammar
  1993. */
  1994. var block = {
  1995. newline: /^\n+/,
  1996. code: /^( {4}[^\n]+\n*)+/,
  1997. fences: /^ {0,3}(`{3,}(?=[^`\n]*\n)|~{3,})([^\n]*)\n(?:|([\s\S]*?)\n)(?: {0,3}\1[~`]* *(?:\n+|$)|$)/,
  1998. hr: /^ {0,3}((?:- *){3,}|(?:_ *){3,}|(?:\* *){3,})(?:\n+|$)/,
  1999. heading: /^ {0,3}(#{1,6}) +([^\n]*?)(?: +#+)? *(?:\n+|$)/,
  2000. blockquote: /^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,
  2001. list: /^( {0,3})(bull) [\s\S]+?(?:hr|def|\n{2,}(?! )(?!\1bull )\n*|\s*$)/,
  2002. html: '^ {0,3}(?:' // optional indentation
  2003. + '<(script|pre|style)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)' // (1)
  2004. + '|comment[^\\n]*(\\n+|$)' // (2)
  2005. + '|<\\?[\\s\\S]*?\\?>\\n*' // (3)
  2006. + '|<![A-Z][\\s\\S]*?>\\n*' // (4)
  2007. + '|<!\\[CDATA\\[[\\s\\S]*?\\]\\]>\\n*' // (5)
  2008. + '|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:\\n{2,}|$)' // (6)
  2009. + '|<(?!script|pre|style)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$)' // (7) open tag
  2010. + '|</(?!script|pre|style)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$)' // (7) closing tag
  2011. + ')',
  2012. def: /^ {0,3}\[(label)\]: *\n? *<?([^\s>]+)>?(?:(?: +\n? *| *\n *)(title))? *(?:\n+|$)/,
  2013. nptable: noopTest$1,
  2014. table: noopTest$1,
  2015. lheading: /^([^\n]+)\n {0,3}(=+|-+) *(?:\n+|$)/,
  2016. // regex template, placeholders will be replaced according to different paragraph
  2017. // interruption rules of commonmark and the original markdown spec:
  2018. _paragraph: /^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html)[^\n]+)*)/,
  2019. text: /^[^\n]+/
  2020. };
  2021. block._label = /(?!\s*\])(?:\\[\[\]]|[^\[\]])+/;
  2022. block._title = /(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/;
  2023. block.def = edit$1(block.def).replace('label', block._label).replace('title', block._title).getRegex();
  2024. block.bullet = /(?:[*+-]|\d{1,9}\.)/;
  2025. block.item = /^( *)(bull) ?[^\n]*(?:\n(?!\1bull ?)[^\n]*)*/;
  2026. block.item = edit$1(block.item, 'gm').replace(/bull/g, block.bullet).getRegex();
  2027. block.list = edit$1(block.list).replace(/bull/g, block.bullet).replace('hr', '\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))').replace('def', '\\n+(?=' + block.def.source + ')').getRegex();
  2028. block._tag = 'address|article|aside|base|basefont|blockquote|body|caption' + '|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption' + '|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe' + '|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option' + '|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr' + '|track|ul';
  2029. block._comment = /<!--(?!-?>)[\s\S]*?-->/;
  2030. block.html = edit$1(block.html, 'i').replace('comment', block._comment).replace('tag', block._tag).replace('attribute', / +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex();
  2031. block.paragraph = edit$1(block._paragraph).replace('hr', block.hr).replace('heading', ' {0,3}#{1,6} ').replace('|lheading', '') // setex headings don't interrupt commonmark paragraphs
  2032. .replace('blockquote', ' {0,3}>').replace('fences', ' {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n').replace('list', ' {0,3}(?:[*+-]|1[.)]) ') // only lists starting from 1 can interrupt
  2033. .replace('html', '</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)').replace('tag', block._tag) // pars can be interrupted by type (6) html blocks
  2034. .getRegex();
  2035. block.blockquote = edit$1(block.blockquote).replace('paragraph', block.paragraph).getRegex();
  2036. /**
  2037. * Normal Block Grammar
  2038. */
  2039. block.normal = merge$1({}, block);
  2040. /**
  2041. * GFM Block Grammar
  2042. */
  2043. block.gfm = merge$1({}, block.normal, {
  2044. nptable: '^ *([^|\\n ].*\\|.*)\\n' // Header
  2045. + ' *([-:]+ *\\|[-| :]*)' // Align
  2046. + '(?:\\n((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)',
  2047. // Cells
  2048. table: '^ *\\|(.+)\\n' // Header
  2049. + ' *\\|?( *[-:]+[-| :]*)' // Align
  2050. + '(?:\\n *((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)' // Cells
  2051. });
  2052. block.gfm.nptable = edit$1(block.gfm.nptable).replace('hr', block.hr).replace('heading', ' {0,3}#{1,6} ').replace('blockquote', ' {0,3}>').replace('code', ' {4}[^\\n]').replace('fences', ' {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n').replace('list', ' {0,3}(?:[*+-]|1[.)]) ') // only lists starting from 1 can interrupt
  2053. .replace('html', '</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)').replace('tag', block._tag) // tables can be interrupted by type (6) html blocks
  2054. .getRegex();
  2055. block.gfm.table = edit$1(block.gfm.table).replace('hr', block.hr).replace('heading', ' {0,3}#{1,6} ').replace('blockquote', ' {0,3}>').replace('code', ' {4}[^\\n]').replace('fences', ' {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n').replace('list', ' {0,3}(?:[*+-]|1[.)]) ') // only lists starting from 1 can interrupt
  2056. .replace('html', '</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)').replace('tag', block._tag) // tables can be interrupted by type (6) html blocks
  2057. .getRegex();
  2058. /**
  2059. * Pedantic grammar (original John Gruber's loose markdown specification)
  2060. */
  2061. block.pedantic = merge$1({}, block.normal, {
  2062. html: edit$1('^ *(?:comment *(?:\\n|\\s*$)' + '|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)' // closed tag
  2063. + '|<tag(?:"[^"]*"|\'[^\']*\'|\\s[^\'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))').replace('comment', block._comment).replace(/tag/g, '(?!(?:' + 'a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub' + '|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)' + '\\b)\\w+(?!:|[^\\w\\s@]*@)\\b').getRegex(),
  2064. def: /^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,
  2065. heading: /^ *(#{1,6}) *([^\n]+?) *(?:#+ *)?(?:\n+|$)/,
  2066. fences: noopTest$1,
  2067. // fences not supported
  2068. paragraph: edit$1(block.normal._paragraph).replace('hr', block.hr).replace('heading', ' *#{1,6} *[^\n]').replace('lheading', block.lheading).replace('blockquote', ' {0,3}>').replace('|fences', '').replace('|list', '').replace('|html', '').getRegex()
  2069. });
  2070. /**
  2071. * Inline-Level Grammar
  2072. */
  2073. var inline = {
  2074. escape: /^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,
  2075. autolink: /^<(scheme:[^\s\x00-\x1f<>]*|email)>/,
  2076. url: noopTest$1,
  2077. tag: '^comment' + '|^</[a-zA-Z][\\w:-]*\\s*>' // self-closing tag
  2078. + '|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>' // open tag
  2079. + '|^<\\?[\\s\\S]*?\\?>' // processing instruction, e.g. <?php ?>
  2080. + '|^<![a-zA-Z]+\\s[\\s\\S]*?>' // declaration, e.g. <!DOCTYPE html>
  2081. + '|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>',
  2082. // CDATA section
  2083. link: /^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,
  2084. reflink: /^!?\[(label)\]\[(?!\s*\])((?:\\[\[\]]?|[^\[\]\\])+)\]/,
  2085. nolink: /^!?\[(?!\s*\])((?:\[[^\[\]]*\]|\\[\[\]]|[^\[\]])*)\](?:\[\])?/,
  2086. strong: /^__([^\s_])__(?!_)|^\*\*([^\s*])\*\*(?!\*)|^__([^\s][\s\S]*?[^\s])__(?!_)|^\*\*([^\s][\s\S]*?[^\s])\*\*(?!\*)/,
  2087. em: /^_([^\s_])_(?!_)|^_([^\s_<][\s\S]*?[^\s_])_(?!_|[^\s,punctuation])|^_([^\s_<][\s\S]*?[^\s])_(?!_|[^\s,punctuation])|^\*([^\s*<\[])\*(?!\*)|^\*([^\s<"][\s\S]*?[^\s\[\*])\*(?![\]`punctuation])|^\*([^\s*"<\[][\s\S]*[^\s])\*(?!\*)/,
  2088. code: /^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,
  2089. br: /^( {2,}|\\)\n(?!\s*$)/,
  2090. del: noopTest$1,
  2091. text: /^(`+|[^`])(?:[\s\S]*?(?:(?=[\\<!\[`*]|\b_|$)|[^ ](?= {2,}\n))|(?= {2,}\n))/
  2092. }; // list of punctuation marks from common mark spec
  2093. // without ` and ] to workaround Rule 17 (inline code blocks/links)
  2094. // without , to work around example 393
  2095. inline._punctuation = '!"#$%&\'()*+\\-./:;<=>?@\\[^_{|}~';
  2096. inline.em = edit$1(inline.em).replace(/punctuation/g, inline._punctuation).getRegex();
  2097. inline._escapes = /\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g;
  2098. inline._scheme = /[a-zA-Z][a-zA-Z0-9+.-]{1,31}/;
  2099. inline._email = /[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/;
  2100. inline.autolink = edit$1(inline.autolink).replace('scheme', inline._scheme).replace('email', inline._email).getRegex();
  2101. inline._attribute = /\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/;
  2102. inline.tag = edit$1(inline.tag).replace('comment', block._comment).replace('attribute', inline._attribute).getRegex();
  2103. inline._label = /(?:\[[^\[\]]*\]|\\.|`[^`]*`|[^\[\]\\`])*?/;
  2104. inline._href = /<(?:\\[<>]?|[^\s<>\\])*>|[^\s\x00-\x1f]*/;
  2105. inline._title = /"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/;
  2106. inline.link = edit$1(inline.link).replace('label', inline._label).replace('href', inline._href).replace('title', inline._title).getRegex();
  2107. inline.reflink = edit$1(inline.reflink).replace('label', inline._label).getRegex();
  2108. /**
  2109. * Normal Inline Grammar
  2110. */
  2111. inline.normal = merge$1({}, inline);
  2112. /**
  2113. * Pedantic Inline Grammar
  2114. */
  2115. inline.pedantic = merge$1({}, inline.normal, {
  2116. strong: /^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,
  2117. em: /^_(?=\S)([\s\S]*?\S)_(?!_)|^\*(?=\S)([\s\S]*?\S)\*(?!\*)/,
  2118. link: edit$1(/^!?\[(label)\]\((.*?)\)/).replace('label', inline._label).getRegex(),
  2119. reflink: edit$1(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace('label', inline._label).getRegex()
  2120. });
  2121. /**
  2122. * GFM Inline Grammar
  2123. */
  2124. inline.gfm = merge$1({}, inline.normal, {
  2125. escape: edit$1(inline.escape).replace('])', '~|])').getRegex(),
  2126. _extended_email: /[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,
  2127. url: /^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,
  2128. _backpedal: /(?:[^?!.,:;*_~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_~)]+(?!$))+/,
  2129. del: /^~+(?=\S)([\s\S]*?\S)~+/,
  2130. text: /^(`+|[^`])(?:[\s\S]*?(?:(?=[\\<!\[`*~]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@))|(?= {2,}\n|[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@))/
  2131. });
  2132. inline.gfm.url = edit$1(inline.gfm.url, 'i').replace('email', inline.gfm._extended_email).getRegex();
  2133. /**
  2134. * GFM + Line Breaks Inline Grammar
  2135. */
  2136. inline.breaks = merge$1({}, inline.gfm, {
  2137. br: edit$1(inline.br).replace('{2,}', '*').getRegex(),
  2138. text: edit$1(inline.gfm.text).replace('\\b_', '\\b_| {2,}\\n').replace(/\{2,\}/g, '*').getRegex()
  2139. });
  2140. var rules = {
  2141. block: block,
  2142. inline: inline
  2143. };
  2144. var defaults$2 = defaults.defaults;
  2145. var block$1 = rules.block,
  2146. inline$1 = rules.inline;
  2147. /**
  2148. * smartypants text replacement
  2149. */
  2150. function smartypants(text) {
  2151. return text // em-dashes
  2152. .replace(/---/g, "\u2014") // en-dashes
  2153. .replace(/--/g, "\u2013") // opening singles
  2154. .replace(/(^|[-\u2014/(\[{"\s])'/g, "$1\u2018") // closing singles & apostrophes
  2155. .replace(/'/g, "\u2019") // opening doubles
  2156. .replace(/(^|[-\u2014/(\[{\u2018\s])"/g, "$1\u201C") // closing doubles
  2157. .replace(/"/g, "\u201D") // ellipses
  2158. .replace(/\.{3}/g, "\u2026");
  2159. }
  2160. /**
  2161. * mangle email addresses
  2162. */
  2163. function mangle(text) {
  2164. var out = '',
  2165. i,
  2166. ch;
  2167. var l = text.length;
  2168. for (i = 0; i < l; i++) {
  2169. ch = text.charCodeAt(i);
  2170. if (Math.random() > 0.5) {
  2171. ch = 'x' + ch.toString(16);
  2172. }
  2173. out += '&#' + ch + ';';
  2174. }
  2175. return out;
  2176. }
  2177. /**
  2178. * Block Lexer
  2179. */
  2180. var Lexer_1 = /*#__PURE__*/function () {
  2181. function Lexer(options) {
  2182. this.tokens = [];
  2183. this.tokens.links = Object.create(null);
  2184. this.options = options || defaults$2;
  2185. this.options.tokenizer = this.options.tokenizer || new Tokenizer_1();
  2186. this.tokenizer = this.options.tokenizer;
  2187. this.tokenizer.options = this.options;
  2188. var rules = {
  2189. block: block$1.normal,
  2190. inline: inline$1.normal
  2191. };
  2192. if (this.options.pedantic) {
  2193. rules.block = block$1.pedantic;
  2194. rules.inline = inline$1.pedantic;
  2195. } else if (this.options.gfm) {
  2196. rules.block = block$1.gfm;
  2197. if (this.options.breaks) {
  2198. rules.inline = inline$1.breaks;
  2199. } else {
  2200. rules.inline = inline$1.gfm;
  2201. }
  2202. }
  2203. this.tokenizer.rules = rules;
  2204. }
  2205. /**
  2206. * Expose Rules
  2207. */
  2208. /**
  2209. * Static Lex Method
  2210. */
  2211. Lexer.lex = function lex(src, options) {
  2212. var lexer = new Lexer(options);
  2213. return lexer.lex(src);
  2214. }
  2215. /**
  2216. * Preprocessing
  2217. */
  2218. ;
  2219. var _proto = Lexer.prototype;
  2220. _proto.lex = function lex(src) {
  2221. src = src.replace(/\r\n|\r/g, '\n').replace(/\t/g, ' ');
  2222. this.blockTokens(src, this.tokens, true);
  2223. this.inline(this.tokens);
  2224. return this.tokens;
  2225. }
  2226. /**
  2227. * Lexing
  2228. */
  2229. ;
  2230. _proto.blockTokens = function blockTokens(src, tokens, top) {
  2231. if (tokens === void 0) {
  2232. tokens = [];
  2233. }
  2234. if (top === void 0) {
  2235. top = true;
  2236. }
  2237. src = src.replace(/^ +$/gm, '');
  2238. var token, i, l, lastToken;
  2239. while (src) {
  2240. // newline
  2241. if (token = this.tokenizer.space(src)) {
  2242. src = src.substring(token.raw.length);
  2243. if (token.type) {
  2244. tokens.push(token);
  2245. }
  2246. continue;
  2247. } // code
  2248. if (token = this.tokenizer.code(src, tokens)) {
  2249. src = src.substring(token.raw.length);
  2250. if (token.type) {
  2251. tokens.push(token);
  2252. } else {
  2253. lastToken = tokens[tokens.length - 1];
  2254. lastToken.raw += '\n' + token.raw;
  2255. lastToken.text += '\n' + token.text;
  2256. }
  2257. continue;
  2258. } // fences
  2259. if (token = this.tokenizer.fences(src)) {
  2260. src = src.substring(token.raw.length);
  2261. tokens.push(token);
  2262. continue;
  2263. } // heading
  2264. if (token = this.tokenizer.heading(src)) {
  2265. src = src.substring(token.raw.length);
  2266. tokens.push(token);
  2267. continue;
  2268. } // table no leading pipe (gfm)
  2269. if (token = this.tokenizer.nptable(src)) {
  2270. src = src.substring(token.raw.length);
  2271. tokens.push(token);
  2272. continue;
  2273. } // hr
  2274. if (token = this.tokenizer.hr(src)) {
  2275. src = src.substring(token.raw.length);
  2276. tokens.push(token);
  2277. continue;
  2278. } // blockquote
  2279. if (token = this.tokenizer.blockquote(src)) {
  2280. src = src.substring(token.raw.length);
  2281. token.tokens = this.blockTokens(token.text, [], top);
  2282. tokens.push(token);
  2283. continue;
  2284. } // list
  2285. if (token = this.tokenizer.list(src)) {
  2286. src = src.substring(token.raw.length);
  2287. l = token.items.length;
  2288. for (i = 0; i < l; i++) {
  2289. token.items[i].tokens = this.blockTokens(token.items[i].text, [], false);
  2290. }
  2291. tokens.push(token);
  2292. continue;
  2293. } // html
  2294. if (token = this.tokenizer.html(src)) {
  2295. src = src.substring(token.raw.length);
  2296. tokens.push(token);
  2297. continue;
  2298. } // def
  2299. if (top && (token = this.tokenizer.def(src))) {
  2300. src = src.substring(token.raw.length);
  2301. if (!this.tokens.links[token.tag]) {
  2302. this.tokens.links[token.tag] = {
  2303. href: token.href,
  2304. title: token.title
  2305. };
  2306. }
  2307. continue;
  2308. } // table (gfm)
  2309. if (token = this.tokenizer.table(src)) {
  2310. src = src.substring(token.raw.length);
  2311. tokens.push(token);
  2312. continue;
  2313. } // lheading
  2314. if (token = this.tokenizer.lheading(src)) {
  2315. src = src.substring(token.raw.length);
  2316. tokens.push(token);
  2317. continue;
  2318. } // top-level paragraph
  2319. if (top && (token = this.tokenizer.paragraph(src))) {
  2320. src = src.substring(token.raw.length);
  2321. tokens.push(token);
  2322. continue;
  2323. } // text
  2324. if (token = this.tokenizer.text(src, tokens)) {
  2325. src = src.substring(token.raw.length);
  2326. if (token.type) {
  2327. tokens.push(token);
  2328. } else {
  2329. lastToken = tokens[tokens.length - 1];
  2330. lastToken.raw += '\n' + token.raw;
  2331. lastToken.text += '\n' + token.text;
  2332. }
  2333. continue;
  2334. }
  2335. if (src) {
  2336. var errMsg = 'Infinite loop on byte: ' + src.charCodeAt(0);
  2337. if (this.options.silent) {
  2338. console.error(errMsg);
  2339. break;
  2340. } else {
  2341. throw new Error(errMsg);
  2342. }
  2343. }
  2344. }
  2345. return tokens;
  2346. };
  2347. _proto.inline = function inline(tokens) {
  2348. var i, j, k, l2, row, token;
  2349. var l = tokens.length;
  2350. for (i = 0; i < l; i++) {
  2351. token = tokens[i];
  2352. switch (token.type) {
  2353. case 'paragraph':
  2354. case 'text':
  2355. case 'heading':
  2356. {
  2357. token.tokens = [];
  2358. this.inlineTokens(token.text, token.tokens);
  2359. break;
  2360. }
  2361. case 'table':
  2362. {
  2363. token.tokens = {
  2364. header: [],
  2365. cells: []
  2366. }; // header
  2367. l2 = token.header.length;
  2368. for (j = 0; j < l2; j++) {
  2369. token.tokens.header[j] = [];
  2370. this.inlineTokens(token.header[j], token.tokens.header[j]);
  2371. } // cells
  2372. l2 = token.cells.length;
  2373. for (j = 0; j < l2; j++) {
  2374. row = token.cells[j];
  2375. token.tokens.cells[j] = [];
  2376. for (k = 0; k < row.length; k++) {
  2377. token.tokens.cells[j][k] = [];
  2378. this.inlineTokens(row[k], token.tokens.cells[j][k]);
  2379. }
  2380. }
  2381. break;
  2382. }
  2383. case 'blockquote':
  2384. {
  2385. this.inline(token.tokens);
  2386. break;
  2387. }
  2388. case 'list':
  2389. {
  2390. l2 = token.items.length;
  2391. for (j = 0; j < l2; j++) {
  2392. this.inline(token.items[j].tokens);
  2393. }
  2394. break;
  2395. }
  2396. }
  2397. }
  2398. return tokens;
  2399. }
  2400. /**
  2401. * Lexing/Compiling
  2402. */
  2403. ;
  2404. _proto.inlineTokens = function inlineTokens(src, tokens, inLink, inRawBlock) {
  2405. if (tokens === void 0) {
  2406. tokens = [];
  2407. }
  2408. if (inLink === void 0) {
  2409. inLink = false;
  2410. }
  2411. if (inRawBlock === void 0) {
  2412. inRawBlock = false;
  2413. }
  2414. var token;
  2415. while (src) {
  2416. // escape
  2417. if (token = this.tokenizer.escape(src)) {
  2418. src = src.substring(token.raw.length);
  2419. tokens.push(token);
  2420. continue;
  2421. } // tag
  2422. if (token = this.tokenizer.tag(src, inLink, inRawBlock)) {
  2423. src = src.substring(token.raw.length);
  2424. inLink = token.inLink;
  2425. inRawBlock = token.inRawBlock;
  2426. tokens.push(token);
  2427. continue;
  2428. } // link
  2429. if (token = this.tokenizer.link(src)) {
  2430. src = src.substring(token.raw.length);
  2431. if (token.type === 'link') {
  2432. token.tokens = this.inlineTokens(token.text, [], true, inRawBlock);
  2433. }
  2434. tokens.push(token);
  2435. continue;
  2436. } // reflink, nolink
  2437. if (token = this.tokenizer.reflink(src, this.tokens.links)) {
  2438. src = src.substring(token.raw.length);
  2439. if (token.type === 'link') {
  2440. token.tokens = this.inlineTokens(token.text, [], true, inRawBlock);
  2441. }
  2442. tokens.push(token);
  2443. continue;
  2444. } // strong
  2445. if (token = this.tokenizer.strong(src)) {
  2446. src = src.substring(token.raw.length);
  2447. token.tokens = this.inlineTokens(token.text, [], inLink, inRawBlock);
  2448. tokens.push(token);
  2449. continue;
  2450. } // em
  2451. if (token = this.tokenizer.em(src)) {
  2452. src = src.substring(token.raw.length);
  2453. token.tokens = this.inlineTokens(token.text, [], inLink, inRawBlock);
  2454. tokens.push(token);
  2455. continue;
  2456. } // code
  2457. if (token = this.tokenizer.codespan(src)) {
  2458. src = src.substring(token.raw.length);
  2459. tokens.push(token);
  2460. continue;
  2461. } // br
  2462. if (token = this.tokenizer.br(src)) {
  2463. src = src.substring(token.raw.length);
  2464. tokens.push(token);
  2465. continue;
  2466. } // del (gfm)
  2467. if (token = this.tokenizer.del(src)) {
  2468. src = src.substring(token.raw.length);
  2469. token.tokens = this.inlineTokens(token.text, [], inLink, inRawBlock);
  2470. tokens.push(token);
  2471. continue;
  2472. } // autolink
  2473. if (token = this.tokenizer.autolink(src, mangle)) {
  2474. src = src.substring(token.raw.length);
  2475. tokens.push(token);
  2476. continue;
  2477. } // url (gfm)
  2478. if (!inLink && (token = this.tokenizer.url(src, mangle))) {
  2479. src = src.substring(token.raw.length);
  2480. tokens.push(token);
  2481. continue;
  2482. } // text
  2483. if (token = this.tokenizer.inlineText(src, inRawBlock, smartypants)) {
  2484. src = src.substring(token.raw.length);
  2485. tokens.push(token);
  2486. continue;
  2487. }
  2488. if (src) {
  2489. var errMsg = 'Infinite loop on byte: ' + src.charCodeAt(0);
  2490. if (this.options.silent) {
  2491. console.error(errMsg);
  2492. break;
  2493. } else {
  2494. throw new Error(errMsg);
  2495. }
  2496. }
  2497. }
  2498. return tokens;
  2499. };
  2500. _createClass(Lexer, null, [{
  2501. key: "rules",
  2502. get: function get() {
  2503. return {
  2504. block: block$1,
  2505. inline: inline$1
  2506. };
  2507. }
  2508. }]);
  2509. return Lexer;
  2510. }();
  2511. var defaults$3 = defaults.defaults;
  2512. var cleanUrl$1 = helpers.cleanUrl,
  2513. escape$1 = helpers.escape;
  2514. /**
  2515. * Renderer
  2516. */
  2517. var Renderer_1 = /*#__PURE__*/function () {
  2518. function Renderer(options) {
  2519. this.options = options || defaults$3;
  2520. }
  2521. var _proto = Renderer.prototype;
  2522. _proto.code = function code(_code, infostring, escaped) {
  2523. var lang = (infostring || '').match(/\S*/)[0];
  2524. if (this.options.highlight) {
  2525. var out = this.options.highlight(_code, lang);
  2526. if (out != null && out !== _code) {
  2527. escaped = true;
  2528. _code = out;
  2529. }
  2530. }
  2531. if (!lang) {
  2532. return '<pre><code>' + (escaped ? _code : escape$1(_code, true)) + '</code></pre>\n';
  2533. }
  2534. return '<pre><code class="' + this.options.langPrefix + escape$1(lang, true) + '">' + (escaped ? _code : escape$1(_code, true)) + '</code></pre>\n';
  2535. };
  2536. _proto.blockquote = function blockquote(quote) {
  2537. return '<blockquote>\n' + quote + '</blockquote>\n';
  2538. };
  2539. _proto.html = function html(_html) {
  2540. return _html;
  2541. };
  2542. _proto.heading = function heading(text, level, raw, slugger) {
  2543. if (this.options.headerIds) {
  2544. return '<h' + level + ' id="' + this.options.headerPrefix + slugger.slug(raw) + '">' + text + '</h' + level + '>\n';
  2545. } // ignore IDs
  2546. return '<h' + level + '>' + text + '</h' + level + '>\n';
  2547. };
  2548. _proto.hr = function hr() {
  2549. return this.options.xhtml ? '<hr/>\n' : '<hr>\n';
  2550. };
  2551. _proto.list = function list(body, ordered, start) {
  2552. var type = ordered ? 'ol' : 'ul',
  2553. startatt = ordered && start !== 1 ? ' start="' + start + '"' : '';
  2554. return '<' + type + startatt + '>\n' + body + '</' + type + '>\n';
  2555. };
  2556. _proto.listitem = function listitem(text) {
  2557. return '<li>' + text + '</li>\n';
  2558. };
  2559. _proto.checkbox = function checkbox(checked) {
  2560. return '<input ' + (checked ? 'checked="" ' : '') + 'disabled="" type="checkbox"' + (this.options.xhtml ? ' /' : '') + '> ';
  2561. };
  2562. _proto.paragraph = function paragraph(text) {
  2563. return '<p>' + text + '</p>\n';
  2564. };
  2565. _proto.table = function table(header, body) {
  2566. if (body) body = '<tbody>' + body + '</tbody>';
  2567. return '<table>\n' + '<thead>\n' + header + '</thead>\n' + body + '</table>\n';
  2568. };
  2569. _proto.tablerow = function tablerow(content) {
  2570. return '<tr>\n' + content + '</tr>\n';
  2571. };
  2572. _proto.tablecell = function tablecell(content, flags) {
  2573. var type = flags.header ? 'th' : 'td';
  2574. var tag = flags.align ? '<' + type + ' align="' + flags.align + '">' : '<' + type + '>';
  2575. return tag + content + '</' + type + '>\n';
  2576. } // span level renderer
  2577. ;
  2578. _proto.strong = function strong(text) {
  2579. return '<strong>' + text + '</strong>';
  2580. };
  2581. _proto.em = function em(text) {
  2582. return '<em>' + text + '</em>';
  2583. };
  2584. _proto.codespan = function codespan(text) {
  2585. return '<code>' + text + '</code>';
  2586. };
  2587. _proto.br = function br() {
  2588. return this.options.xhtml ? '<br/>' : '<br>';
  2589. };
  2590. _proto.del = function del(text) {
  2591. return '<del>' + text + '</del>';
  2592. };
  2593. _proto.link = function link(href, title, text) {
  2594. href = cleanUrl$1(this.options.sanitize, this.options.baseUrl, href);
  2595. if (href === null) {
  2596. return text;
  2597. }
  2598. var out = '<a href="' + escape$1(href) + '"';
  2599. if (title) {
  2600. out += ' title="' + title + '"';
  2601. }
  2602. out += '>' + text + '</a>';
  2603. return out;
  2604. };
  2605. _proto.image = function image(href, title, text) {
  2606. href = cleanUrl$1(this.options.sanitize, this.options.baseUrl, href);
  2607. if (href === null) {
  2608. return text;
  2609. }
  2610. var out = '<img src="' + href + '" alt="' + text + '"';
  2611. if (title) {
  2612. out += ' title="' + title + '"';
  2613. }
  2614. out += this.options.xhtml ? '/>' : '>';
  2615. return out;
  2616. };
  2617. _proto.text = function text(_text) {
  2618. return _text;
  2619. };
  2620. return Renderer;
  2621. }();
  2622. /**
  2623. * TextRenderer
  2624. * returns only the textual part of the token
  2625. */
  2626. var TextRenderer_1 = /*#__PURE__*/function () {
  2627. function TextRenderer() {}
  2628. var _proto = TextRenderer.prototype;
  2629. // no need for block level renderers
  2630. _proto.strong = function strong(text) {
  2631. return text;
  2632. };
  2633. _proto.em = function em(text) {
  2634. return text;
  2635. };
  2636. _proto.codespan = function codespan(text) {
  2637. return text;
  2638. };
  2639. _proto.del = function del(text) {
  2640. return text;
  2641. };
  2642. _proto.html = function html(text) {
  2643. return text;
  2644. };
  2645. _proto.text = function text(_text) {
  2646. return _text;
  2647. };
  2648. _proto.link = function link(href, title, text) {
  2649. return '' + text;
  2650. };
  2651. _proto.image = function image(href, title, text) {
  2652. return '' + text;
  2653. };
  2654. _proto.br = function br() {
  2655. return '';
  2656. };
  2657. return TextRenderer;
  2658. }();
  2659. /**
  2660. * Slugger generates header id
  2661. */
  2662. var Slugger_1 = /*#__PURE__*/function () {
  2663. function Slugger() {
  2664. this.seen = {};
  2665. }
  2666. /**
  2667. * Convert string to unique id
  2668. */
  2669. var _proto = Slugger.prototype;
  2670. _proto.slug = function slug(value) {
  2671. var slug = value.toLowerCase().trim() // remove html tags
  2672. .replace(/<[!\/a-z].*?>/ig, '') // remove unwanted chars
  2673. .replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g, '').replace(/\s/g, '-');
  2674. if (this.seen.hasOwnProperty(slug)) {
  2675. var originalSlug = slug;
  2676. do {
  2677. this.seen[originalSlug]++;
  2678. slug = originalSlug + '-' + this.seen[originalSlug];
  2679. } while (this.seen.hasOwnProperty(slug));
  2680. }
  2681. this.seen[slug] = 0;
  2682. return slug;
  2683. };
  2684. return Slugger;
  2685. }();
  2686. var defaults$4 = defaults.defaults;
  2687. var unescape$1 = helpers.unescape;
  2688. /**
  2689. * Parsing & Compiling
  2690. */
  2691. var Parser_1 = /*#__PURE__*/function () {
  2692. function Parser(options) {
  2693. this.options = options || defaults$4;
  2694. this.options.renderer = this.options.renderer || new Renderer_1();
  2695. this.renderer = this.options.renderer;
  2696. this.renderer.options = this.options;
  2697. this.textRenderer = new TextRenderer_1();
  2698. this.slugger = new Slugger_1();
  2699. }
  2700. /**
  2701. * Static Parse Method
  2702. */
  2703. Parser.parse = function parse(tokens, options) {
  2704. var parser = new Parser(options);
  2705. return parser.parse(tokens);
  2706. }
  2707. /**
  2708. * Parse Loop
  2709. */
  2710. ;
  2711. var _proto = Parser.prototype;
  2712. _proto.parse = function parse(tokens, top) {
  2713. if (top === void 0) {
  2714. top = true;
  2715. }
  2716. var out = '',
  2717. i,
  2718. j,
  2719. k,
  2720. l2,
  2721. l3,
  2722. row,
  2723. cell,
  2724. header,
  2725. body,
  2726. token,
  2727. ordered,
  2728. start,
  2729. loose,
  2730. itemBody,
  2731. item,
  2732. checked,
  2733. task,
  2734. checkbox;
  2735. var l = tokens.length;
  2736. for (i = 0; i < l; i++) {
  2737. token = tokens[i];
  2738. switch (token.type) {
  2739. case 'space':
  2740. {
  2741. continue;
  2742. }
  2743. case 'hr':
  2744. {
  2745. out += this.renderer.hr();
  2746. continue;
  2747. }
  2748. case 'heading':
  2749. {
  2750. out += this.renderer.heading(this.parseInline(token.tokens), token.depth, unescape$1(this.parseInline(token.tokens, this.textRenderer)), this.slugger);
  2751. continue;
  2752. }
  2753. case 'code':
  2754. {
  2755. out += this.renderer.code(token.text, token.lang, token.escaped);
  2756. continue;
  2757. }
  2758. case 'table':
  2759. {
  2760. header = ''; // header
  2761. cell = '';
  2762. l2 = token.header.length;
  2763. for (j = 0; j < l2; j++) {
  2764. cell += this.renderer.tablecell(this.parseInline(token.tokens.header[j]), {
  2765. header: true,
  2766. align: token.align[j]
  2767. });
  2768. }
  2769. header += this.renderer.tablerow(cell);
  2770. body = '';
  2771. l2 = token.cells.length;
  2772. for (j = 0; j < l2; j++) {
  2773. row = token.tokens.cells[j];
  2774. cell = '';
  2775. l3 = row.length;
  2776. for (k = 0; k < l3; k++) {
  2777. cell += this.renderer.tablecell(this.parseInline(row[k]), {
  2778. header: false,
  2779. align: token.align[k]
  2780. });
  2781. }
  2782. body += this.renderer.tablerow(cell);
  2783. }
  2784. out += this.renderer.table(header, body);
  2785. continue;
  2786. }
  2787. case 'blockquote':
  2788. {
  2789. body = this.parse(token.tokens);
  2790. out += this.renderer.blockquote(body);
  2791. continue;
  2792. }
  2793. case 'list':
  2794. {
  2795. ordered = token.ordered;
  2796. start = token.start;
  2797. loose = token.loose;
  2798. l2 = token.items.length;
  2799. body = '';
  2800. for (j = 0; j < l2; j++) {
  2801. item = token.items[j];
  2802. checked = item.checked;
  2803. task = item.task;
  2804. itemBody = '';
  2805. if (item.task) {
  2806. checkbox = this.renderer.checkbox(checked);
  2807. if (loose) {
  2808. if (item.tokens.length > 0 && item.tokens[0].type === 'text') {
  2809. item.tokens[0].text = checkbox + ' ' + item.tokens[0].text;
  2810. if (item.tokens[0].tokens && item.tokens[0].tokens.length > 0 && item.tokens[0].tokens[0].type === 'text') {
  2811. item.tokens[0].tokens[0].text = checkbox + ' ' + item.tokens[0].tokens[0].text;
  2812. }
  2813. } else {
  2814. item.tokens.unshift({
  2815. type: 'text',
  2816. text: checkbox
  2817. });
  2818. }
  2819. } else {
  2820. itemBody += checkbox;
  2821. }
  2822. }
  2823. itemBody += this.parse(item.tokens, loose);
  2824. body += this.renderer.listitem(itemBody, task, checked);
  2825. }
  2826. out += this.renderer.list(body, ordered, start);
  2827. continue;
  2828. }
  2829. case 'html':
  2830. {
  2831. // TODO parse inline content if parameter markdown=1
  2832. out += this.renderer.html(token.text);
  2833. continue;
  2834. }
  2835. case 'paragraph':
  2836. {
  2837. out += this.renderer.paragraph(this.parseInline(token.tokens));
  2838. continue;
  2839. }
  2840. case 'text':
  2841. {
  2842. body = token.tokens ? this.parseInline(token.tokens) : token.text;
  2843. while (i + 1 < l && tokens[i + 1].type === 'text') {
  2844. token = tokens[++i];
  2845. body += '\n' + (token.tokens ? this.parseInline(token.tokens) : token.text);
  2846. }
  2847. out += top ? this.renderer.paragraph(body) : body;
  2848. continue;
  2849. }
  2850. default:
  2851. {
  2852. var errMsg = 'Token with "' + token.type + '" type was not found.';
  2853. if (this.options.silent) {
  2854. console.error(errMsg);
  2855. return;
  2856. } else {
  2857. throw new Error(errMsg);
  2858. }
  2859. }
  2860. }
  2861. }
  2862. return out;
  2863. }
  2864. /**
  2865. * Parse Inline Tokens
  2866. */
  2867. ;
  2868. _proto.parseInline = function parseInline(tokens, renderer) {
  2869. renderer = renderer || this.renderer;
  2870. var out = '',
  2871. i,
  2872. token;
  2873. var l = tokens.length;
  2874. for (i = 0; i < l; i++) {
  2875. token = tokens[i];
  2876. switch (token.type) {
  2877. case 'escape':
  2878. {
  2879. out += renderer.text(token.text);
  2880. break;
  2881. }
  2882. case 'html':
  2883. {
  2884. out += renderer.html(token.text);
  2885. break;
  2886. }
  2887. case 'link':
  2888. {
  2889. out += renderer.link(token.href, token.title, this.parseInline(token.tokens, renderer));
  2890. break;
  2891. }
  2892. case 'image':
  2893. {
  2894. out += renderer.image(token.href, token.title, token.text);
  2895. break;
  2896. }
  2897. case 'strong':
  2898. {
  2899. out += renderer.strong(this.parseInline(token.tokens, renderer));
  2900. break;
  2901. }
  2902. case 'em':
  2903. {
  2904. out += renderer.em(this.parseInline(token.tokens, renderer));
  2905. break;
  2906. }
  2907. case 'codespan':
  2908. {
  2909. out += renderer.codespan(token.text);
  2910. break;
  2911. }
  2912. case 'br':
  2913. {
  2914. out += renderer.br();
  2915. break;
  2916. }
  2917. case 'del':
  2918. {
  2919. out += renderer.del(this.parseInline(token.tokens, renderer));
  2920. break;
  2921. }
  2922. case 'text':
  2923. {
  2924. out += renderer.text(token.text);
  2925. break;
  2926. }
  2927. default:
  2928. {
  2929. var errMsg = 'Token with "' + token.type + '" type was not found.';
  2930. if (this.options.silent) {
  2931. console.error(errMsg);
  2932. return;
  2933. } else {
  2934. throw new Error(errMsg);
  2935. }
  2936. }
  2937. }
  2938. }
  2939. return out;
  2940. };
  2941. return Parser;
  2942. }();
  2943. var merge$2 = helpers.merge,
  2944. checkSanitizeDeprecation$1 = helpers.checkSanitizeDeprecation,
  2945. escape$2 = helpers.escape;
  2946. var getDefaults = defaults.getDefaults,
  2947. changeDefaults = defaults.changeDefaults,
  2948. defaults$5 = defaults.defaults;
  2949. /**
  2950. * Marked
  2951. */
  2952. function marked(src, opt, callback) {
  2953. // throw error in case of non string input
  2954. if (typeof src === 'undefined' || src === null) {
  2955. throw new Error('marked(): input parameter is undefined or null');
  2956. }
  2957. if (typeof src !== 'string') {
  2958. throw new Error('marked(): input parameter is of type ' + Object.prototype.toString.call(src) + ', string expected');
  2959. }
  2960. if (typeof opt === 'function') {
  2961. callback = opt;
  2962. opt = null;
  2963. }
  2964. opt = merge$2({}, marked.defaults, opt || {});
  2965. checkSanitizeDeprecation$1(opt);
  2966. if (callback) {
  2967. var highlight = opt.highlight;
  2968. var tokens;
  2969. try {
  2970. tokens = Lexer_1.lex(src, opt);
  2971. } catch (e) {
  2972. return callback(e);
  2973. }
  2974. var done = function done(err) {
  2975. var out;
  2976. if (!err) {
  2977. try {
  2978. out = Parser_1.parse(tokens, opt);
  2979. } catch (e) {
  2980. err = e;
  2981. }
  2982. }
  2983. opt.highlight = highlight;
  2984. return err ? callback(err) : callback(null, out);
  2985. };
  2986. if (!highlight || highlight.length < 3) {
  2987. return done();
  2988. }
  2989. delete opt.highlight;
  2990. if (!tokens.length) return done();
  2991. var pending = 0;
  2992. marked.walkTokens(tokens, function (token) {
  2993. if (token.type === 'code') {
  2994. pending++;
  2995. highlight(token.text, token.lang, function (err, code) {
  2996. if (err) {
  2997. return done(err);
  2998. }
  2999. if (code != null && code !== token.text) {
  3000. token.text = code;
  3001. token.escaped = true;
  3002. }
  3003. pending--;
  3004. if (pending === 0) {
  3005. done();
  3006. }
  3007. });
  3008. }
  3009. });
  3010. if (pending === 0) {
  3011. done();
  3012. }
  3013. return;
  3014. }
  3015. try {
  3016. var _tokens = Lexer_1.lex(src, opt);
  3017. if (opt.walkTokens) {
  3018. marked.walkTokens(_tokens, opt.walkTokens);
  3019. }
  3020. return Parser_1.parse(_tokens, opt);
  3021. } catch (e) {
  3022. e.message += '\nPlease report this to https://github.com/markedjs/marked.';
  3023. if (opt.silent) {
  3024. return '<p>An error occurred:</p><pre>' + escape$2(e.message + '', true) + '</pre>';
  3025. }
  3026. throw e;
  3027. }
  3028. }
  3029. /**
  3030. * Options
  3031. */
  3032. marked.options = marked.setOptions = function (opt) {
  3033. merge$2(marked.defaults, opt);
  3034. changeDefaults(marked.defaults);
  3035. return marked;
  3036. };
  3037. marked.getDefaults = getDefaults;
  3038. marked.defaults = defaults$5;
  3039. /**
  3040. * Use Extension
  3041. */
  3042. marked.use = function (extension) {
  3043. var opts = merge$2({}, extension);
  3044. if (extension.renderer) {
  3045. (function () {
  3046. var renderer = marked.defaults.renderer || new Renderer_1();
  3047. var _loop = function _loop(prop) {
  3048. var prevRenderer = renderer[prop];
  3049. renderer[prop] = function () {
  3050. for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
  3051. args[_key] = arguments[_key];
  3052. }
  3053. var ret = extension.renderer[prop].apply(renderer, args);
  3054. if (ret === false) {
  3055. ret = prevRenderer.apply(renderer, args);
  3056. }
  3057. return ret;
  3058. };
  3059. };
  3060. for (var prop in extension.renderer) {
  3061. _loop(prop);
  3062. }
  3063. opts.renderer = renderer;
  3064. })();
  3065. }
  3066. if (extension.tokenizer) {
  3067. (function () {
  3068. var tokenizer = marked.defaults.tokenizer || new Tokenizer_1();
  3069. var _loop2 = function _loop2(prop) {
  3070. var prevTokenizer = tokenizer[prop];
  3071. tokenizer[prop] = function () {
  3072. for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
  3073. args[_key2] = arguments[_key2];
  3074. }
  3075. var ret = extension.tokenizer[prop].apply(tokenizer, args);
  3076. if (ret === false) {
  3077. ret = prevTokenizer.apply(tokenizer, args);
  3078. }
  3079. return ret;
  3080. };
  3081. };
  3082. for (var prop in extension.tokenizer) {
  3083. _loop2(prop);
  3084. }
  3085. opts.tokenizer = tokenizer;
  3086. })();
  3087. }
  3088. if (extension.walkTokens) {
  3089. var walkTokens = marked.defaults.walkTokens;
  3090. opts.walkTokens = function (token) {
  3091. extension.walkTokens(token);
  3092. if (walkTokens) {
  3093. walkTokens(token);
  3094. }
  3095. };
  3096. }
  3097. marked.setOptions(opts);
  3098. };
  3099. /**
  3100. * Run callback for every token
  3101. */
  3102. marked.walkTokens = function (tokens, callback) {
  3103. for (var _iterator = _createForOfIteratorHelperLoose(tokens), _step; !(_step = _iterator()).done;) {
  3104. var token = _step.value;
  3105. callback(token);
  3106. switch (token.type) {
  3107. case 'table':
  3108. {
  3109. for (var _iterator2 = _createForOfIteratorHelperLoose(token.tokens.header), _step2; !(_step2 = _iterator2()).done;) {
  3110. var cell = _step2.value;
  3111. marked.walkTokens(cell, callback);
  3112. }
  3113. for (var _iterator3 = _createForOfIteratorHelperLoose(token.tokens.cells), _step3; !(_step3 = _iterator3()).done;) {
  3114. var row = _step3.value;
  3115. for (var _iterator4 = _createForOfIteratorHelperLoose(row), _step4; !(_step4 = _iterator4()).done;) {
  3116. var _cell = _step4.value;
  3117. marked.walkTokens(_cell, callback);
  3118. }
  3119. }
  3120. break;
  3121. }
  3122. case 'list':
  3123. {
  3124. marked.walkTokens(token.items, callback);
  3125. break;
  3126. }
  3127. default:
  3128. {
  3129. if (token.tokens) {
  3130. marked.walkTokens(token.tokens, callback);
  3131. }
  3132. }
  3133. }
  3134. }
  3135. };
  3136. /**
  3137. * Expose
  3138. */
  3139. marked.Parser = Parser_1;
  3140. marked.parser = Parser_1.parse;
  3141. marked.Renderer = Renderer_1;
  3142. marked.TextRenderer = TextRenderer_1;
  3143. marked.Lexer = Lexer_1;
  3144. marked.lexer = Lexer_1.lex;
  3145. marked.Tokenizer = Tokenizer_1;
  3146. marked.Slugger = Slugger_1;
  3147. marked.parse = marked;
  3148. var marked_1 = marked;
  3149. return marked_1;
  3150. })));
  3151. /***/ }),
  3152. /***/ "./node_modules/p-limit/index.js":
  3153. /*!***************************************!*\
  3154. !*** ./node_modules/p-limit/index.js ***!
  3155. \***************************************/
  3156. /*! no static exports found */
  3157. /***/ (function(module, exports, __webpack_require__) {
  3158. "use strict";
  3159. var pTry = __webpack_require__(/*! p-try */ "./node_modules/p-try/index.js");
  3160. var pLimit = function pLimit(concurrency) {
  3161. if (!((Number.isInteger(concurrency) || concurrency === Infinity) && concurrency > 0)) {
  3162. return Promise.reject(new TypeError('Expected `concurrency` to be a number from 1 and up'));
  3163. }
  3164. var queue = [];
  3165. var activeCount = 0;
  3166. var next = function next() {
  3167. activeCount--;
  3168. if (queue.length > 0) {
  3169. queue.shift()();
  3170. }
  3171. };
  3172. var run = function run(fn, resolve) {
  3173. activeCount++;
  3174. for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {
  3175. args[_key - 2] = arguments[_key];
  3176. }
  3177. var result = pTry.apply(void 0, [fn].concat(args));
  3178. resolve(result);
  3179. result.then(next, next);
  3180. };
  3181. var enqueue = function enqueue(fn, resolve) {
  3182. for (var _len2 = arguments.length, args = new Array(_len2 > 2 ? _len2 - 2 : 0), _key2 = 2; _key2 < _len2; _key2++) {
  3183. args[_key2 - 2] = arguments[_key2];
  3184. }
  3185. if (activeCount < concurrency) {
  3186. run.apply(void 0, [fn, resolve].concat(args));
  3187. } else {
  3188. queue.push(run.bind.apply(run, [null, fn, resolve].concat(args)));
  3189. }
  3190. };
  3191. var generator = function generator(fn) {
  3192. for (var _len3 = arguments.length, args = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {
  3193. args[_key3 - 1] = arguments[_key3];
  3194. }
  3195. return new Promise(function (resolve) {
  3196. return enqueue.apply(void 0, [fn, resolve].concat(args));
  3197. });
  3198. };
  3199. Object.defineProperties(generator, {
  3200. activeCount: {
  3201. get: function get() {
  3202. return activeCount;
  3203. }
  3204. },
  3205. pendingCount: {
  3206. get: function get() {
  3207. return queue.length;
  3208. }
  3209. },
  3210. clearQueue: {
  3211. value: function value() {
  3212. queue.length = 0;
  3213. }
  3214. }
  3215. });
  3216. return generator;
  3217. };
  3218. module.exports = pLimit;
  3219. module.exports.default = pLimit;
  3220. /***/ }),
  3221. /***/ "./node_modules/p-try/index.js":
  3222. /*!*************************************!*\
  3223. !*** ./node_modules/p-try/index.js ***!
  3224. \*************************************/
  3225. /*! no static exports found */
  3226. /***/ (function(module, exports, __webpack_require__) {
  3227. "use strict";
  3228. var pTry = function pTry(fn) {
  3229. for (var _len = arguments.length, arguments_ = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
  3230. arguments_[_key - 1] = arguments[_key];
  3231. }
  3232. return new Promise(function (resolve) {
  3233. resolve(fn.apply(void 0, arguments_));
  3234. });
  3235. };
  3236. module.exports = pTry; // TODO: remove this in the next major version
  3237. module.exports.default = pTry;
  3238. /***/ })
  3239. }]);
  3240. //# sourceMappingURL=vue-4.js.map?v=9af01160cc09860278bb